ia-64, ecc: pointer to class is non-POD type

ia-64, ecc: pointer to class is non-POD type

Try this programm with ecc (Version 7.1, Build 20030307)

class MyClass
MyClass() { }

int main(int argv, char * argc[])
typedef MyClass *CLASS_PTR;
unsigned int LEN = 10;
CLASS_PTR field1[LEN];
return 0;

The compilation fails and the compiler complains about
CLASS_PTR beeing a non POD type. But where is the difference of MyClass* and void*? Other compilers (e.g. gcc) accept this program.


2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

>g++ -pedantic -Wall krugaar.C
krugaar.C: In function `int main(int, char**)':
krugaar.C:10: warning: ISO C++ forbids variable-size array `field1'
krugaar.C:10: warning: unused variable `MyClass*field1[((LEN - 1) + 1)]'

So, you've found an extension which gcc recognizes as such, which Intel C++ doesn't support.

Leave a Comment

Please sign in to add a comment. Not a member? Join today