Summary: | sci-libs/cln: fix for gcc 4.5 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Alexander Holler <aholler> |
Component: | [OLD] Library | Assignee: | Gentoo Science Mathematics related packages <sci-mathematics> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | xarthisius |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | no_auto.patch |
Description
Alexander Holler
2010-04-27 10:42:06 UTC
Created attachment 229375 [details, diff]
no_auto.patch
Patch to compile cln with gcc 4.5.
What was the error exactly ? Any idea, if it's incorrect syntax or a compiler bug ? It's incorrect syntax. I don't know what that auto should be for and a quick web-search has brought up something about that. The only thing I know, is that auto might become a new kewyword in c++0x, so maybe that the reason gcc 4.5 now throws an error for it. Maybe it was just ignored before, anyway it isn't a valid C or C++ keyword as used in that code fragment. s/something/nothing/ I didn't encounter any problems while compiling sci-libs/cln-1.3.1 with gcc-4.5.0 Please attach your build.log and emerge --info Best regards, Kacper Kowalik Maybe you I've got it because I'm using -std=c++0x whenever possible. I can't reproduce it currently as the machine in question (a slow beagleboard) compiles other stuff for the next days ;) But as I've said, that auto is just useless and wrong. -std=gnu++0x (In reply to comment #7) > -std=gnu++0x That's not sane flag, you are enforcing standard that is not yet exactly defined. It's highly experimental. gnu++0x GNU dialect of -std=c++0x. This option enables experimental features that may be removed in future versions of GCC. @sci-mathematics: sorry for the noise @Rafał: please do not assing bug missing essential info to maintainers, thanks I've written that bug because the source in question contains an invalid keyword. Thats even true for std-c. At least thats my knowledge. Anyway, I will submit the patch upstream... (In reply to comment #9) > Anyway, I will submit the patch upstream... Yup, that's the best course of action. Sorry, I should've suggested it right away. Best regards, Kacper Kowalik (In reply to comment #8) > @Rafał: please do not assing bug missing essential info to maintainers, thanks > On one hand - duly noted. On the other - it did look sane and if it really is incorrect syntax, it was (to a point) a valid bug. I have to correct me. It is valid C (at least it's in the C99-Spec) but I've never seen that before. This auto is just what almost every c-compiler does by default and is a nop at least in gcc. But it is in conflict with c++0x and I'm wondering why I've got the error as I've specified -std=gnu++0x in the CXXFLAGS only. So either that .c is compiled with g++ or something adds CXXFLAGS to CFLAGS or something other happens. Will check that later. |