Uploaded image for project: 'C++ Driver'
  1. C++ Driver
  2. CXX-2796

Reintroduce support of C++17 standard library as a polyfill option

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • 3.10.0
    • Affects Version/s: None
    • Component/s: None
    • None

      Scope: Reintroduce support of CXX17 standard library as a polyfill option.

      Motivation:

      CXX-2625 removed logic to support CXX17 native polyfill. Example of removed code:

      #elif defined(BSONCXX_POLY_USE_STD)
      
      #include <string_view>
      
      namespace bsoncxx {
      namespace v_noabi {
      namespace stdx {
      
      using ::std::basic_string_view;
      using ::std::string_view;
      
      }  // namespace stdx
      }  // namespace v_noabi
      

      This ticket proposes adding back the option to use CXX17 native polyfill. This may enable easy removal of the bsoncxx implementation of the polyfill once C++17 is the minimum supported standard.

      A CMake option may not be needed to select between the CXX17 polyfill and the bsoncxx polyfill. If CXX17 is the chosen standard, the CXX17 polyfill may be chosen unconditionally.

            Assignee:
            ezra.chung@mongodb.com Ezra Chung
            Reporter:
            kevin.albertson@mongodb.com Kevin Albertson
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: