Make stl-wrappers more lenient when compiling ObjC with GCC

RESOLVED FIXED in mozilla10

Status

()

Core
Build Config
RESOLVED FIXED
6 years ago
6 years ago

People

(Reporter: ted, Assigned: ted)

Tracking

(Blocks: 1 bug)

Trunk
mozilla10
x86_64
Windows 7
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [iOS] fixed-in-bs)

Attachments

(1 attachment, 1 obsolete attachment)

(Assignee)

Description

6 years ago
Apple's GCC apparently has a bug where it doesn't honor -fno-exceptions when compiling ObjC, so you wind up with __EXCEPTIONS defined no matter what you do. This blows up in our stl wrappers, of course. We don't hit this on desktop OS X because Apple's GCC has a different bug there related to visibility which causes us to not use the stl wrappers at all.

I have a patch that lets us work around this. I think if we move to clang this will all go away.
(Assignee)

Updated

6 years ago
Whiteboard: [iOS]
(Assignee)

Comment 1

6 years ago
Created attachment 559506 [details] [diff] [review]
make stl-wrappers more lenient when compiling ObjC with GCC

This skips the #error case when we're compiling ObjC with GCC.
Attachment #559506 - Flags: review?(jones.chris.g)
(Assignee)

Updated

6 years ago
Blocks: 682873
Sorry for the review latency, but wasn't the guess last time we talked that there was something iOS-specific (either different compiler build or different build flag) triggering this problem?  If so, could we make this workaround contingent on iOS for the time being?
(Assignee)

Comment 3

6 years ago
I believe it's probably a slightly different GCC (hard to tell with Apple's GCC versioning), since it passes the visibility test. Is it really worth it? We're unlikely to ever get an Apple GCC for x86/x86-64 that passes the test and hits this bug, we're more likely to switch to clang.
All I'm suggesting is to add __iOS__ or whatever to the guard here.
(Assignee)

Comment 5

6 years ago
Created attachment 565996 [details] [diff] [review]
make stl-wrappers more lenient when compiling ObjC with GCC

Okay, this makes it iOS-specific.
Attachment #565996 - Flags: review?(jones.chris.g)
(Assignee)

Updated

6 years ago
Attachment #559506 - Attachment is obsolete: true
Attachment #559506 - Flags: review?(jones.chris.g)
Attachment #565996 - Flags: review?(jones.chris.g) → review+
(Assignee)

Comment 6

6 years ago
http://hg.mozilla.org/projects/build-system/rev/31e8fbc4d5f0
Whiteboard: [iOS] → [iOS] fixed-in-bs
https://hg.mozilla.org/mozilla-central/rev/31e8fbc4d5f0
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla10
You need to log in before you can comment on or make changes to this bug.