1
0
mirror of https://github.com/nlohmann/json synced 2024-11-25 13:20:05 +00:00
nlohmannjson/tools
Florian Albrechtskirchinger d909f80960
Add versioned, ABI-tagged inline namespace and namespace macros (#3590)
* Add versioned inline namespace

Add a versioned inline namespace to prevent ABI issues when linking code
using multiple library versions.

* Add namespace macros

* Encode ABI information in inline namespace

Add _diag suffix to inline namespace if JSON_DIAGNOSTICS is enabled, and
_ldvcmp suffix if JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON is enabled.

* Move ABI-affecting macros into abi_macros.hpp

* Move std_fs namespace definition into std_fs.hpp

* Remove std_fs namespace from unit test

* Format more files in tests directory

* Add unit tests

* Update documentation

* Fix GDB pretty printer

* fixup! Add namespace macros

* Derive ABI prefix from NLOHMANN_JSON_VERSION_*
2022-07-30 21:59:13 +02:00
..
amalgamate Use REUSE framework (#3546) 2022-07-20 12:38:07 +02:00
cpplint Use REUSE framework (#3546) 2022-07-20 12:38:07 +02:00
gdb_pretty_printer Add versioned, ABI-tagged inline namespace and namespace macros (#3590) 2022-07-30 21:59:13 +02:00
macro_builder Reorganize directories (#3462) 2022-05-01 09:41:50 +02:00
serve_header Add serve_header.py for rapid testing on Compiler Explorer (#3456) 2022-05-01 13:52:52 +02:00