|
| View previous topic :: View next topic |
| Author |
Message |
sru69
Joined: 25 Mar 2011 Posts: 3
|
Posted: Fri Mar 25, 2011 1:46 am Post subject: pgcc and gcc 4.5: Illegal use of symbol |
|
|
Hi,
There seems to be a compatibility problem between pgcc and (latest) gcc 4.5.
I have seen it on openSUSE with pgi 7.2, 9.0, 10.4 - error output see below.
No problem with pgcc and gcc 4.3 on the same system.
Can this be fixed for gcc 4.5?
Or should I point in localrc to gcc 4.3 instead of gcc 4.5?
| Code: |
PGC-S-0040-Illegal use of symbol, __INT_LEAST8_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 60)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 60)
PGC-S-0040-Illegal use of symbol, __INT_LEAST16_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 61)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 61)
PGC-S-0040-Illegal use of symbol, __INT_LEAST32_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 62)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 62)
PGC-S-0040-Illegal use of symbol, __INT_LEAST64_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 63)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 63)
PGC-S-0040-Illegal use of symbol, __UINT_LEAST8_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 64)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 64)
PGC-S-0040-Illegal use of symbol, __UINT_LEAST16_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 65)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 65)
PGC-S-0040-Illegal use of symbol, __UINT_LEAST32_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 66)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 66)
PGC-S-0040-Illegal use of symbol, __UINT_LEAST64_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 67)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 67)
PGC-S-0040-Illegal use of symbol, __INT_FAST8_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 71)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 71)
PGC-S-0040-Illegal use of symbol, __INT_FAST16_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 72)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 72)
PGC-S-0040-Illegal use of symbol, __INT_FAST32_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 73)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 73)
PGC-S-0040-Illegal use of symbol, __INT_FAST64_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 74)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 74)
PGC-S-0040-Illegal use of symbol, __UINT_FAST8_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 75)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 75)
PGC-S-0040-Illegal use of symbol, __UINT_FAST16_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 76)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 76)
PGC-S-0040-Illegal use of symbol, __UINT_FAST32_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 77)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 77)
PGC-S-0040-Illegal use of symbol, __UINT_FAST64_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 78)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 78)
PGC-S-0040-Illegal use of symbol, __INTMAX_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 91)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 91)
PGC-S-0040-Illegal use of symbol, __UINTMAX_TYPE__ (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 92)
PGC-W-0156-Type not specified, 'int' assumed (/usr/lib64/gcc/x86_64-suse-linux/4.5/include/stdint-gcc.h: 92)
PGC-S-0040-Illegal use of symbol, uint8_t (./utf8proc.h: 251)
PGC-W-0156-Type not specified, 'int' assumed (./utf8proc.h: 251)
PGC-S-0035-Syntax error: Recovery attempted by replacing identifier uint8_t by typedef id .Z0000 (./utf8proc.h: 267)
PGC-S-0040-Illegal use of symbol, uint8_t (./utf8proc.h: 316)
PGC-W-0156-Type not specified, 'int' assumed (./utf8proc.h: 316)
PGC-S-0040-Illegal use of symbol, uint8_t (./utf8proc.h: 357)
PGC-W-0156-Type not specified, 'int' assumed (./utf8proc.h: 357)
PGC-S-0035-Syntax error: Recovery attempted by replacing identifier uint8_t by typedef id .Z0001 (./utf8proc.h: 357)
PGC-S-0040-Illegal use of symbol, uint8_t (./utf8proc.h: 375)
PGC-W-0156-Type not specified, 'int' assumed (./utf8proc.h: 375)
PGC-S-0040-Illegal use of symbol, uint8_t (./utf8proc.h: 375)
PGC-F-0008-Error limit exceeded (./utf8proc.h: 375)
|
Thanks,
Urs |
|
| Back to top |
|
 |
mkcolg
Joined: 30 Jun 2004 Posts: 4996 Location: The Portland Group Inc.
|
Posted: Tue Mar 29, 2011 9:44 am Post subject: |
|
|
Hi Urs,
Just an FYI that I'm looking into this but need to set-up system to use this version of GCC. My guess is that we'll just need to make a few minor changes to our stdint.h file but until I can recreate the error, I can't be sure.
I'll keep you posted,
Mat |
|
| Back to top |
|
 |
sru69
Joined: 25 Mar 2011 Posts: 3
|
Posted: Tue Apr 05, 2011 4:22 am Post subject: |
|
|
Hi Mat
thanks for looking into this!
Urs |
|
| Back to top |
|
 |
mkcolg
Joined: 30 Jun 2004 Posts: 4996 Location: The Portland Group Inc.
|
Posted: Tue Apr 05, 2011 2:23 pm Post subject: |
|
|
Hi Urs,
It appears that these are new predefined gcc macros, meaning that they are defined internally by gcc and not in a system header file. This means we'll need to add them to pgcc as well. I have added a feature request (TPR#17780).
In the short term, you might be able to add a definition for them in your source code, unfortunately, I don't yet know to what values they should be set.
- Mat |
|
| Back to top |
|
 |
sru69
Joined: 25 Mar 2011 Posts: 3
|
Posted: Wed Apr 13, 2011 2:47 am Post subject: |
|
|
Hi Mat,
I guess in case the request will be accepted, the fix will be only provided for the latest pgcc version? And not for pgcc 7.x, 8.x etc. Is this correct?
OpenSUSE comes with gcc 4.5 and optional gcc 4.3 and 4.1. At the moment my lorcalrc file points to gcc 4.5
| Code: | ...
set GCCDIR=/usr/lib64/gcc/x86_64-suse-linux/4.5;
set GCCINC=/usr/lib64/gcc/x86_64-suse-linux/4.5/include;
set G77DIR=/usr/lib64/gcc/x86_64-suse-linux/4.5;
... |
Would it make sense to install gcc 4.3 in addition to 4.5 and set
| Code: | set GCCDIR=/usr/lib64/gcc/x86_64-suse-linux/4.3;
set GCCINC=/usr/lib64/gcc/x86_64-suse-linux/4.3/include;
set G77DIR=/usr/lib64/gcc/x86_64-suse-linux/4.3;
|
or should (could) I leave G77DIR unchanged and change only GCCDIR and GCCINC
| Code: | set GCCDIR=/usr/lib64/gcc/x86_64-suse-linux/4.3;
set GCCINC=/usr/lib64/gcc/x86_64-suse-linux/4.3/include;
set G77DIR=/usr/lib64/gcc/x86_64-suse-linux/4.5;
|
What would you recommend?
Cheers,
Urs |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2002 phpBB Group
|