[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753 Rainer Orth ro at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED Known to fail|| --- Comment #15 from Rainer Orth ro at gcc dot gnu.org 2011-07-18 16:22:34 UTC --- Fixed for 4.5, no feedback in more than a year, so I assume no backport is necessary. Rainer
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #14 from ro at gcc dot gnu dot org 2010-04-28 18:45 --- The bug was fixed for 4.5 by this patch: PATCH: Fix IRIX 6.5/Solaris 2 complex.h for GCC (PR libfortran/41169) http://gcc.gnu.org/ml/gcc-patches/2009-09/msg00114.html with a subsequent fix by Ralf Wildenhues. The 4.4 branch is currently frozen for the 4.4.4 release, and I have no idea if there are any releases planned after that. Given that 4.5.0 is already out, I'd like you to try this one before investing any effort into a backport. Parallel to this, we should try to get this Solaris CR fixed: 6549313 /usr/sfw/bin/gcc needs a patched complex.h http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6549313 I'd like to get changes made by fixincludes backported to Solaris proper, but there are only so many hours in a day. -- ro at gcc dot gnu dot org changed: What|Removed |Added CC||ro at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #11 from david dot kirkby at onetel dot net 2010-01-16 14:27 --- (In reply to comment #10) Subject: Re: _Complex_I is reported as undeclared. Code builds with Sun compiler. On Fri, 15 Jan 2010, david dot kirkby at onetel dot net wrote: Is this is trivial fix that could be implemted quickly, or it will require quite a bit of work, and so I should not expect a solution soon? It could be implemented quickly if someone familiar with fixincludes wishes to fix it. Do you know of anyone with the necessary knowledge? If so, I'll drop them an email and ask if they would mind looking at it. It is a *major* headache for the GPL Sage maths project, http://www.sagemath.org/ as we are having to disable working code on Solaris due to a bug in gcc. Unfortunately, not all of Sage will build with Sun's compiler, so that is not an option. BTW, the bug is still marked as 'UNCONFIRMED'. Is that still appropriate? Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #12 from joseph at codesourcery dot com 2010-01-17 03:36 --- Subject: Re: _Complex_I is reported as undeclared. Code builds with Sun compiler. On Sat, 16 Jan 2010, david dot kirkby at onetel dot net wrote: Do you know of anyone with the necessary knowledge? If so, I'll drop them an The correct way to communicate with maintainers is via the mailing lists and bug database, not direct contact to individuals. They are however listed in MAINTAINERS. as we are having to disable working code on Solaris due to a bug in gcc. A bug in Solaris's headers and a missing feature in GCC that it doesn't work around that bug. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #13 from david dot kirkby at onetel dot net 2010-01-17 03:53 --- (In reply to comment #12) Subject: Re: _Complex_I is reported as undeclared. Code builds with Sun compiler. On Sat, 16 Jan 2010, david dot kirkby at onetel dot net wrote: Do you know of anyone with the necessary knowledge? If so, I'll drop them an The correct way to communicate with maintainers is via the mailing lists and bug database, not direct contact to individuals. They are however listed in MAINTAINERS. as we are having to disable working code on Solaris due to a bug in gcc. A bug in Solaris's headers and a missing feature in GCC that it doesn't work around that bug. Marc Glisse said on gcc-help It looks like it was fixed in trunk in Septembre (r151331), did you check? I downloaded gcc-4.4-20100112, but that did not fix the issue. I was hoping it might be fixed in a 4.4.x series, but no such luck. I just downloaded gcc-4.5-20100114 in the vague hope that it might be fixed, and the snapshot not cause more problems than it solves. I've not compiled that yet - just had to install MPC first. If this is fixed in trunk do you do you know I might get that fix? If possible, I'd like to get just the fix applied to the latest stable release (i.e. 4.4.2 plus the fix), so it is as risk-free as reasonably practical. Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #4 from jsm28 at gcc dot gnu dot org 2010-01-15 11:49 --- This is a fixincludes bug; it needs to fix Sun's complex.h header to work with GCC. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Component|c |target GCC build triplet|Sun SPARC Enterprise T5240 | |Server running Solaris 10 | |05/2009 | GCC host triplet|Sun SPARC Enterprise T5240 | |Server running Solaris 10 | |05/2009 | GCC target triplet|Sun SPARC Enterprise T5240 |*-*-solaris* |Server running Solaris 10 | |05/2009 | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #5 from jsm28 at gcc dot gnu dot org 2010-01-15 11:51 --- *** Bug 42755 has been marked as a duplicate of this bug. *** -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #6 from jsm28 at gcc dot gnu dot org 2010-01-15 11:52 --- For reference of people without Solaris headers to hand, the code needing fixing by fixincludes is: /* * Compilation environments for Solaris must provide the _Imaginary datatype * and the compiler intrinsics _Complex_I and _Imaginary_I */ #define _Complex_I _Complex_I #define complex _Complex #define _Imaginary_I_Imaginary_I #define imaginary _Imaginary #undef I #define I _Imaginary_I Note there are some TABs there in the original header. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #8 from jsm28 at gcc dot gnu dot org 2010-01-15 16:30 --- Fixincludes is part of the compiler sources, and it is the part that should work around GCC-incompatible system headers (such as this one) by making fixed copies when GCC is built and installed. Thus, a failure to fix it indicates a limitation in fixincludes, and the fix would be to enhance fixincludes and rebuild GCC. It is not part of the C front end, so c is not the correct component. Do not change components back if a maintainer changes them to be more accurate. -- jsm28 at gcc dot gnu dot org changed: What|Removed |Added Component|c |target http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #9 from david dot kirkby at onetel dot net 2010-01-15 18:25 --- (In reply to comment #8) Fixincludes is part of the compiler sources, and it is the part that should work around GCC-incompatible system headers (such as this one) by making fixed copies when GCC is built and installed. Thus, a failure to fix it indicates a limitation in fixincludes, and the fix would be to enhance fixincludes and rebuild GCC. It is not part of the C front end, so c is not the correct component. Do not change components back if a maintainer changes them to be more accurate. Is this is trivial fix that could be implemted quickly, or it will require quite a bit of work, and so I should not expect a solution soon? Is there any workaround you can suggest? Would simply adding #define _Complex_I _Complex_I #define complex _Complex #define _Imaginary_I_Imaginary_I #define imaginary _Imaginary #undef I #define I _Imaginary_I at the top of the source files work? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753
[Bug target/42753] _Complex_I is reported as undeclared. Code builds with Sun compiler.
--- Comment #10 from joseph at codesourcery dot com 2010-01-15 18:32 --- Subject: Re: _Complex_I is reported as undeclared. Code builds with Sun compiler. On Fri, 15 Jan 2010, david dot kirkby at onetel dot net wrote: Is this is trivial fix that could be implemted quickly, or it will require quite a bit of work, and so I should not expect a solution soon? It could be implemented quickly if someone familiar with fixincludes wishes to fix it. Is there any workaround you can suggest? Would simply adding #define _Complex_I _Complex_I #define complex _Complex #define _Imaginary_I_Imaginary_I #define imaginary _Imaginary #undef I #define I _Imaginary_I at the top of the source files work? Adding copies of the non-GCC definitions certainly won't work. I suppose you could add #undef of the problem macros followed by #define to values valid for GCC (such as those used by glibc), after including any system headers. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42753