Closed Bug 256994 Opened 21 years ago Closed 20 years ago

Error in "intl/src/mac" when trying to build Firefox with Apple GCC-3.5-tree-ssa

Categories

(Core :: Internationalization, defect)

PowerPC
macOS
defect
Not set
blocker

Tracking

()

RESOLVED FIXED

People

(Reporter: MMx, Assigned: smontagu)

References

Details

Attachments

(2 files)

I tryed to compile Firefox AVIARY_BRANCH (both 0.9.3 and recent source) with Apple's gcc-3.5-tree-ssa in OS X 10.3.5 and it failed at the following file: http://lxr.mozilla.org/aviarybranch/source/intl/locale/src/mac/nsCollationMacUC.cpp The message I got: ---------------8<---------------- nsCollationMacUC.cpp c++ -o nsCollationMacUC.o -c -DOSTYPE=\"Darwin7.5.0\" -DOSARCH=\"Darwin\" -I../../../../dist/include/xpcom -I../../../../dist/include/string -I../../../../dist/include/unicharutil -I../../../../dist/include/uconv -I../../../../dist/include/locale -I../../../../dist/include -I/Volumes/FW_Jaguar/TEMP/Builds/Firefox/AVIARY_1_0_20040515_BRANCH/mozilla/dist/include/nspr -I./.. -I/usr/X11R6/include -mdynamic-no-pic -I/usr/X11R6/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-long-long -fpascal-strings -no-cpp-precomp -fno-common -fshort-wchar -I/Developer/Headers/FlatCarbon -pipe -DNDEBUG -DTRIMMED -O2 -I/usr/X11R6/include -DMOZILLA_CLIENT -include ../../../../mozilla-config.h -Wp,-MD,.deps/nsCollationMacUC.pp nsCollationMacUC.cpp nsCollationMacUC.cpp: In destructor `nsCollationMacUC::~nsCollationMacUC()': nsCollationMacUC.cpp:64: warning: unused variable 'err' nsCollationMacUC.cpp: In member function `virtual nsresult nsCollationMacUC::CompareString(PRInt32, constnsAString&, constnsAString&, PRInt32*)': nsCollationMacUC.cpp:223: error: invalid conversion from `PRInt32*' to `SInt32*' nsCollationMacUC.cpp:223: error: initializing argument 7 of `OSStatus UCCompareText(OpaqueCollatorRef*, const UniChar*, UniCharCount, const UniChar*, UniCharCount, Boolean*, SInt32*)' nsCollationMacUC.cpp: In member function `virtual nsresult nsCollationMacUC::CompareRawSortKey(const PRUint8*, PRUint32, const PRUint8*, PRUint32, PRInt32*)': nsCollationMacUC.cpp:244: error: invalid conversion from `PRInt32*' to `SInt32*' nsCollationMacUC.cpp:244: error: initializing argument 6 of `OSStatus UCCompareCollationKeys(const UCCollationValue*, ItemCount, const UCCollationValue*, ItemCount, Boolean*, SInt32*)' make[6]: *** [nsCollationMacUC.o] Error 1 make[6]: *** Waiting for unfinished jobs.... make[5]: *** [libs] Error 2 make[4]: *** [libs] Error 2 make[3]: *** [libs] Error 2 make[2]: *** [tier_9] Error 2 make[1]: *** [default] Error 2 make: *** [build] Error 2 ----------8<------------------------------ I will try it with trunk, too, but I don't expect a different result. With gcc-3.3 everything works fine. CCing the people who last changed the lines in question (and still have matches in the database :| )
Flags: blocking-aviary1.0mac?
I tried with trunk (checked out ~14UTC), same result: ----------8<---------------------------------------- nsCollationMacUC.cpp c++ -o nsCollationMacUC.o -c -DOSTYPE=\"Darwin7.5.0\" -DOSARCH=\"Darwin\" -I../../../../dist/include/xpcom -I../../../../dist/include/string -I../../../../dist/include/unicharutil -I../../../../dist/include/uconv -I../../../../dist/include/locale -I../../../../dist/include -I/Volumes/FW_Jaguar/TEMP/Builds/Firefox/Trunk/mozilla/dist/include/nspr -I./.. -I/usr/X11R6/include -mdynamic-no-pic -I/usr/X11R6/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-long-long -fpascal-strings -no-cpp-precomp -fno-common -fshort-wchar -I/Developer/Headers/FlatCarbon -pipe -DNDEBUG -DTRIMMED -O2 -I/usr/X11R6/include -DMOZILLA_CLIENT -include ../../../../mozilla-config.h -Wp,-MD,.deps/nsCollationMacUC.pp nsCollationMacUC.cpp nsCollationMacUC.cpp: In destructor `nsCollationMacUC::~nsCollationMacUC()': nsCollationMacUC.cpp:63: warning: unused variable 'err' nsCollationMacUC.cpp: In member function `virtual nsresult nsCollationMacUC::CompareString(PRInt32, constnsAString&, constnsAString&, PRInt32*)': nsCollationMacUC.cpp:222: error: invalid conversion from `PRInt32*' to `SInt32*' nsCollationMacUC.cpp:222: error: initializing argument 7 of `OSStatus UCCompareText(OpaqueCollatorRef*, const UniChar*, UniCharCount, const UniChar*, UniCharCount, Boolean*, SInt32*)' nsCollationMacUC.cpp: In member function `virtual nsresult nsCollationMacUC::CompareRawSortKey(const PRUint8*, PRUint32, const PRUint8*, PRUint32, PRInt32*)': nsCollationMacUC.cpp:243: error: invalid conversion from `PRInt32*' to `SInt32*' nsCollationMacUC.cpp:243: error: initializing argument 6 of `OSStatus UCCompareCollationKeys(const UCCollationValue*, ItemCount, const UCCollationValue*, ItemCount, Boolean*, SInt32*)' make[6]: *** [nsCollationMacUC.o] Error 1 make[6]: *** Waiting for unfinished jobs.... make[5]: *** [libs] Error 2 make[4]: *** [libs] Error 2 make[3]: *** [libs] Error 2 make[2]: *** [tier_9] Error 2 make[1]: *** [default] Error 2 make: *** [build] Error 2 --------------------8<--------------------- additional information about my compiler: Reading specs from /usr/lib/gcc/powerpc-apple-darwin/3.5.0-tree-ssa/specs Configured with: /Volumes/FW_Jaguar/TEMP/Builds/GCC/gcc-1765/build/obj/src/configure --disable-checking --prefix=/usr --disable-libmudflap --mandir=/share/man --enable-languages=c,objc,c++ --disable-libada --program-transform-name=/^[cg][^+.-]*$/s/$/-3.5/ --with-gxx-include-dir=/include/gcc/darwin/3.5/c++ --build=powerpc-apple-darwin --host=powerpc-apple-darwin --target=powerpc-apple-darwin Thread model: posix gcc version 3.5.0-tree-ssa 20040321 (merged 20040529) (Apple Computer, Inc. build 1765) changing to Trunk and marking as NEW for now.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Version: Other Branch → Trunk
changing summary because it does not only affect AVIARY branch
Summary: Error when trying to build AVIARY Firefox with Apple GCC-3.5-tree-ssa → Error when trying to build Firefox with Apple GCC-3.5-tree-ssa
It seems gcc changed behaviour, since the Darwin 7.4.0 Clobber tinderbox (which comes with gcc 3.3 i think) spits out a warning here, so gcc 3.5 to produces a error instad of a warning here.
Attached patch Patch 1Splinter Review
This patches fixes this build issue, not requesting review for now, since other build issues might still appear. The Reporter said the patch works, but he didnt compile further than this file.
Attached patch Patch 1Splinter Review
This patch fixes this build issue, not requesting review for now, since other build issues might still appear. The Reporter said the patch works, but he didnt compile further than this file.
I just got another error, in the file "mozilla/gfx/src/mac/nsImageMac.cpp " (trunk, expect it to be the same in all live branches) ---------------8<--------------------- nsImageMac.cpp: In member function `virtual nsresult nsImageMac::Draw(nsIRenderingContext&, nsIDrawingSurface*, PRInt32, PRInt32, PRInt32, PRInt32, PRInt32, PRInt32, PRInt32, PRInt32)': nsImageMac.cpp:386: error: invalid conversion from `char*' to `unsigned char*' nsImageMac.cpp:386: error: initializing argument 9 of `void RectStretch(unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned char*, unsigned int, unsigned char*, unsigned int, unsigned int)' nsImageMac.cpp:386: error: invalid conversion from `char*' to `unsigned char*' nsImageMac.cpp:386: error: initializing argument 11 of `void RectStretch(unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned char*, unsigned int, unsigned char*, unsigned int, unsigned int)' nsImageMac.cpp:392: error: invalid conversion from `char*' to `unsigned char*' nsImageMac.cpp:392: error: initializing argument 9 of `void RectStretch(unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned char*, unsigned int, unsigned char*, unsigned int, unsigned int)' nsImageMac.cpp:392: error: invalid conversion from `char*' to `unsigned char*' nsImageMac.cpp:392: error: initializing argument 11 of `void RectStretch(unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned char*, unsigned int, unsigned char*, unsigned int, unsigned int)' make[5]: *** [nsImageMac.o] Error 1 ------------8<-----------------------
I just filed bug 257096 for the issue in /gfx. more bugs coming up... :(
changing summary to make bugs distinguishable
Summary: Error when trying to build Firefox with Apple GCC-3.5-tree-ssa → Error in "intl/src/mac" when trying to build Firefox with Apple GCC-3.5-tree-ssa
setting dependency on tracker bug
Depends on: 257100
Flags: blocking-aviary1.0mac?
Blocks: 257100
No longer depends on: 257100
Attachment #157100 - Flags: review?(smontagu)
Attachment #157100 - Flags: review?(smontagu) → review+
Attachment #157100 - Flags: superreview?(jshin)
Both SInt32 and PRint32 are signed 32-bit integers, but it seems that one is typedef'd as 'unsigned long' while the other is typedef'd as 'unsigned int' (I haven't checked which is which). http://developer.apple.com/documentation/Porting/Conceptual/PortingDrivers/unix-model/chapter_2_section_7.html
Attachment #157100 - Flags: superreview?(jshin) → superreview?(sfraser)
Attachment #157100 - Flags: superreview?(sfraser) → superreview+
Attachment #157100 - Flags: approval-aviary?
PRInt32 is typedef'd as 'int' on Mac OS X. It is very common for people to typedef a 32-bit signed integer type as 'long' on 32-bit systems where both 'int' and 'long' are 32-bit. But I only found out about this after it's too late to change PRInt32.
hrm, how does this impact using NSPR in a 64-bit app on Tiger, where int (and thus PRInt32) is now 64 bits?
ignore my last comment entirely, tiger is a LP64 model. my bad.
(In reply to comment #10) > Both SInt32 and PRint32 are signed 32-bit integers, but it seems that one is > typedef'd as 'unsigned long' while the other is typedef'd as 'unsigned int' (I Oops. I meant 'long' and 'int', respectively.
Checked in on trunk: 2004-08-30 10:41 timeless%mozdev.org mozilla/ intl/ locale/ src/ mac/ nsCollationMacUC.cpp 1.16 2/2 Bug 256994 Error in "intl/src/mac" when trying to build Firefox with Apple GCC-3.5-tree-ssa patch by mcsmurf [et] gmx.de r=smontagu sr=smfr not resolving yet, since patch has pending approval-aviary?
Comment on attachment 157100 [details] [diff] [review] Patch 1 a=asa for branch checkin.
Attachment #157100 - Flags: approval-aviary? → approval-aviary+
Comment on attachment 157100 [details] [diff] [review] Patch 1 need re-approval now that we're past 1.0 RC. setting back to request.
Attachment #157100 - Flags: approval-aviary+ → approval-aviary?
Comment on attachment 157100 [details] [diff] [review] Patch 1 too late for 1.0
Attachment #157100 - Flags: approval-aviary? → approval-aviary-
Attachment #157100 - Flags: approval1.8b4?
Attachment #157100 - Flags: approval1.8b4? → approval1.8b4+
eh, what's the point of requesting approval here? The patch was already checked in into trunk (and 1.8b4+ IS trunk). I think this isn't needed for aviary anymore and so fixed.
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: