Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.
7953 Discussions

icc 17.0.1 miscompiles valid C code at -O1 and above on x86_64-linux-gnu

Zhendong_Su
Beginner
366 Views

Compiler version and platform: 

Intel(R) C Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 17.0.1.132 Build 20161005 

$ icc -O0 small.c; ./a.out
$ 
$ icc -O1 small.c
$ ./a.out
Aborted (core dumped)
$ 
$ cat small.c
struct
{
  int a:2;
  int b:4;
} volatile c = { 0, 2 };

int main ()
{
  if (!(c.a < 1 && c.a < 1))
    __builtin_abort ();
  return 0; 
}
$ 

 

 

 

0 Kudos
1 Reply
Anoop_M_Intel
Employee
366 Views

I have escalated this issue to compiler engineering.

Thanks and Regards
Anoop

0 Kudos
Reply