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

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

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Unresolved
    • Icon: Unknown Unknown
    • 3.10.0
    • None
    • None
    • None

    Description

      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.

      Attachments

        Activity

          People

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

            Dates

              Created:
              Updated: