[CXX-489] Understand libc++ inline macros and determine if we need to use them Created: 22/Jan/15  Updated: 24/Apr/15  Resolved: 03/Mar/15

Status: Closed
Project: C++ Driver
Component/s: Implementation
Affects Version/s: None
Fix Version/s: 0.1.0

Type: Task Priority: Major - P3
Reporter: Tyler Brock Assignee: Adam Midvidy
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on CXX-547 de-inline json.hpp Closed
Epic Link: PM-123

 Comments   
Comment by Githook User [ 03/Mar/15 ]

Author:

{u'username': u'amidvidy', u'name': u'Adam Midvidy', u'email': u'amidvidy@gmail.com'}

Message: CXX-489 add inline macros
Branch: master
https://github.com/mongodb/mongo-cxx-driver/commit/ec72cbca1e2d762456a4752fa1d80cd22823b9a2

Comment by Githook User [ 27/Feb/15 ]

Author:

{u'username': u'amidvidy', u'name': u'Adam Midvidy', u'email': u'amidvidy@gmail.com'}

Message: Revert "CXX-489 add inline macros"

This reverts commit 2e3a39b06db5e5f33190d4f7a72e23670006eba0.
Branch: master
https://github.com/mongodb/mongo-cxx-driver/commit/a2a18b6c4925ccd15a37f33d0414c79eea9eaa34

Comment by Githook User [ 27/Feb/15 ]

Author:

{u'username': u'amidvidy', u'name': u'Adam Midvidy', u'email': u'amidvidy@gmail.com'}

Message: CXX-489 add inline macros
Branch: master
https://github.com/mongodb/mongo-cxx-driver/commit/2eb21a0ad818b0374be5b8688c3d8728ce1c6e6b

Comment by Githook User [ 26/Feb/15 ]

Author:

{u'username': u'amidvidy', u'name': u'Adam Midvidy', u'email': u'amidvidy@gmail.com'}

Message: Revert "CXX-489 add inline macros"

This reverts commit 2e3a39b06db5e5f33190d4f7a72e23670006eba0.
Branch: master
https://github.com/mongodb/mongo-cxx-driver/commit/1b934239778ba0d94d01509bae55ef14d32bfc2b

Comment by Githook User [ 26/Feb/15 ]

Author:

{u'username': u'amidvidy', u'name': u'Adam Midvidy', u'email': u'amidvidy@gmail.com'}

Message: CXX-489 add inline macros
Branch: master
https://github.com/mongodb/mongo-cxx-driver/commit/2e3a39b06db5e5f33190d4f7a72e23670006eba0

Comment by Adam Midvidy [ 26/Feb/15 ]

https://github.com/mongodb/mongo-cxx-driver/pull/259

Comment by Adam Midvidy [ 26/Feb/15 ]

_LIBCPP_INLINE_VISIBILITY - sets visibility to "hidden" and declares "always_inline" to compiler. I think we want to do this. Obligatory Howard Hinnant quote:
"The rationale for the use of always_inline in libc++ is to control the ABI of libc+. In the past I have watched compilers use different heuristics from release to release on making the inline/outline decision. This can cause code to be silently added to and removed from a dylib. With the use of always_inline, I am telling the compiler to never add that code to the libc+.dylib binary. "

Generated at Wed Feb 07 21:59:21 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.