-
Type: Sub-task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
Service Arch 2023-10-02
Significant boost/preprocessor usage was removed in SERVER-81394.
This task is to remove the few stragglers that are also not needed.
- boost/preprocessor/stringize.hpp is used to stringify preprocessor macro values in 2 places _LINE_ and MOZJS_MAJOR_VERSION. This is not really a good enough reason to keep the dependency on Boost.Preprocessor, however, as this can be done with simple code in both places.
- We are also using boost/preprocessor and boost/vmd in platform/visibility.h for a generic system of MONGO_API pseudo-ifdefs that are only used by one library (mutable_bson). We don't really need a generic solution like that. A more boring ifdef/else/endif structure can be applied much more simply, especially since there is only one use case in practice. It's an extremely clever system but it's hard to understand it, brings in a vendored boost library, and it's not needed.