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

internal error: assertion failed at: "shared/cfe/edgcpfe/folding.c"

alexander_k_3
Beginner
595 Views

Hello,

From v16 update 3 on the following code generates an error, for code wich looks valid:

>icl main.cpp
Intel(R) C++ Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 17.0.2.187 Build 20170213
Copyright (C) 1985-2017 Intel Corporation.  All rights reserved.

main.cpp
main.cpp(8): internal error: assertion failed at: "shared/cfe/edgcpfe/folding.c", line 8623

        if (__has_assign(R))
                         ^

compilation aborted for main.cpp (code 4)

 

The code in question is:

#include <stdio.h>

struct R {
	void operator=(R& r) {}
};

int main() {
	if (__has_assign(R))
		printf("success\n");
	else
		printf("fail\n");

	return 0;
}

The problem is that with my project similar code comes from the product SDK headers to which we integrate and don't have control of.

Best regards,

Alexander

0 Kudos
4 Replies
TimP
Honored Contributor III
595 Views

Report for 64-bit 18.0 beta compiler is the same except for line number in folding.c

0 Kudos
Judith_W_Intel
Employee
595 Views

 

Thank you for reporting this an providing a small test case. This is still a problem in our development compiler and I have submitted a bug report (CMPLRS-42841) in our internal bugs database. We will try to fix this as soon as possible. 

Judy

0 Kudos
alexander_k_3
Beginner
595 Views

Hello, are there any news on this issue?

Best regards,

Alexander

0 Kudos
JenniferJ
Moderator
595 Views

this issue is fixed in 18.0 compiler. you can download it from Intel Registration Center.

Please report bugs to Intel Online Service center in the future and you'll get notified when the bug is fixed.

Thanks,

Jennifer

0 Kudos
Reply