Closed Bug 236956 Opened 20 years ago Closed 20 years ago

MSVC++ .net 2003 builds fail while trying to compile nsGfxCheckboxControlFrame.cpp

Categories

(Core :: Layout: Form Controls, defect)

x86
Windows XP
defect
Not set
blocker

Tracking

()

RESOLVED FIXED

People

(Reporter: stdowa+bugzilla, Assigned: bzbarsky)

References

Details

Attachments

(1 file)

MSVC++ .net 2003 opt builds should fail after pulling the checkins for bug 57607.

/cygdrive/c/Mozilla/mozilla/layout/html/forms/src/nsGfxCheckboxControlFrame.cpp
nsGfxCheckboxControlFrame.cpp
../../../../dist\include\xpcom\nsCOMPtr.h(197) : error C2504: 'imgIRequest' :
base class undefined
        ../../../../dist\include\xpcom\nsCOMPtr.h(693) : see reference to class
template instantiation 'nsDerivedSafe<T>' being compiled
        with
        [
            T=imgIRequest
        ]
        ../../../../dist\include\xpcom\nsCOMPtr.h(692) : while compiling
class-template member function 'nsDerivedSafe<T> *nsCOMPtr<T>::get(void) cons
t'
        with
        [
            T=imgIRequest
        ]
        c:\Mozilla\obj-firefox\dist\include\content\nsStyleStruct.h(187) : see
reference to class template instantiation 'nsCOMPtr<T>' being compiled
        with
        [
            T=imgIRequest
        ]
../../../../dist\include\xpcom\nsCOMPtr.h(200) : error C2027: use of undefined
type 'imgIRequest'
        ../../../../dist\include\layout\nsIPresContext.h(57) : see declaration
of 'imgIRequest'
../../../../dist\include\xpcom\nsCOMPtr.h(200) : error C2873: 'AddRef' : symbol
cannot be used in a using-declaration
../../../../dist\include\xpcom\nsCOMPtr.h(201) : error C2027: use of undefined
type 'imgIRequest'
        ../../../../dist\include\layout\nsIPresContext.h(57) : see declaration
of 'imgIRequest'
../../../../dist\include\xpcom\nsCOMPtr.h(201) : error C2873: 'Release' : symbol
cannot be used in a using-declaration
make[1]: *** [nsGfxCheckboxControlFrame.obj] Error 2
This is not so likely to be form controls... but why is this happening at all? 
This file is not using nsCSSValue at all....
<swalker_away> biesi: -Oxs -GL -G7 -arch:SSE2

[/GL can] Inline a function in a module even when the function is defined in
another module.
(from
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore/html/vcgrfglwholeprogramoptimization.asp)

might be responsible.
+#include "imgIRequest.h"

Allows nsGfxCheckboxControlFrame.cpp (and the rest of Firefox) to compile
successfully.
I am seeing this as well. For the record, I don't use the -GL compiler flag,
just "-O1 -G6". This regressed recently, perhaps from bug 57607 or bug 4510.
It's from bug 57607.   The question is what sort of (and wheter) miscompiling is
going on and how we can fix it... I don't want to just add a bogus header in
that file.
Blocks: 215224
This doesn't have anything to do with the optimising compiler. The build fails
at the same point even when the ac_add_options --enable-optimize mozconfig line
is omitted. Updating summary.
Summary: MSVC++ .net 2003 opt builds fail while trying to compile nsGfxCheckboxControlFrame.cpp → MSVC++ .net 2003 builds fail while trying to compile nsGfxCheckboxControlFrame.cpp
Attached patch FixSplinter Review
Adding the header is the right thing after all.  The bustage is not related to
nsCSSValue at all.  It's happening because in Paint() we look at
mCheckButtonFaceStyle->GetStyleBackground()->mBackgroundImage, which is an
nsCOMPtr<imgIRequest>.	I do sorta wonder how this compiles on other platforms
now that I think about it... ;)
Comment on attachment 143690 [details] [diff] [review]
Fix

We should get this in for 1.7b.. compiling is always a good thing.  ;)
Attachment #143690 - Flags: superreview?(dbaron)
Attachment #143690 - Flags: review?(dbaron)
Attachment #143690 - Flags: approval1.7b?
Comment on attachment 143690 [details] [diff] [review]
Fix

Why only this file?
Attachment #143690 - Flags: superreview?(dbaron)
Attachment #143690 - Flags: superreview+
Attachment #143690 - Flags: review?(dbaron)
Attachment #143690 - Flags: review+
Attachment #143690 - Flags: approval1.7b?
Attachment #143690 - Flags: approval1.7b+
Fixed.
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Assignee: nobody → bzbarsky
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: