Intel® C++ Compiler
Support and discussions for creating C++ code that runs on platforms based on Intel® processors.
Announcements
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!
7568 Discussions

Internal error: assertion failed at "shared/cfe/edgcpfe/lower_il.c"

Berger__Sven
Novice
1,214 Views

We have the following problem which occurs with 19.0.5.281 and 19.1.1.217 on Linux. No issues with GCC 9.1, 9.2, 9.3, 10, Clang7.1/9.1 or PGI-19-10.

Internal error: assertion failed at: "shared/cfe/edgcpfe/lower_il.c", line 11913

struct make_shared_enabler: public table {

compilation aborted ... (code 4)

Compiler flags:

It fails with both:

#default

-Wall -Werror -std=c++14 -fopenmp

#production

-O2 -fp-model consistent -fimf-arch-consistency=true 

#debug

-O0 -g

 

Code:

std::shared_ptr<table> make_table(){

  struct make_shared_enabler : public table {

    make_shared_enabler() = default;

};

return std::make_shared<make_shared_enabler>();

}

0 Kudos
1 Solution
Viet_H_Intel
Moderator
1,143 Views

Thanks for the test case. I've reported this problem to our Front End team.

 

View solution in original post

8 Replies
AbhishekD_Intel
Moderator
1,214 Views

Hi,

Thank you for reporting the issue, will you please send a small reproducer of it so that we can reproduce it at our end.

We tried your provided code snippet but it didn't get us any errors on both 19.0.5.281 and 19.1.1.217. So please share with us a small reproducer.

 

Warm Regards,

Abhishek

 

 

Berger__Sven
Novice
1,202 Views

Hi,

I was not able to get find a minimal example. The following workaround works:

#if defined(CONF_INTEL_COMPILER)
class make_shared_enabler: public table{
public:
make_shared_enabler() = default;
};
#endif

std::shared_ptr<table> make_table () {
#if not defined(CONF_INTEL_COMPILER)
struct make_shared_enabler : public table {
make_shared_enabler () = default;
};
#endif

return std::make_shared<make_shared_enabler>();
}

 

The workaround doesnot compile with GCC.

 

Berger__Sven
Novice
1,214 Views

We currently don't have a small reproducing example. I will investigate further.

The snippet is from https://github.com/skystrife/cpptoml but I have not tried if the examples fail. Our software compilation fails due to our usage of the mentioned library. 

AbhishekD_Intel
Moderator
1,181 Views

Hi,

Glad to know that your workaround worked.

Please give us details of the architecture which you are using. Because we are not getting the errors that you are getting while executing your code snippet.

If possible also give us a small reproducer to reproduce this error from our side. It will help us to report it as a bug if we can reproduce it.



Warm Regards,

Abhishek


Viet_H_Intel
Moderator
1,168 Views

Can you find out what source file that compiler throws this error, then create a preprocess file and provide it to us for investigation?


Berger__Sven
Novice
1,150 Views

Attached is the preprocessed file.

Viet_H_Intel
Moderator
1,144 Views

Thanks for the test case. I've reported this problem to our Front End team.

 

View solution in original post

Viet_H_Intel
Moderator
257 Views

This issue is fixed in oneAPI 2021 Update 4. Please upgrade your compiler.

 

We are going to close this thread. If you need any additional information, please post a new question as this thread will no longer be monitored by Intel.

 

Thanks,

 

Reply