Closed
Bug 79282
Opened 24 years ago
Closed 23 years ago
g++ 2.95.2 does not define _LANGUAGE_C_PLUS_PLUS required for <signal.h>
Categories
(SeaMonkey :: Build Config, defect, P3)
Tracking
(Not tracked)
VERIFIED
FIXED
mozilla0.9.3
People
(Reporter: jayvdb, Assigned: cls)
References
Details
Attachments
(4 files)
481 bytes,
patch
|
Details | Diff | Splinter Review | |
459 bytes,
patch
|
Details | Diff | Splinter Review | |
800 bytes,
patch
|
Details | Diff | Splinter Review | |
783 bytes,
patch
|
Details | Diff | Splinter Review |
signal() has a different specification depending on whether it is included from
C or C++ . signal.h uses #ifdef _LANGUAGE_C and #ifdef _LANGUAGE_C_PLUS_PLUS
to determine this. When compiling with g++, I need to #define
_LANGUAGE_C_PLUS_PLUS in netwerk/test/TestOverlappedIO.cpp and
netwerk/test/TestSocketIO.cpp .
% man signal
...
C SYNOPSIS
#include <signal.h>
C:
void (*signal (int sig, void (*func)()))();
C++:
void (*signal (int sig, void (*func)(int)))(int);
...
%
Reporter | ||
Comment 1•24 years ago
|
||
I'd rather stick that define in the irix section of configure.in . Other cases
may pop up that need this fix as well and I'm not sure what effect, if any, this
would have on non-irix systems.
Reporter | ||
Comment 3•24 years ago
|
||
Agreed. I am going thru with workarounds until I can go no more. Then ill
clean my objdir, come back and clean up and test these bugs, unless of course
you want to provide the fix? :)
Reporter | ||
Comment 4•24 years ago
|
||
Reporter | ||
Comment 5•24 years ago
|
||
While this isnt configure.in, so far this problem has not affected the rest of
the build. It has so far taken me 6 hours to build using gnu compilers as
opposed to about 2.5 hours using MIPSpro, so I am reluctant to rebuild it all
in order to test that adding the define globally does not break something
else. I have tested this patch does not break the MIPSpro build.
Keywords: patch
Updated•24 years ago
|
Status: UNCONFIRMED → NEW
Ever confirmed: true
Updated•24 years ago
|
Priority: -- → P3
Target Milestone: --- → mozilla0.9.3
Comment 7•23 years ago
|
||
has this been reviewed?
Comment 8•23 years ago
|
||
I have verified Chris's patch works for me if that is of any use.
Comment 9•23 years ago
|
||
I am not sure, but I believe there is a problem with the change to
configure.in ... and am suprised that my build worked.
AC_DEFINE will define _LANGUAGE_C_PLUS_PLUS for both c & c++, which would
result in signals being broken in c instead of c++.
So the configure.in should have something to the effect of CXXFLAGS += -
D_LANGUAGE_C_PLUS_PLUS.
Assignee | ||
Comment 10•23 years ago
|
||
Comment 11•23 years ago
|
||
Given that this define is required on IRIX, I have opened an SGI internal bug
(825388), to have g++ internally define it.
Comment 12•23 years ago
|
||
This issue is now also a GNU bug: c++/3047
g++ does define _LANGUAGE_C_PLUS_PLUS for .cc .cxx and .C , but obviously
not .cpp
Reporter | ||
Comment 13•23 years ago
|
||
Can this be moved forward to 0.9.2 as the fix is in hand, and this is the only
remaining blocker for IRIX/gcc build.
Assignee | ||
Comment 14•23 years ago
|
||
Target milestone doesn't matter that much but I will need a r= on the new patch
before drivers will accept it.
Reporter | ||
Comment 15•23 years ago
|
||
I am not familiar with the preferred method of requesting review; should I
email the person personally, or add them to the CC, the latter seeming a little
rude?
Assignee | ||
Comment 16•23 years ago
|
||
I think either way is fairly common practice. Since this is a considered a port
specific branch, anyone who is familiar with the port and can verify that the
patch does work like it should can give a r=. Ports really don't have the
owner/peer restrictions like other modules do.
Reporter | ||
Comment 17•23 years ago
|
||
Wan-Teh, could you please review this patch for the IRIX/gcc port.
Comment 18•23 years ago
|
||
r=wtc.
Comment 19•23 years ago
|
||
a= asa@mozilla.org for checkin to the trunk.
(on behalf of drivers)
Blocks: 83989
Assignee | ||
Comment 20•23 years ago
|
||
Patch has been checked in.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Updated•20 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•