Closed
Bug 189661
Opened 23 years ago
Closed 23 years ago
configure.in fixes for gcc-3.4 (cvs)
Categories
(SeaMonkey :: Build Config, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: bbaetz, Assigned: bbaetz)
Details
Attachments
(1 file, 1 obsolete file)
|
3.67 KB,
patch
|
bbaetz
:
review+
dbaron
:
superreview+
|
Details | Diff | Splinter Review |
I decided to try to build moz with gcc-CVS over the weekend, which has a new C++
parser. There are some configure patches needed for this, obtained via
inspection/diff of config.log + friends.
I couldn't get much further, because of gcc PR c++/9302 -
http://gcc.gnu.org/ml/gcc-bugs/2003-01/msg00879.html where -include basically
doesn't work. We hard code using -include for gcc; its not worth working arround
that for a pre-alpha compiler which will presumably get fixed at some stage. I
may locally hack that at some point just to try to get further, though.
I'm not expecting too many changes given that we do build on AIX which is also
quite picky wrt c++ syntax.
The changes are:
- comment change for the (unused) mmintrin.h check. gcc now requires -mmmx (or
equiv) to use mmx options. I'm not sure if this change was made for 3.3;
gcc.gnu.org is down ATM so I can't check its cvs.
- add stdlib.h include for the const_iconv test so that NULL is declared. This
fails even with gcc-3.2 but since its user doesn't mind if we fail to detect
this when we should (it ends up just adding a single cast where it isn't needed)
noone noticed. We could get away with just stddef.h, but I just copied the other
test in case it used stdlib.h for some other reason.
- remove the test for c++ template specialization support. It fails in CVS gcc,
which now requires template<> to be included (with 'error: too few
template-parameter-lists' as the message otherwise; human-readable errors are
apparently on the todo list for the new parser). Noone uses the results of this
test, and we'd fail to compile without compiler support since the char traits
stuff in the strings lib uses it. Its also misleading+incorrect, since the
compiler 'supports' specialisation if either form is available. Since we require
it anyway, I just dropped the test rather than fixing it. (Is there a bug on
going through configure.in and weeding out unused tests?)
The separate template<> specialisation test remains; do we support any compiler
which doesn't like that anymore? (egcs?)
- The extern template instantiaion test was missing a |class|. Noone uses this
test either, but since its not incorrect I just fixed it. The error here was:
sp.cpp:2: error: expected unqualified-id
sp.cpp:2: error: abstract declarator `Foo<int>' used as declaration
sp.cpp:2: error: explicit instantiation of non-template `Foo<int> ._0'
which I tracked down mainly by guesswork...
| Assignee | ||
Comment 1•23 years ago
|
||
| Assignee | ||
Updated•23 years ago
|
Attachment #111964 -
Flags: review?(seawood)
| Assignee | ||
Comment 2•23 years ago
|
||
FWIW, gcc.gnu.org came back up, and 3.3 will have the same mmintrin.h issue.
Comment on attachment 111964 [details] [diff] [review]
patch
sr=dbaron, but I think you should also remove the HAVE_CPP_SPECIALIZATION
defines from nscore.h for the non-autoconf platforms. (Another possibility
would be to keep the test and rename the macro to
HAVE_CPP_OLD_SPECIALIZE_TEMPLATE_SYNTAX, in contrast to
HAVE_CPP_MODERN_SPEC...).
Attachment #111964 -
Flags: superreview+
| Assignee | ||
Comment 4•23 years ago
|
||
OK, I'll fix that up this evening.
I want to drop teh test though. Since we don;t compile without it, theres not
much point to autoconfing for it.
| Assignee | ||
Comment 5•23 years ago
|
||
Also removes defines from nscore.h
Attachment #111964 -
Attachment is obsolete: true
Attachment #112036 -
Flags: superreview+
Comment 6•23 years ago
|
||
Comment on attachment 111964 [details] [diff] [review]
patch
sure, whatever.
Attachment #111964 -
Flags: review?(seawood) → review+
| Assignee | ||
Comment 7•23 years ago
|
||
Comment on attachment 112036 [details] [diff] [review]
v2
carrying forward cls's r=
Attachment #112036 -
Flags: review+
| Assignee | ||
Comment 8•23 years ago
|
||
Fixed.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Updated•21 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•