STL: Add another stl file to the "FIXME" list

RESOLVED FIXED in mozilla17

Status

()

Core
XPCOM
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: espindola, Unassigned)

Tracking

unspecified
mozilla17
x86_64
Linux
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

Created attachment 641999 [details]
add tuple to stl-headers

Code we got from chromium uses <tuple>, so we should add it to stl-headers. I found this because clang is stricter than gcc on redeclarations without visibilities and we were getting a preprocessed file that looked like

#pragma GCC visibility push(hidden)
....
#pragma GCC visibility push(default)
contents of a libstdc++ header that forward declares tuple_element.
#pragma GCC visibility pop
...
contents of libstdc++'s tuple, which defines tuple_element
....

When we see the forward declaration we think that tuple_element has default visibility, but then when we find out the definition we see it has hidden visibility. 

This can also cause problems if only the tuple header is included and we conclude that the types declared in there are hidden.
Attachment #641999 - Flags: review?(benjamin)
Blocks: 574346

Updated

5 years ago
Attachment #641999 - Flags: review?(benjamin) → review?(jones.chris.g)
Comment on attachment 641999 [details]
add tuple to stl-headers

This isn't an exception-safety review, this is extending the list of headers we use but haven't reviewed.  Please update this bug accordingly.

r=me for extending that list.
Attachment #641999 - Flags: review?(jones.chris.g) → review+
Summary: STL: Review exception safety of <tuple> for gcc and MSVC → STL: Add another stl file to the "FIXME" list

Comment 2

5 years ago
https://hg.mozilla.org/mozilla-central/rev/1cbe2e404e80
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla17
You need to log in before you can comment on or make changes to this bug.