Closed Bug 567092 Opened 15 years ago Closed 15 years ago

Errors seen while building: nsFrame::operator delete in nsForms.h

Categories

(Thunderbird :: Build Config, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: swsnyder, Unassigned)

Details

Building with GCC 4.4.3 on fully-updated Fedora 12 / x86_64. When building TB v3.1 RC1 many errors are seen of this nature: ~/comm-1.9.2/mozilla/layout/forms/../generic/nsFrame.h: In function 'nsIFrame* NS_NewGfxCheckboxControlFrame(nsIPresShell*, nsStyleContext*)': ~/comm-1.9.2/mozilla/layout/forms/../generic/nsFrame.h:171: error: 'static void nsFrame::operator delete(void*, size_t)' is protected ~/comm-1.9.2/mozilla/layout/forms/nsGfxCheckboxControlFrame.cpp:105: error: within this context I get 14 of these errors before the overall build fails. The C++ source files are different in each case, but the reference to line 171 of file nsFrame.h is always the same. Full example: c++ -o nsGfxCheckboxControlFrame.o -c -I../../dist/system_wrappers -include /home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/config/gcc_hidden.h -DMOZILLA_INTERNAL_API -DMOZ_THUNDERBIRD=1 -DOSTYPE=\"Linux2.6.32.12-115.fc12\" -DOSARCH=Linux -D_IMPL_NS_LAYOUT -I/home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/../base -I/home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/../generic -I/home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/../xul/base/src -I/home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/../../content/base/src -I/home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/../../content/html/content/src -I/home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms -I. -I../../dist/include -I../../dist/include/nsprpub -I/usr/include/nspr4 -I/usr/include/nss3 -fPIC -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-long-long -pedantic -fno-strict-aliasing -fshort-wchar -pthread -pipe -DNDEBUG -DTRIMMED -Os -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -march=native -msse4.1 -momit-leaf-frame-pointer -DMOZILLA_CLIENT -include ../../mozilla-config.h -Wp,-MD,.deps/nsGfxCheckboxControlFrame.pp /home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/nsGfxCheckboxControlFrame.cpp /home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/../generic/nsFrame.h: In function 'nsIFrame* NS_NewGfxCheckboxControlFrame(nsIPresShell*, nsStyleContext*)': /home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/../generic/nsFrame.h:171: error: 'static void nsFrame::operator delete(void*, size_t)' is protected /home/steve/rpmbuild/BUILD/thunderbird-3.1rc1/comm-1.9.2/mozilla/layout/forms/nsGfxCheckboxControlFrame.cpp:105: error: within this context gmake[6]: *** [nsGfxCheckboxControlFrame.o] Error 1 Firefox v3.6.4, also built upon Gecko v1.9.2.4, builds correctly, while TB v3.1 RC1 does not.
Can you attach the mozconfig you are using for building please? Although we included a few changes on top of 1.9.2.4, we didn't touch those files, and our own 64-bit builder that is currently doing test builds is working fine. So I'm not quite sure what is going on here.
This is the mozconfig in use. It is unchanged (for better or worse) from Fedora's TB v3.0.4 config. mk_add_options MOZ_CO_PROJECT=mail ac_add_options --enable-application=mail mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-tb/ mk_add_options AUTOCONF=autoconf-2.13 #ac_add_options --with-system-png ac_add_options --prefix="$PREFIX" ac_add_options --libdir="$LIBDIR" ac_add_options --with-system-nspr ac_add_options --with-system-nss ac_add_options --with-system-jpeg ac_add_options --with-system-zlib ac_add_options --with-pthreads ac_add_options --disable-tests ac_add_options --disable-debug ac_add_options --disable-installer ac_add_options --enable-optimize="$RPM_OPT_FLAGS" ac_add_options --enable-xinerama ac_add_options --enable-default-toolkit=cairo-gtk2 ac_add_options --disable-xprint ac_add_options --disable-strip ac_add_options --disable-install-strip ac_add_options --enable-pango ac_add_options --enable-system-cairo ac_add_options --enable-svg ac_add_options --enable-canvas ac_add_options --enable-system-hunspell ac_add_options --disable-crashreporter export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 mk_add_options BUILD_OFFICIAL=1 mk_add_options MOZILLA_OFFICIAL=1 I also tried it --without system NSPR & NSS. Didn't seem to make any difference.
(In reply to comment #3) > mk_add_options MOZ_CO_PROJECT=mail (side note) This flag is no longer necessary now we're in hg Two thoughts: ac_add_options --enable-optimize="$RPM_OPT_FLAGS" As an experiment try dropping the ="$RPM_OPT_FLAGS" bit and just use the defaults that we provide. Alternately, I would suggest you try a more basic mozconfig as an experiment, e.g. mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-tb-debug ac_add_options --enable-application=mail ac_add_options --disable-debug ac_add_options --enable-optimize and see if that builds. If it does, then we can narrow it down to one of the options, if it doesn't then we can potentially assume its a complier fault. I'm guessing a bit here, but narrowing down the problem area should help.
Using the default opt flags fixed it. FYI, this is what $RPM_OPT_FLAGS resolves to: -Os -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -march=native -msse4.1 -momit-leaf-frame-pointer I'm going to play with these options until I find out where the problem is.
The problem was resolved by removing that -fexceptions switch from Fedora's RPM_OPT_FLAGS definition. Sorry to bother everyone.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → INVALID
(In reply to comment #6) > The problem was resolved by removing that -fexceptions switch from Fedora's > RPM_OPT_FLAGS definition. > > Sorry to bother everyone. No problem. Glad you found the issue.
You need to log in before you can comment on or make changes to this bug.