From 34029b4b7848ed68c6978eca40d2ebf37ee05e79 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Mon, 4 Sep 2023 09:00:51 +0100 Subject: [PATCH 01/14] Added conversion operators to std::span --- include/etl/span.h | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/include/etl/span.h b/include/etl/span.h index 18e672f4b..a0004c418 100644 --- a/include/etl/span.h +++ b/include/etl/span.h @@ -45,6 +45,10 @@ SOFTWARE. #include "private/dynamic_extent.h" +#if ETL_USING_CPP20 && ETL_USING_STL + #include +#endif + ///\defgroup span span ///\ingroup containers @@ -357,6 +361,16 @@ namespace etl : etl::span(pbegin + offset, pbegin + offset + count); } +#if ETL_USING_CPP20 && ETL_USING_STL + //************************************************************************* + /// Conversion operator to std::span + //************************************************************************* + ETL_NODISCARD ETL_CONSTEXPR operator etl::span() + { + return std::span(pbegin, Extent); + } +#endif + private: pointer pbegin; @@ -366,7 +380,7 @@ namespace etl /// Span - Dynamic Extent //*************************************************************************** template - class span + class span { public: @@ -679,6 +693,16 @@ namespace etl : etl::span(pbegin + offset, pbegin + offset + count); } +#if ETL_USING_CPP20 && ETL_USING_STL + //************************************************************************* + /// Conversion operator to std::span + //************************************************************************* + ETL_NODISCARD ETL_CONSTEXPR operator etl::span() + { + return std::span(pbegin, etl::dynamic_extent); + } +#endif + private: pointer pbegin; From 6f3e6a5db7f5d7b839396784c1acf09f327cbc90 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Mon, 4 Sep 2023 09:15:43 +0100 Subject: [PATCH 02/14] MacOS clang span issue --- .github/workflows/clang-syntax-checks.yml | 331 ---------------------- .github/workflows/gcc-syntax-checks.yml | 331 ---------------------- .github/workflows/gcc.yml | 162 ----------- .github/workflows/msvc.yml | 95 ------- include/etl/span.h | 6 +- 5 files changed, 3 insertions(+), 922 deletions(-) diff --git a/.github/workflows/clang-syntax-checks.yml b/.github/workflows/clang-syntax-checks.yml index be626cb6f..e69de29bb 100644 --- a/.github/workflows/clang-syntax-checks.yml +++ b/.github/workflows/clang-syntax-checks.yml @@ -1,331 +0,0 @@ -name: clang syntax checks -on: - push: - branches: [ master, development ] - pull_request: - branches: [ master ] - -jobs: - build-clang-cpp03-linux-STL: - name: Clang C++03 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++03 - clang --version - make - - build-clang-cpp03-linux-No-STL: - name: Clang C++03 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++03 - clang --version - make - - build-clang-cpp11-linux-STL: - name: Clang C++11 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++11 - clang --version - make - - build-clang-cpp11-linux-No-STL: - name: Clang C++11 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++11 - clang --version - make - - build-clang-cpp11-linux-STL-Force-CPP03: - name: Clang C++11 Linux STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++11 - clang --version - make - - build-clang-cpp11-linux-No-STL-Force-CPP03: - name: Clang C++11 Linux No STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++11 - clang --version - make - - build-clang-cpp14-linux-STL: - name: Clang C++14 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++14 - clang --version - make - - build-clang-cpp14-linux-No-STL: - name: Clang C++14 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++14 - clang --version - make - - build-clang-cpp14-linux-STL-Force-CPP03: - name: Clang C++14 Linux STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++14 - clang --version - make - - build-clang-cpp14-linux-No-STL-Force-CPP03: - name: Clang C++14 Linux No STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++14 - clang --version - make - - build-clang-cpp17-linux-STL: - name: Clang C++17 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++17 - clang --version - make - - build-clang-cpp17-linux-No-STL: - name: Clang C++17 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++17 - clang --version - make - - build-clang-cpp17-linux-STL-Force-CPP03: - name: Clang C++17 Linux STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++17 - clang --version - make - - build-clang-cpp17-linux-No-STL-Force-CPP03: - name: Clang C++17 Linux No STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++17 - clang --version - make - - build-clang-cpp20-linux-STL: - name: Clang C++20 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++20 - clang --version - make - - build-clang-cpp20-linux-No-STL: - name: Clang C++20 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++20 - clang --version - make - - build-clang-cpp20-linux-STL-Force-CPP03: - name: Clang C++20 Linux STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++20 - clang --version - make - - build-clang-cpp20-linux-No-STL-Force-CPP03: - name: Clang C++20 Linux No STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++20 - clang --version - make diff --git a/.github/workflows/gcc-syntax-checks.yml b/.github/workflows/gcc-syntax-checks.yml index 3e5aad947..e69de29bb 100644 --- a/.github/workflows/gcc-syntax-checks.yml +++ b/.github/workflows/gcc-syntax-checks.yml @@ -1,331 +0,0 @@ -name: gcc syntax checks -on: - push: - branches: [ master, development ] - pull_request: - branches: [ master ] - -jobs: - build-gcc-cpp03-linux-STL: - name: GCC C++03 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++03 - gcc --version - make - - build-gcc-cpp03-linux-No-STL: - name: GCC C++03 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++03 - gcc --version - make - - build-gcc-cpp11-linux-STL: - name: GCC C++11 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++11 - gcc --version - make - - build-gcc-cpp11-linux-No-STL: - name: GCC C++11 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++11 - gcc --version - make - - build-gcc-cpp11-linux-STL-Force-CPP03: - name: GCC C++11 Linux STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++11 - gcc --version - make - - build-gcc-cpp11-linux-No-STL-Force-CPP03: - name: GCC C++11 Linux No STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++11 - gcc --version - make - - build-gcc-cpp14-linux-STL: - name: GCC C++14 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++14 - gcc --version - make - - build-gcc-cpp14-linux-No-STL: - name: GCC C++14 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++14 - gcc --version - make - - build-gcc-cpp14-linux-STL-Force-CPP03: - name: GCC C++14 Linux STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++14 - gcc --version - make - - build-gcc-cpp14-linux-No-STL-Force-CPP03: - name: GCC C++14 Linux No STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++14 - gcc --version - make - - build-gcc-cpp17-linux-STL: - name: GCC C++17 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++17 - gcc --version - make - - build-gcc-cpp17-linux-No-STL: - name: GCC C++17 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++17 - gcc --version - make - - build-gcc-cpp17-linux-STL-Force-CPP03: - name: GCC C++17 Linux STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++17 - gcc --version - make - - build-gcc-cpp17-linux-No-STL-Force-CPP03: - name: GCC C++17 Linux No STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++17 - gcc --version - make - - build-gcc-cpp20-linux-STL: - name: GCC C++20 Linux STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++20 - gcc --version - make - - build-gcc-cpp20-linux-No-STL: - name: GCC C++20 Linux No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++20 - gcc --version - make - - build-gcc-cpp20-linux-STL-Force-CPP03: - name: GCC C++20 Linux STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++20 - gcc --version - make - - build-gcc-cpp20-linux-No-STL-Force-CPP03: - name: GCC C++20 Linux No STL Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=gcc - export CXX=g++ - cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++20 - gcc --version - make \ No newline at end of file diff --git a/.github/workflows/gcc.yml b/.github/workflows/gcc.yml index 9ee4b568a..e69de29bb 100644 --- a/.github/workflows/gcc.yml +++ b/.github/workflows/gcc.yml @@ -1,162 +0,0 @@ -name: gcc -on: - push: - branches: [ master, development ] - pull_request: - branches: [ master ] - -jobs: - build-gcc-cpp11-linux-stl: - name: GCC C++11 Linux - STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - git fetch - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - export CC=gcc - export CXX=g++ - cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=11 ./ - gcc --version - make - - - name: Run tests - run: ./test/etl_tests - - build-gcc-cpp14-linux-stl: - name: GCC C++14 Linux - STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - export CC=gcc - export CXX=g++ - cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=14 ./ - gcc --version - make - - - name: Run tests - run: ./test/etl_tests - - build-gcc-cpp17-linux-stl: - name: GCC C++17 Linux - STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - export CC=gcc - export CXX=g++ - cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=17 ./ - gcc --version - make - - - name: Run tests - run: ./test/etl_tests - - build-gcc-cpp20-linux-stl: - name: GCC C++20 Linux - STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - export CC=gcc - export CXX=g++ - cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ - gcc --version - make - - - name: Run tests - run: ./test/etl_tests - - build-gcc-cpp20-linux-no-stl: - name: GCC C++20 Linux - No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - export CC=gcc - export CXX=g++ - cmake -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ - gcc --version - make - - - name: Run tests - run: ./test/etl_tests - - build-gcc-cpp20-linux-stl-force-cpp03: - name: GCC C++20 Linux - STL - Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - export CC=gcc - export CXX=g++ - cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./ - gcc --version - make - - - name: Run tests - run: ./test/etl_tests - - build-gcc-cpp20-linux-no-stl-force-cpp03: - name: GCC C++20 Linux - No STL - Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - export CC=gcc - export CXX=g++ - cmake -DBUILD_TESTS=ON -DNO_STL=OON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./ - gcc --version - make - - - name: Run tests - run: ./test/etl_tests \ No newline at end of file diff --git a/.github/workflows/msvc.yml b/.github/workflows/msvc.yml index cdeff8358..e69de29bb 100644 --- a/.github/workflows/msvc.yml +++ b/.github/workflows/msvc.yml @@ -1,95 +0,0 @@ -name: msvc -on: - push: - branches: [ master, development ] - pull_request: - branches: [ master ] - -jobs: - build-windows-msvc-stl: - name: Windows - STL - runs-on: [windows-2022] - - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - submodules: recursive - - - name: Add msbuild to PATH - uses: microsoft/setup-msbuild@v1.0.2 - - - name: Build - run: | - cmake -G "Visual Studio 17 2022" -AWin32 -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ - MSBuild.exe -version - MSBuild.exe .\etl.sln - - - name: Run tests - run: test/Debug/etl_tests.exe - - build-windows-msvc-no-stl: - name: Windows - No STL - runs-on: [windows-2022] - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - submodules: recursive - - - name: Add msbuild to PATH - uses: microsoft/setup-msbuild@v1.0.2 - - - name: Build - run: | - cmake -G "Visual Studio 17 2022" -AWin32 -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=17 ./ - MSBuild.exe -version - MSBuild.exe .\etl.sln - - - name: Run tests - run: test/Debug/etl_tests.exe - - build-windows-msvc-stl-force-cpp03: - name: Windows - STL - Force C++03 - runs-on: [windows-2022] - - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - submodules: recursive - - - name: Add msbuild to PATH - uses: microsoft/setup-msbuild@v1.0.2 - - - name: Build - run: | - cmake -G "Visual Studio 17 2022" -AWin32 -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=17 ./ - MSBuild.exe -version - MSBuild.exe .\etl.sln - - - name: Run tests - run: test/Debug/etl_tests.exe - - build-windows-msvc-no-stl-force-cpp03: - name: Windows - No STL - Force C++03 - runs-on: [windows-2022] - - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - submodules: recursive - - - name: Add msbuild to PATH - uses: microsoft/setup-msbuild@v1.0.2 - - - name: Build - run: | - cmake -G "Visual Studio 17 2022" -AWin32 -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=17 ./ - MSBuild.exe -version - MSBuild.exe .\etl.sln - - - name: Run tests - run: test/Debug/etl_tests.exe - diff --git a/include/etl/span.h b/include/etl/span.h index a0004c418..c8ce27e17 100644 --- a/include/etl/span.h +++ b/include/etl/span.h @@ -365,7 +365,7 @@ namespace etl //************************************************************************* /// Conversion operator to std::span //************************************************************************* - ETL_NODISCARD ETL_CONSTEXPR operator etl::span() + ETL_NODISCARD ETL_CONSTEXPR operator std::span() { return std::span(pbegin, Extent); } @@ -697,9 +697,9 @@ namespace etl //************************************************************************* /// Conversion operator to std::span //************************************************************************* - ETL_NODISCARD ETL_CONSTEXPR operator etl::span() + ETL_NODISCARD ETL_CONSTEXPR operator etl::span() { - return std::span(pbegin, etl::dynamic_extent); + return std::span(pbegin, std::dynamic_extent); } #endif From e3cb47836976cf249d3997baa4a057b0a4ef7ba5 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Mon, 4 Sep 2023 09:18:16 +0100 Subject: [PATCH 03/14] MacOS clang span issue --- .github/workflows/clang-syntax-checks.yml | 7 + .github/workflows/clang.yml | 154 ---------------------- .github/workflows/gcc-syntax-checks.yml | 6 + .github/workflows/gcc.yml | 6 + .github/workflows/msvc.yml | 6 + 5 files changed, 25 insertions(+), 154 deletions(-) diff --git a/.github/workflows/clang-syntax-checks.yml b/.github/workflows/clang-syntax-checks.yml index e69de29bb..f44974d20 100644 --- a/.github/workflows/clang-syntax-checks.yml +++ b/.github/workflows/clang-syntax-checks.yml @@ -0,0 +1,7 @@ +name: clang syntax checks +on: + push: + branches: [ master, development ] + pull_request: + branches: [ master ] + diff --git a/.github/workflows/clang.yml b/.github/workflows/clang.yml index de243e407..c456143d7 100644 --- a/.github/workflows/clang.yml +++ b/.github/workflows/clang.yml @@ -6,160 +6,6 @@ on: branches: [ master ] jobs: - build-clang-cpp11-linux-stl: - name: Clang C++11 Linux - STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=11 ./ - clang --version - make - - - name: Run tests - run: ./test/etl_tests - - build-clang-cpp14-linux-stl: - name: Clang C++14 Linux - STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=14 ./ - clang --version - make - - - name: Run tests - run: ./test/etl_tests - - build-clang-cpp17-linux-stl: - name: Clang C++17 Linux - STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=17 ./ - clang --version - make - - - name: Run tests - run: ./test/etl_tests - - build-clang-cpp20-linux-stl: - name: Clang C++20 Linux - STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ - clang --version - make - - - name: Run tests - run: ./test/etl_tests - - build-clang-cpp20-linux-no-stl: - name: Clang C++20 Linux - No STL - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - cmake -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ - clang --version - make - - - name: Run tests - run: ./test/etl_tests - - build-clang-cpp20-linux-stl-force-cpp03: - name: Clang C++20 Linux - STL - Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./ - clang --version - make - - - name: Run tests - run: ./test/etl_tests - - build-clang-cpp20-linux-no-stl-force-cpp03: - name: Clang C++20 Linux - No STL - Force C++03 - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-22.04] - - steps: - - uses: actions/checkout@v3 - - - name: Build - run: | - export CC=clang - export CXX=clang++ - export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 - cmake -D BUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./ - clang --version - make - - - name: Run tests - run: ./test/etl_tests - build-clang-cpp20-osx-stl: name: Clang C++20 OSX - STL runs-on: ${{ matrix.os }} diff --git a/.github/workflows/gcc-syntax-checks.yml b/.github/workflows/gcc-syntax-checks.yml index e69de29bb..d15b7f193 100644 --- a/.github/workflows/gcc-syntax-checks.yml +++ b/.github/workflows/gcc-syntax-checks.yml @@ -0,0 +1,6 @@ +name: gcc syntax checks +on: + push: + branches: [ master, development ] + pull_request: + branches: [ master ] diff --git a/.github/workflows/gcc.yml b/.github/workflows/gcc.yml index e69de29bb..94a1f69fc 100644 --- a/.github/workflows/gcc.yml +++ b/.github/workflows/gcc.yml @@ -0,0 +1,6 @@ +name: gcc +on: + push: + branches: [ master, development ] + pull_request: + branches: [ master ] diff --git a/.github/workflows/msvc.yml b/.github/workflows/msvc.yml index e69de29bb..8b0c29e36 100644 --- a/.github/workflows/msvc.yml +++ b/.github/workflows/msvc.yml @@ -0,0 +1,6 @@ +name: msvc +on: + push: + branches: [ master, development ] + pull_request: + branches: [ master ] From 5db82de47e40886889c3609392b3e1fd281482a3 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Mon, 4 Sep 2023 09:21:17 +0100 Subject: [PATCH 04/14] MacOS clang span issue --- .github/workflows/clang-syntax-checks.yml | 324 +++++++++++++++++++++ .github/workflows/clang.yml | 154 ++++++++++ .github/workflows/gcc-syntax-checks.yml | 325 ++++++++++++++++++++++ .github/workflows/gcc.yml | 156 +++++++++++ .github/workflows/msvc.yml | 89 ++++++ 5 files changed, 1048 insertions(+) diff --git a/.github/workflows/clang-syntax-checks.yml b/.github/workflows/clang-syntax-checks.yml index f44974d20..be626cb6f 100644 --- a/.github/workflows/clang-syntax-checks.yml +++ b/.github/workflows/clang-syntax-checks.yml @@ -5,3 +5,327 @@ on: pull_request: branches: [ master ] +jobs: + build-clang-cpp03-linux-STL: + name: Clang C++03 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++03 + clang --version + make + + build-clang-cpp03-linux-No-STL: + name: Clang C++03 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++03 + clang --version + make + + build-clang-cpp11-linux-STL: + name: Clang C++11 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++11 + clang --version + make + + build-clang-cpp11-linux-No-STL: + name: Clang C++11 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++11 + clang --version + make + + build-clang-cpp11-linux-STL-Force-CPP03: + name: Clang C++11 Linux STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++11 + clang --version + make + + build-clang-cpp11-linux-No-STL-Force-CPP03: + name: Clang C++11 Linux No STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++11 + clang --version + make + + build-clang-cpp14-linux-STL: + name: Clang C++14 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++14 + clang --version + make + + build-clang-cpp14-linux-No-STL: + name: Clang C++14 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++14 + clang --version + make + + build-clang-cpp14-linux-STL-Force-CPP03: + name: Clang C++14 Linux STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++14 + clang --version + make + + build-clang-cpp14-linux-No-STL-Force-CPP03: + name: Clang C++14 Linux No STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++14 + clang --version + make + + build-clang-cpp17-linux-STL: + name: Clang C++17 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++17 + clang --version + make + + build-clang-cpp17-linux-No-STL: + name: Clang C++17 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++17 + clang --version + make + + build-clang-cpp17-linux-STL-Force-CPP03: + name: Clang C++17 Linux STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++17 + clang --version + make + + build-clang-cpp17-linux-No-STL-Force-CPP03: + name: Clang C++17 Linux No STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++17 + clang --version + make + + build-clang-cpp20-linux-STL: + name: Clang C++20 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++20 + clang --version + make + + build-clang-cpp20-linux-No-STL: + name: Clang C++20 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++20 + clang --version + make + + build-clang-cpp20-linux-STL-Force-CPP03: + name: Clang C++20 Linux STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++20 + clang --version + make + + build-clang-cpp20-linux-No-STL-Force-CPP03: + name: Clang C++20 Linux No STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++20 + clang --version + make diff --git a/.github/workflows/clang.yml b/.github/workflows/clang.yml index c456143d7..de243e407 100644 --- a/.github/workflows/clang.yml +++ b/.github/workflows/clang.yml @@ -6,6 +6,160 @@ on: branches: [ master ] jobs: + build-clang-cpp11-linux-stl: + name: Clang C++11 Linux - STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=11 ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-cpp14-linux-stl: + name: Clang C++14 Linux - STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=14 ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-cpp17-linux-stl: + name: Clang C++17 Linux - STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=17 ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-cpp20-linux-stl: + name: Clang C++20 Linux - STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-cpp20-linux-no-stl: + name: Clang C++20 Linux - No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + cmake -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-cpp20-linux-stl-force-cpp03: + name: Clang C++20 Linux - STL - Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + + build-clang-cpp20-linux-no-stl-force-cpp03: + name: Clang C++20 Linux - No STL - Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=clang + export CXX=clang++ + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + cmake -D BUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./ + clang --version + make + + - name: Run tests + run: ./test/etl_tests + build-clang-cpp20-osx-stl: name: Clang C++20 OSX - STL runs-on: ${{ matrix.os }} diff --git a/.github/workflows/gcc-syntax-checks.yml b/.github/workflows/gcc-syntax-checks.yml index d15b7f193..3e5aad947 100644 --- a/.github/workflows/gcc-syntax-checks.yml +++ b/.github/workflows/gcc-syntax-checks.yml @@ -4,3 +4,328 @@ on: branches: [ master, development ] pull_request: branches: [ master ] + +jobs: + build-gcc-cpp03-linux-STL: + name: GCC C++03 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++03 + gcc --version + make + + build-gcc-cpp03-linux-No-STL: + name: GCC C++03 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++03 + gcc --version + make + + build-gcc-cpp11-linux-STL: + name: GCC C++11 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++11 + gcc --version + make + + build-gcc-cpp11-linux-No-STL: + name: GCC C++11 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++11 + gcc --version + make + + build-gcc-cpp11-linux-STL-Force-CPP03: + name: GCC C++11 Linux STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++11 + gcc --version + make + + build-gcc-cpp11-linux-No-STL-Force-CPP03: + name: GCC C++11 Linux No STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++11 + gcc --version + make + + build-gcc-cpp14-linux-STL: + name: GCC C++14 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++14 + gcc --version + make + + build-gcc-cpp14-linux-No-STL: + name: GCC C++14 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++14 + gcc --version + make + + build-gcc-cpp14-linux-STL-Force-CPP03: + name: GCC C++14 Linux STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++14 + gcc --version + make + + build-gcc-cpp14-linux-No-STL-Force-CPP03: + name: GCC C++14 Linux No STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++14 + gcc --version + make + + build-gcc-cpp17-linux-STL: + name: GCC C++17 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++17 + gcc --version + make + + build-gcc-cpp17-linux-No-STL: + name: GCC C++17 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++17 + gcc --version + make + + build-gcc-cpp17-linux-STL-Force-CPP03: + name: GCC C++17 Linux STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++17 + gcc --version + make + + build-gcc-cpp17-linux-No-STL-Force-CPP03: + name: GCC C++17 Linux No STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++17 + gcc --version + make + + build-gcc-cpp20-linux-STL: + name: GCC C++20 Linux STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++20 + gcc --version + make + + build-gcc-cpp20-linux-No-STL: + name: GCC C++20 Linux No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=OFF ./test/syntax_check/c++20 + gcc --version + make + + build-gcc-cpp20-linux-STL-Force-CPP03: + name: GCC C++20 Linux STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++20 + gcc --version + make + + build-gcc-cpp20-linux-No-STL-Force-CPP03: + name: GCC C++20 Linux No STL Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export CC=gcc + export CXX=g++ + cmake -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03_IMPLEMENTATION=ON ./test/syntax_check/c++20 + gcc --version + make \ No newline at end of file diff --git a/.github/workflows/gcc.yml b/.github/workflows/gcc.yml index 94a1f69fc..9ee4b568a 100644 --- a/.github/workflows/gcc.yml +++ b/.github/workflows/gcc.yml @@ -4,3 +4,159 @@ on: branches: [ master, development ] pull_request: branches: [ master ] + +jobs: + build-gcc-cpp11-linux-stl: + name: GCC C++11 Linux - STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + git fetch + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + export CC=gcc + export CXX=g++ + cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=11 ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests + + build-gcc-cpp14-linux-stl: + name: GCC C++14 Linux - STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + export CC=gcc + export CXX=g++ + cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=14 ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests + + build-gcc-cpp17-linux-stl: + name: GCC C++17 Linux - STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + export CC=gcc + export CXX=g++ + cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=17 ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests + + build-gcc-cpp20-linux-stl: + name: GCC C++20 Linux - STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + export CC=gcc + export CXX=g++ + cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests + + build-gcc-cpp20-linux-no-stl: + name: GCC C++20 Linux - No STL + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + export CC=gcc + export CXX=g++ + cmake -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests + + build-gcc-cpp20-linux-stl-force-cpp03: + name: GCC C++20 Linux - STL - Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + export CC=gcc + export CXX=g++ + cmake -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests + + build-gcc-cpp20-linux-no-stl-force-cpp03: + name: GCC C++20 Linux - No STL - Force C++03 + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-22.04] + + steps: + - uses: actions/checkout@v3 + + - name: Build + run: | + export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0 + export CC=gcc + export CXX=g++ + cmake -DBUILD_TESTS=ON -DNO_STL=OON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./ + gcc --version + make + + - name: Run tests + run: ./test/etl_tests \ No newline at end of file diff --git a/.github/workflows/msvc.yml b/.github/workflows/msvc.yml index 8b0c29e36..cdeff8358 100644 --- a/.github/workflows/msvc.yml +++ b/.github/workflows/msvc.yml @@ -4,3 +4,92 @@ on: branches: [ master, development ] pull_request: branches: [ master ] + +jobs: + build-windows-msvc-stl: + name: Windows - STL + runs-on: [windows-2022] + + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@v1.0.2 + + - name: Build + run: | + cmake -G "Visual Studio 17 2022" -AWin32 -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./ + MSBuild.exe -version + MSBuild.exe .\etl.sln + + - name: Run tests + run: test/Debug/etl_tests.exe + + build-windows-msvc-no-stl: + name: Windows - No STL + runs-on: [windows-2022] + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@v1.0.2 + + - name: Build + run: | + cmake -G "Visual Studio 17 2022" -AWin32 -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=17 ./ + MSBuild.exe -version + MSBuild.exe .\etl.sln + + - name: Run tests + run: test/Debug/etl_tests.exe + + build-windows-msvc-stl-force-cpp03: + name: Windows - STL - Force C++03 + runs-on: [windows-2022] + + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@v1.0.2 + + - name: Build + run: | + cmake -G "Visual Studio 17 2022" -AWin32 -DBUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=17 ./ + MSBuild.exe -version + MSBuild.exe .\etl.sln + + - name: Run tests + run: test/Debug/etl_tests.exe + + build-windows-msvc-no-stl-force-cpp03: + name: Windows - No STL - Force C++03 + runs-on: [windows-2022] + + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Add msbuild to PATH + uses: microsoft/setup-msbuild@v1.0.2 + + - name: Build + run: | + cmake -G "Visual Studio 17 2022" -AWin32 -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=17 ./ + MSBuild.exe -version + MSBuild.exe .\etl.sln + + - name: Run tests + run: test/Debug/etl_tests.exe + From fc63a51fc6f3ce4071493d2cd976ad09ef2be8c1 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Mon, 4 Sep 2023 09:42:53 +0100 Subject: [PATCH 05/14] MacOS clang span issue --- test/test_span_dynamic_extent.cpp | 2 +- test/test_span_fixed_extent.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/test_span_dynamic_extent.cpp b/test/test_span_dynamic_extent.cpp index 05ae98d45..0e307a4d6 100644 --- a/test/test_span_dynamic_extent.cpp +++ b/test/test_span_dynamic_extent.cpp @@ -103,7 +103,7 @@ namespace TEST(test_construct_std_span_from_etl_span) { View view(etldata); - StdView stdview(view); + StdView stdview = StdView(view); CHECK_EQUAL(stdview.size(), view.size()); CHECK_EQUAL(stdview.size(), view.size()); diff --git a/test/test_span_fixed_extent.cpp b/test/test_span_fixed_extent.cpp index a334f7290..de810dc12 100644 --- a/test/test_span_fixed_extent.cpp +++ b/test/test_span_fixed_extent.cpp @@ -104,7 +104,7 @@ namespace TEST(test_construct_std_span_from_etl_span) { View view(etldata); - StdView stdview(view); + StdView stdview = StdView(view); CHECK_EQUAL(stdview.size(), view.size()); CHECK_EQUAL(stdview.size(), view.size()); From 929506760c31037c2c23f9b3eb55100e22ff8911 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Mon, 4 Sep 2023 10:39:42 +0100 Subject: [PATCH 06/14] MacOS clang span issue --- include/etl/span.h | 20 -------------------- test/test_span_dynamic_extent.cpp | 13 ------------- test/test_span_fixed_extent.cpp | 13 ------------- 3 files changed, 46 deletions(-) diff --git a/include/etl/span.h b/include/etl/span.h index c8ce27e17..797e35e5e 100644 --- a/include/etl/span.h +++ b/include/etl/span.h @@ -361,16 +361,6 @@ namespace etl : etl::span(pbegin + offset, pbegin + offset + count); } -#if ETL_USING_CPP20 && ETL_USING_STL - //************************************************************************* - /// Conversion operator to std::span - //************************************************************************* - ETL_NODISCARD ETL_CONSTEXPR operator std::span() - { - return std::span(pbegin, Extent); - } -#endif - private: pointer pbegin; @@ -693,16 +683,6 @@ namespace etl : etl::span(pbegin + offset, pbegin + offset + count); } -#if ETL_USING_CPP20 && ETL_USING_STL - //************************************************************************* - /// Conversion operator to std::span - //************************************************************************* - ETL_NODISCARD ETL_CONSTEXPR operator etl::span() - { - return std::span(pbegin, std::dynamic_extent); - } -#endif - private: pointer pbegin; diff --git a/test/test_span_dynamic_extent.cpp b/test/test_span_dynamic_extent.cpp index 0e307a4d6..d9bce00b7 100644 --- a/test/test_span_dynamic_extent.cpp +++ b/test/test_span_dynamic_extent.cpp @@ -98,19 +98,6 @@ namespace bool isEqual = std::equal(view.begin(), view.end(), stdview.begin()); CHECK(isEqual); } - - //************************************************************************* - TEST(test_construct_std_span_from_etl_span) - { - View view(etldata); - StdView stdview = StdView(view); - - CHECK_EQUAL(stdview.size(), view.size()); - CHECK_EQUAL(stdview.size(), view.size()); - - bool isEqual = std::equal(view.begin(), view.end(), stdview.begin()); - CHECK(isEqual); - } #endif //************************************************************************* diff --git a/test/test_span_fixed_extent.cpp b/test/test_span_fixed_extent.cpp index de810dc12..001086bb2 100644 --- a/test/test_span_fixed_extent.cpp +++ b/test/test_span_fixed_extent.cpp @@ -99,19 +99,6 @@ namespace bool isEqual = std::equal(view.begin(), view.end(), stdview.begin()); CHECK(isEqual); } - - //************************************************************************* - TEST(test_construct_std_span_from_etl_span) - { - View view(etldata); - StdView stdview = StdView(view); - - CHECK_EQUAL(stdview.size(), view.size()); - CHECK_EQUAL(stdview.size(), view.size()); - - bool isEqual = std::equal(view.begin(), view.end(), stdview.begin()); - CHECK(isEqual); - } #endif //************************************************************************* From 89306df9602f09ab8b476107f58562f60ce07248 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Mon, 4 Sep 2023 12:55:21 +0100 Subject: [PATCH 07/14] Updated version and release notes --- arduino/library-arduino.json | 2 +- arduino/library-arduino.properties | 2 +- include/etl/version.h | 2 +- library.json | 2 +- library.properties | 2 +- support/Release notes.txt | 8 ++++++++ version.txt | 2 +- 7 files changed, 14 insertions(+), 6 deletions(-) diff --git a/arduino/library-arduino.json b/arduino/library-arduino.json index 79a1e7608..3264a7d2d 100644 --- a/arduino/library-arduino.json +++ b/arduino/library-arduino.json @@ -1,6 +1,6 @@ { "name": "Embedded Template Library - Arduino", - "version": "20.38.1", + "version": "20.38.2", "authors": { "name": "John Wellbelove", "email": "john.wellbelove@etlcpp.com" diff --git a/arduino/library-arduino.properties b/arduino/library-arduino.properties index e910129a3..02282cd27 100644 --- a/arduino/library-arduino.properties +++ b/arduino/library-arduino.properties @@ -1,5 +1,5 @@ name=Embedded Template Library - Arduino -version=20.38.1 +version=20.38.2 author= John Wellbelove maintainer=John Wellbelove license=MIT diff --git a/include/etl/version.h b/include/etl/version.h index a1044046e..ddf86e9c6 100644 --- a/include/etl/version.h +++ b/include/etl/version.h @@ -40,7 +40,7 @@ SOFTWARE. #define ETL_VERSION_MAJOR 20 #define ETL_VERSION_MINOR 38 -#define ETL_VERSION_PATCH 1 +#define ETL_VERSION_PATCH 2 #define ETL_VERSION ETL_STRING(ETL_VERSION_MAJOR) "." ETL_STRING(ETL_VERSION_MINOR) "." ETL_STRING(ETL_VERSION_PATCH) #define ETL_VERSION_W ETL_WIDE_STRING(ETL_VERSION_MAJOR) L"." ETL_WIDE_STRING(ETL_VERSION_MINOR) L"." ETL_WIDE_STRING(ETL_VERSION_PATCH) diff --git a/library.json b/library.json index cc15fc5e0..d4f89481c 100644 --- a/library.json +++ b/library.json @@ -1,6 +1,6 @@ { "name": "Embedded Template Library", - "version": "20.38.1", + "version": "20.38.2", "authors": { "name": "John Wellbelove", "email": "john.wellbelove@etlcpp.com" diff --git a/library.properties b/library.properties index e14605652..144d8b768 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Embedded Template Library -version=20.38.1 +version=20.38.2 author= John Wellbelove maintainer=John Wellbelove license=MIT diff --git a/support/Release notes.txt b/support/Release notes.txt index 6674e5360..b6345ff86 100644 --- a/support/Release notes.txt +++ b/support/Release notes.txt @@ -1,3 +1,11 @@ +=============================================================================== +20.38.2 + +#753 IAR's overload resolution struggles with etl::span::span(etl::array&) +#754 ambiguous etl::bit_stream_reader::bit_stream_reader() for some etl::span +#755 warning about constexpr in array.h +Re-enabled bit_stream_writer tests + =============================================================================== 20.38.1 #749 Code change causes warning with armcc compiler diff --git a/version.txt b/version.txt index 5a805e554..ba312e9c7 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -20.38.1 +20.38.2 From 9705ee233b7c1128dc80c474109826ca49786fd0 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Fri, 8 Sep 2023 11:26:25 +0100 Subject: [PATCH 08/14] Possible fix for #756 --- include/etl/parameter_pack.h | 2 +- .../determine_compiler_language_support.h | 28 ++++++++++--------- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/include/etl/parameter_pack.h b/include/etl/parameter_pack.h index 6883cdbb8..a5e5ee7f2 100644 --- a/include/etl/parameter_pack.h +++ b/include/etl/parameter_pack.h @@ -134,7 +134,7 @@ namespace etl inline constexpr size_t parameter_pack_v = etl::parameter_pack::template index_of_type::value; #endif -#if ETL_USING_CPP14 +#if ETL_USING_CPP17 && (!ETL_USING_GCC_COMPILER || (__GNUC__ > 7)) //*********************************** template template diff --git a/include/etl/profiles/determine_compiler_language_support.h b/include/etl/profiles/determine_compiler_language_support.h index 9345ed9ba..e8a004411 100644 --- a/include/etl/profiles/determine_compiler_language_support.h +++ b/include/etl/profiles/determine_compiler_language_support.h @@ -179,22 +179,24 @@ SOFTWARE. #endif // Language standard -#if ETL_USING_CPP23 - #define ETL_LANGUAGE_STANDARD 23 -#elif ETL_USING_CPP20 - #define ETL_LANGUAGE_STANDARD 20 -#elif ETL_USING_CPP17 - #define ETL_LANGUAGE_STANDARD 17 -#elif ETL_USING_CPP14 - #define ETL_LANGUAGE_STANDARD 14 -#elif ETL_USING_CPP11 - #define ETL_LANGUAGE_STANDARD 11 -#else - #define ETL_LANGUAGE_STANDARD 3 +#if !defined(ETL_LANGUAGE_STANDARD) + #if ETL_USING_CPP23 + #define ETL_LANGUAGE_STANDARD 23 + #elif ETL_USING_CPP20 + #define ETL_LANGUAGE_STANDARD 20 + #elif ETL_USING_CPP17 + #define ETL_LANGUAGE_STANDARD 17 + #elif ETL_USING_CPP14 + #define ETL_LANGUAGE_STANDARD 14 + #elif ETL_USING_CPP11 + #define ETL_LANGUAGE_STANDARD 11 + #else + #define ETL_LANGUAGE_STANDARD 3 + #endif #endif // NAN not defined or Rowley CrossWorks -#if !defined(NAN) || defined(__CROSSWORKS_ARM) || defined(ETL_COMPILER_ARM5) || defined(ARDUINO) +#if !defined(ETL_NO_CPP_NAN_SUPPORT) && (!defined(NAN) || defined(__CROSSWORKS_ARM) || defined(ETL_COMPILER_ARM5) || defined(ARDUINO)) #define ETL_NO_CPP_NAN_SUPPORT #endif From ba5619555c811bb68012affae0a27d9528ab1964 Mon Sep 17 00:00:00 2001 From: Soma Veszelovszki Date: Tue, 12 Sep 2023 12:03:19 +0200 Subject: [PATCH 09/14] Fixed: move assignment not working for non-empty containers (#759) --- include/etl/multiset.h | 2 ++ include/etl/priority_queue.h | 2 ++ include/etl/set.h | 4 ++++ test/test_deque.cpp | 4 ++++ test/test_forward_list.cpp | 2 ++ test/test_indirect_vector.cpp | 2 ++ test/test_indirect_vector_external_buffer.cpp | 4 ++++ test/test_list.cpp | 2 ++ test/test_map.cpp | 1 + test/test_multimap.cpp | 1 + test/test_multiset.cpp | 1 + test/test_priority_queue.cpp | 1 + test/test_set.cpp | 1 + test/test_unordered_map.cpp | 1 + test/test_unordered_multimap.cpp | 1 + test/test_unordered_multiset.cpp | 1 + test/test_unordered_set.cpp | 1 + test/test_vector.cpp | 1 + test/test_vector_pointer.cpp | 1 + 19 files changed, 33 insertions(+) diff --git a/include/etl/multiset.h b/include/etl/multiset.h index 210458178..d2c35f680 100644 --- a/include/etl/multiset.h +++ b/include/etl/multiset.h @@ -1448,6 +1448,8 @@ namespace etl // Skip if doing self assignment if (this != &rhs) { + clear(); + typename etl::imultiset::iterator from = rhs.begin(); while (from != rhs.end()) diff --git a/include/etl/priority_queue.h b/include/etl/priority_queue.h index ede0516b9..a920d7535 100644 --- a/include/etl/priority_queue.h +++ b/include/etl/priority_queue.h @@ -399,6 +399,7 @@ namespace etl { if (&rhs != this) { + clear(); move(etl::move(rhs)); } @@ -535,6 +536,7 @@ namespace etl { if (&rhs != this) { + etl::ipriority_queue::clear(); etl::ipriority_queue::move(etl::move(rhs)); } diff --git a/include/etl/set.h b/include/etl/set.h index 12aa446fb..6825d78c1 100644 --- a/include/etl/set.h +++ b/include/etl/set.h @@ -815,6 +815,8 @@ namespace etl // Skip if doing self assignment if (this != &rhs) { + this->clear(); + typename etl::iset::iterator from = rhs.begin(); while (from != rhs.end()) @@ -2603,6 +2605,8 @@ namespace etl // Skip if doing self assignment if (this != &rhs) { + this->clear(); + typename etl::iset::iterator from = rhs.begin(); while (from != rhs.end()) diff --git a/test/test_deque.cpp b/test/test_deque.cpp index 5660bb02b..159a60109 100644 --- a/test/test_deque.cpp +++ b/test/test_deque.cpp @@ -254,6 +254,7 @@ namespace std::unique_ptr p2(new uint32_t(2U)); std::unique_ptr p3(new uint32_t(3U)); std::unique_ptr p4(new uint32_t(4U)); + std::unique_ptr p5(new uint32_t(5U)); Data deque1; deque1.push_back(std::move(p1)); @@ -262,6 +263,7 @@ namespace deque1.push_back(std::move(p4)); Data deque2; + deque2.push_back(std::move(p5)); deque2 = std::move(deque1); CHECK_EQUAL(4U, deque2.size()); @@ -298,6 +300,7 @@ namespace std::unique_ptr p2(new uint32_t(2U)); std::unique_ptr p3(new uint32_t(3U)); std::unique_ptr p4(new uint32_t(4U)); + std::unique_ptr p5(new uint32_t(5U)); Data deque1; deque1.push_back(std::move(p1)); @@ -306,6 +309,7 @@ namespace deque1.push_back(std::move(p4)); Data deque2; + deque2.push_back(std::move(p5)); IData& ideque1 = deque1; IData& ideque2 = deque2; diff --git a/test/test_forward_list.cpp b/test/test_forward_list.cpp index 8d9f85a3a..56be536d6 100644 --- a/test/test_forward_list.cpp +++ b/test/test_forward_list.cpp @@ -241,6 +241,7 @@ namespace data1.push_front(std::move(p4)); DataM data2; + data2.push_front(ItemM(5U)); data2 = std::move(data1); CHECK_EQUAL(0U, data1.size()); @@ -269,6 +270,7 @@ namespace data1.push_front(std::move(p4)); DataM data2; + data2.push_front(ItemM(5U)); IDataM& idata1 = data1; IDataM& idata2 = data2; diff --git a/test/test_indirect_vector.cpp b/test/test_indirect_vector.cpp index 7bc5c1de1..597d81b50 100644 --- a/test/test_indirect_vector.cpp +++ b/test/test_indirect_vector.cpp @@ -312,6 +312,7 @@ namespace std::unique_ptr p2(new uint32_t(2U)); std::unique_ptr p3(new uint32_t(3U)); std::unique_ptr p4(new uint32_t(4U)); + std::unique_ptr p5(new uint32_t(5U)); Data data1; data1.push_back(std::move(p1)); @@ -325,6 +326,7 @@ namespace CHECK(!bool(p4)); Data data2; + data2.push_back(std::move(p5)); data2 = std::move(data1); CHECK_EQUAL(0U, data1.size()); diff --git a/test/test_indirect_vector_external_buffer.cpp b/test/test_indirect_vector_external_buffer.cpp index 5ace1efb0..1172434b6 100644 --- a/test/test_indirect_vector_external_buffer.cpp +++ b/test/test_indirect_vector_external_buffer.cpp @@ -364,6 +364,7 @@ namespace std::unique_ptr p2(new uint32_t(2U)); std::unique_ptr p3(new uint32_t(3U)); std::unique_ptr p4(new uint32_t(4U)); + std::unique_ptr p5(new uint32_t(5U)); Data data1(lookup1, pool1); data1.push_back(std::move(p1)); @@ -377,6 +378,7 @@ namespace CHECK(!bool(p4)); Data data2(lookup2, pool2); + data2.push_back(std::move(p5)); data2 = std::move(data1); CHECK_EQUAL(0U, data1.size()); @@ -428,6 +430,7 @@ namespace std::unique_ptr p2(new uint32_t(2U)); std::unique_ptr p3(new uint32_t(3U)); std::unique_ptr p4(new uint32_t(4U)); + std::unique_ptr p5(new uint32_t(5U)); Data data1(lookup1, pool1); data1.push_back(std::move(p1)); @@ -436,6 +439,7 @@ namespace data1.push_back(std::move(p4)); Data data2(lookup2, pool2); + data2.push_back(std::move(p5)); IData& idata1 = data1; IData& idata2 = data2; diff --git a/test/test_list.cpp b/test/test_list.cpp index 45be56317..ac01fb429 100644 --- a/test/test_list.cpp +++ b/test/test_list.cpp @@ -1228,6 +1228,7 @@ namespace data1.push_back(std::move(p4)); DataM data2; + data2.push_back(ItemM(5U)); data2 = std::move(data1); CHECK_EQUAL(0U, data1.size()); @@ -1275,6 +1276,7 @@ namespace data1.push_back(std::move(p4)); DataM data2; + data2.push_back(ItemM(5U)); IDataM& idata1 = data1; IDataM& idata2 = data2; diff --git a/test/test_map.cpp b/test/test_map.cpp index 4845e52b8..a105cee2f 100644 --- a/test/test_map.cpp +++ b/test/test_map.cpp @@ -389,6 +389,7 @@ namespace data1.insert(DataM::value_type(std::string("3"), etl::move(d3))); data1.insert(DataM::value_type(std::string("4"), ItemM(4))); + data2.insert(DataM::value_type(std::string("5"), ItemM(5))); data2 = std::move(data1); CHECK(1 == data2.at("1").value); diff --git a/test/test_multimap.cpp b/test/test_multimap.cpp index c44ffb1c8..9e91d2e49 100644 --- a/test/test_multimap.cpp +++ b/test/test_multimap.cpp @@ -388,6 +388,7 @@ namespace data1.insert(DataM::value_type(std::string("3"), etl::move(d3))); data1.insert(DataM::value_type(std::string("4"), ItemM(4))); + data2.insert(DataM::value_type(std::string("5"), ItemM(5))); data2 = std::move(data1); CHECK(1 == data2.find("1")->second.value); diff --git a/test/test_multiset.cpp b/test/test_multiset.cpp index 7d197cdeb..f966a696d 100644 --- a/test/test_multiset.cpp +++ b/test/test_multiset.cpp @@ -391,6 +391,7 @@ namespace data1.insert(ItemM(4)); DataM data2; + data2.insert(ItemM(5)); data2 = std::move(data1); diff --git a/test/test_priority_queue.cpp b/test/test_priority_queue.cpp index c8e5218fa..8cc2c3171 100644 --- a/test/test_priority_queue.cpp +++ b/test/test_priority_queue.cpp @@ -527,6 +527,7 @@ namespace priority_queue.push(std::move(b)); etl::priority_queue priority_queue2; + priority_queue2.push(ItemM("E")); priority_queue2 = std::move(priority_queue); diff --git a/test/test_set.cpp b/test/test_set.cpp index 752d6e13e..aa25fc2a6 100644 --- a/test/test_set.cpp +++ b/test/test_set.cpp @@ -356,6 +356,7 @@ namespace data1.insert(ItemM(4)); DataM data2; + data2.insert(ItemM(5)); data2 = std::move(data1); diff --git a/test/test_unordered_map.cpp b/test/test_unordered_map.cpp index 9a5879413..45a283979 100644 --- a/test/test_unordered_map.cpp +++ b/test/test_unordered_map.cpp @@ -462,6 +462,7 @@ namespace data1.insert(DataM::value_type(std::string("3"), etl::move(d3))); data1.insert(DataM::value_type(std::string("4"), ItemM(4))); + data2.insert(DataM::value_type(std::string("5"), ItemM(5))); data2 = std::move(data1); CHECK_EQUAL(1, data2.at("1").value); diff --git a/test/test_unordered_multimap.cpp b/test/test_unordered_multimap.cpp index 99c2bae1f..8bd865238 100644 --- a/test/test_unordered_multimap.cpp +++ b/test/test_unordered_multimap.cpp @@ -414,6 +414,7 @@ namespace data1.insert(DataM::value_type(std::string("4"), ItemM(4))); data2 = std::move(data1); + data2.insert(DataM::value_type(std::string("5"), ItemM(5))); CHECK_EQUAL(1, data2.find("1")->second.value); CHECK_EQUAL(2, data2.find("2")->second.value); diff --git a/test/test_unordered_multiset.cpp b/test/test_unordered_multiset.cpp index 012f5b4fe..c891730a3 100644 --- a/test/test_unordered_multiset.cpp +++ b/test/test_unordered_multiset.cpp @@ -357,6 +357,7 @@ namespace data1.insert(ItemM(4)); DataM data2; + data2.insert(ItemM(5)); data2 = std::move(data1); diff --git a/test/test_unordered_set.cpp b/test/test_unordered_set.cpp index 8ad222060..a5fe32c84 100644 --- a/test/test_unordered_set.cpp +++ b/test/test_unordered_set.cpp @@ -341,6 +341,7 @@ namespace data1.insert(ItemM(4)); DataM data2; + data2.insert(ItemM(5)); data2 = std::move(data1); diff --git a/test/test_vector.cpp b/test/test_vector.cpp index 2a058cc9d..3f861fc07 100644 --- a/test/test_vector.cpp +++ b/test/test_vector.cpp @@ -216,6 +216,7 @@ namespace { Data data(initial_data.begin(), initial_data.end()); Data other_data; + other_data.push_back(1); other_data = std::move(data); diff --git a/test/test_vector_pointer.cpp b/test/test_vector_pointer.cpp index 1967d409d..bba84c1de 100644 --- a/test/test_vector_pointer.cpp +++ b/test/test_vector_pointer.cpp @@ -360,6 +360,7 @@ namespace { Data data(initial_data.begin(), initial_data.end()); Data other_data; + other_data.push_back(nullptr); other_data = std::move(data); From 5aa9333b05fd2de964db5a445b9e58ebd4688e23 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Tue, 12 Sep 2023 19:09:45 +0100 Subject: [PATCH 10/14] Updated release notes --- support/Release notes.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/support/Release notes.txt b/support/Release notes.txt index b6345ff86..ccd3cceca 100644 --- a/support/Release notes.txt +++ b/support/Release notes.txt @@ -1,9 +1,10 @@ =============================================================================== 20.38.2 - #753 IAR's overload resolution struggles with etl::span::span(etl::array&) #754 ambiguous etl::bit_stream_reader::bit_stream_reader() for some etl::span #755 warning about constexpr in array.h +#756 Parameter pack compilation error +#758 Move assignment not working for non-empty containers Re-enabled bit_stream_writer tests =============================================================================== @@ -28,7 +29,7 @@ Added MutexMessageRouter example =============================================================================== 20.37.3 -#737 Etl::equal specialisation for etl::span is deduced wrongly when using STL and CPP20. Added C++20 four iterator std::equal variants. +#737 etl::equal specialisation for etl::span is deduced wrongly when using STL and CPP20. Added C++20 four iterator std::equal variants. #738 etl::expected assignment operator won't work when TValue and TError are the same type. Changed assignment from etl::unexpected to use variant::emplace instead of direct assignment. #739 Could not compile ETL with gcc 9.4.0 (C++11). Added compatibility for GCC-9 + C++11. Added missing return reference from emplace member function int variant_variadic.h Removed many -02 warnings for GCC-13 From 20a55faf6e2c04d29a1cc7ad83cc4951e09838b1 Mon Sep 17 00:00:00 2001 From: Andreas Date: Thu, 14 Sep 2023 20:13:08 +0200 Subject: [PATCH 11/14] Make "private" includes relativ (#761) Avoid "include not found" when indirectly including etl-header Co-authored-by: Andreas Pelczer --- .../etl/generators/message_packet_generator.h | 116 +-- include/etl/message_packet.h | 718 +++++++++--------- include/etl/optional.h | 12 +- include/etl/private/variant_legacy.h | 14 +- include/etl/private/variant_variadic.h | 50 +- 5 files changed, 454 insertions(+), 456 deletions(-) diff --git a/include/etl/generators/message_packet_generator.h b/include/etl/generators/message_packet_generator.h index 49c73a700..cc3cfab31 100644 --- a/include/etl/generators/message_packet_generator.h +++ b/include/etl/generators/message_packet_generator.h @@ -100,17 +100,17 @@ namespace etl public: //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** - /// + /// //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" template explicit message_packet(T&& msg) : valid(true) @@ -142,7 +142,7 @@ namespace etl ETL_STATIC_ASSERT(IsInMessageList, "Message not in packet type list"); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //********************************************** void copy(const message_packet& other) @@ -167,7 +167,7 @@ namespace etl } //********************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -179,10 +179,10 @@ namespace etl return *this; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //********************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -194,7 +194,7 @@ namespace etl return *this; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** ~message_packet() @@ -271,7 +271,7 @@ namespace etl } //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -281,7 +281,7 @@ namespace etl pmsg->~imessage(); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -295,7 +295,7 @@ namespace etl (add_new_message_type(etl::move(msg)) || ...); } -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //******************************************** /// Only enabled for types that are in the typelist. //******************************************** @@ -306,9 +306,9 @@ namespace etl void* p = data; new (p) etl::remove_reference_t((etl::forward(msg))); } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //******************************************** template bool add_new_message_type(const etl::imessage& msg) @@ -324,7 +324,7 @@ namespace etl return false; } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** template @@ -398,9 +398,9 @@ namespace etl cog.out(" etl::is_one_of::type,") for i in range(1, n): cog.out("T%d, " % i) - cog.outl("T%s>::value);" % n) + cog.outl("T%s>::value);" % n) cog.outl("") - cog.outl(" ETL_STATIC_ASSERT(Enabled, \"Message not in packet type list\");") + cog.outl(" ETL_STATIC_ASSERT(Enabled, \"Message not in packet type list\");") ################################################ def generate_static_assert_cpp11(n): @@ -436,15 +436,15 @@ namespace etl cog.outl("public:") cog.outl("") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet()") cog.outl(" : valid(false)") cog.outl(" {") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" explicit message_packet(const etl::imessage& msg)") cog.outl(" {") cog.outl(" if (accepts(msg))") @@ -459,11 +459,11 @@ namespace etl cog.outl("") cog.outl(" ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception));") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" explicit message_packet(etl::imessage&& msg)") cog.outl(" {") cog.outl(" if (accepts(msg))") @@ -478,12 +478,12 @@ namespace etl cog.outl("") cog.outl(" ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception));") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS)") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.out(" template ::type, etl::message_packet<") for n in range(1, int(Handlers)): cog.out("T%s, " % n) @@ -498,10 +498,10 @@ namespace etl cog.outl(" {") generate_static_assert_cpp11(int(Handlers)) cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#else") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" template ") cog.out(" explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet<") for n in range(1, int(Handlers)): @@ -516,11 +516,11 @@ namespace etl cog.outl(" {") generate_static_assert_cpp03(int(Handlers)) cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet(const message_packet& other)") cog.outl(" : valid(other.is_valid())") cog.outl(" {") @@ -529,11 +529,11 @@ namespace etl cog.outl(" add_new_message(other.get());") cog.outl(" }") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet(message_packet&& other)") cog.outl(" : valid(other.is_valid())") cog.outl(" {") @@ -542,11 +542,11 @@ namespace etl cog.outl(" add_new_message(etl::move(other.get()));") cog.outl(" }") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet& operator =(const message_packet& rhs)") cog.outl(" {") cog.outl(" delete_current_message();") @@ -558,11 +558,11 @@ namespace etl cog.outl("") cog.outl(" return *this;") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet& operator =(message_packet&& rhs)") cog.outl(" {") cog.outl(" delete_current_message();") @@ -574,7 +574,7 @@ namespace etl cog.outl("") cog.outl(" return *this;") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //********************************************") @@ -628,7 +628,7 @@ namespace etl cog.outl(" {") generate_accepts_return_compile_time_TMessage(int(Handlers)) cog.outl(" }") - cog.outl("") + cog.outl("") cog.outl(" enum") cog.outl(" {") cog.out(" SIZE = etl::largest<") @@ -644,7 +644,7 @@ namespace etl cog.outl("private:") cog.outl("") cog.outl(" //********************************************") - cog.outl(" #include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl(" #include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" void delete_current_message()") cog.outl(" {") cog.outl(" if (valid)") @@ -654,7 +654,7 @@ namespace etl cog.outl(" pmsg->~imessage();") cog.outl(" }") cog.outl(" }") - cog.outl(" #include \"etl/private/diagnostic_pop.h\"") + cog.outl(" #include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl(" //********************************************") cog.outl(" void add_new_message(const etl::imessage& msg)") @@ -724,15 +724,15 @@ namespace etl cog.outl("public:") cog.outl("") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet()") cog.outl(" : valid(false)") cog.outl(" {") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" explicit message_packet(const etl::imessage& msg)") cog.outl(" {") cog.outl(" if (accepts(msg))") @@ -747,11 +747,11 @@ namespace etl cog.outl("") cog.outl(" ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception));") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" explicit message_packet(etl::imessage&& msg)") cog.outl(" {") cog.outl(" if (accepts(msg))") @@ -766,12 +766,12 @@ namespace etl cog.outl("") cog.outl(" ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception));") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS)") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.out(" template ::type, etl::message_packet<") for t in range(1, n): cog.out("T%s, " % t) @@ -786,10 +786,10 @@ namespace etl cog.outl(" {") generate_static_assert_cpp11(n) cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#else") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" template ") cog.out(" explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet<") for t in range(1, n): @@ -804,11 +804,11 @@ namespace etl cog.outl(" {") generate_static_assert_cpp03(n) cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet(const message_packet& other)") cog.outl(" : valid(other.is_valid())") cog.outl(" {") @@ -817,11 +817,11 @@ namespace etl cog.outl(" add_new_message(other.get());") cog.outl(" }") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet(message_packet&& other)") cog.outl(" : valid(other.is_valid())") cog.outl(" {") @@ -830,11 +830,11 @@ namespace etl cog.outl(" add_new_message(etl::move(other.get()));") cog.outl(" }") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet& operator =(const message_packet& rhs)") cog.outl(" {") cog.outl(" delete_current_message();") @@ -846,11 +846,11 @@ namespace etl cog.outl("") cog.outl(" return *this;") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet& operator =(message_packet&& rhs)") cog.outl(" {") cog.outl(" delete_current_message();") @@ -862,7 +862,7 @@ namespace etl cog.outl("") cog.outl(" return *this;") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //********************************************") @@ -932,7 +932,7 @@ namespace etl cog.outl("private:") cog.outl("") cog.outl(" //********************************************") - cog.outl(" #include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl(" #include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" void delete_current_message()") cog.outl(" {") cog.outl(" if (valid)") @@ -942,7 +942,7 @@ namespace etl cog.outl(" pmsg->~imessage();") cog.outl(" }") cog.outl(" }") - cog.outl(" #include \"etl/private/diagnostic_pop.h\"") + cog.outl(" #include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl(" //********************************************") cog.outl(" void add_new_message(const etl::imessage& msg)") diff --git a/include/etl/message_packet.h b/include/etl/message_packet.h index bc61247dd..17ef11552 100644 --- a/include/etl/message_packet.h +++ b/include/etl/message_packet.h @@ -88,17 +88,17 @@ namespace etl public: //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** - /// + /// //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" template explicit message_packet(T&& msg) : valid(true) @@ -130,7 +130,7 @@ namespace etl ETL_STATIC_ASSERT(IsInMessageList, "Message not in packet type list"); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //********************************************** void copy(const message_packet& other) @@ -155,7 +155,7 @@ namespace etl } //********************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -167,10 +167,10 @@ namespace etl return *this; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //********************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -182,7 +182,7 @@ namespace etl return *this; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** ~message_packet() @@ -259,7 +259,7 @@ namespace etl } //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -269,7 +269,7 @@ namespace etl pmsg->~imessage(); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -283,7 +283,7 @@ namespace etl (add_new_message_type(etl::move(msg)) || ...); } -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //******************************************** /// Only enabled for types that are in the typelist. //******************************************** @@ -294,9 +294,9 @@ namespace etl void* p = data; new (p) etl::remove_reference_t((etl::forward(msg))); } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //******************************************** template bool add_new_message_type(const etl::imessage& msg) @@ -312,7 +312,7 @@ namespace etl return false; } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** template @@ -339,24 +339,24 @@ namespace etl //*************************************************************************** // The definition for all 16 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -371,11 +371,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -390,12 +390,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>::value, int>::type> @@ -409,10 +409,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -426,11 +426,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -439,11 +439,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -452,11 +452,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -468,11 +468,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -484,7 +484,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -557,7 +557,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -567,7 +567,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -634,24 +634,24 @@ namespace etl //*************************************************************************** // Specialisation for 15 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -666,11 +666,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -685,12 +685,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>::value, int>::type> @@ -704,10 +704,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -721,11 +721,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -734,11 +734,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -747,11 +747,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -763,11 +763,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -779,7 +779,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -852,7 +852,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -862,7 +862,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -927,24 +927,24 @@ namespace etl //*************************************************************************** // Specialisation for 14 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -959,11 +959,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -978,12 +978,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>::value, int>::type> @@ -997,10 +997,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -1014,11 +1014,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -1027,11 +1027,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -1040,11 +1040,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -1056,11 +1056,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -1072,7 +1072,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -1145,7 +1145,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -1155,7 +1155,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -1218,24 +1218,24 @@ namespace etl //*************************************************************************** // Specialisation for 13 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -1250,11 +1250,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -1269,12 +1269,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>::value, int>::type> @@ -1288,10 +1288,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -1305,11 +1305,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -1318,11 +1318,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -1331,11 +1331,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -1347,11 +1347,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -1363,7 +1363,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -1436,7 +1436,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -1446,7 +1446,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -1507,23 +1507,23 @@ namespace etl //*************************************************************************** // Specialisation for 12 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -1538,11 +1538,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -1557,12 +1557,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>::value, int>::type> @@ -1576,10 +1576,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -1593,11 +1593,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -1606,11 +1606,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -1619,11 +1619,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -1635,11 +1635,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -1651,7 +1651,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -1721,7 +1721,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -1731,7 +1731,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -1790,23 +1790,23 @@ namespace etl //*************************************************************************** // Specialisation for 11 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -1821,11 +1821,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -1840,12 +1840,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>::value, int>::type> @@ -1859,10 +1859,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -1876,11 +1876,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -1889,11 +1889,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -1902,11 +1902,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -1918,11 +1918,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -1934,7 +1934,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -2004,7 +2004,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -2014,7 +2014,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -2071,23 +2071,23 @@ namespace etl //*************************************************************************** // Specialisation for 10 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -2102,11 +2102,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -2121,12 +2121,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>::value, int>::type> @@ -2140,10 +2140,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -2157,11 +2157,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -2170,11 +2170,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -2183,11 +2183,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -2199,11 +2199,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -2215,7 +2215,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -2285,7 +2285,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -2295,7 +2295,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -2350,23 +2350,23 @@ namespace etl //*************************************************************************** // Specialisation for 9 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -2381,11 +2381,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -2400,12 +2400,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9>::value, int>::type> @@ -2419,10 +2419,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -2436,11 +2436,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -2449,11 +2449,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -2462,11 +2462,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -2478,11 +2478,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -2494,7 +2494,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -2564,7 +2564,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -2574,7 +2574,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -2627,22 +2627,22 @@ namespace etl //*************************************************************************** // Specialisation for 8 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -2657,11 +2657,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -2676,12 +2676,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8>::value, int>::type> @@ -2695,10 +2695,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -2712,11 +2712,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -2725,11 +2725,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -2738,11 +2738,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -2754,11 +2754,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -2770,7 +2770,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -2837,7 +2837,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -2847,7 +2847,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -2898,22 +2898,22 @@ namespace etl //*************************************************************************** // Specialisation for 7 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -2928,11 +2928,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -2947,12 +2947,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7>::value, int>::type> @@ -2966,10 +2966,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -2983,11 +2983,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -2996,11 +2996,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -3009,11 +3009,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -3025,11 +3025,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -3041,7 +3041,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -3108,7 +3108,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -3118,7 +3118,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -3167,22 +3167,22 @@ namespace etl //*************************************************************************** // Specialisation for 6 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -3197,11 +3197,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -3216,12 +3216,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6>::value, int>::type> @@ -3235,10 +3235,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -3252,11 +3252,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -3265,11 +3265,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -3278,11 +3278,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -3294,11 +3294,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -3310,7 +3310,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -3377,7 +3377,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -3387,7 +3387,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -3434,22 +3434,22 @@ namespace etl //*************************************************************************** // Specialisation for 5 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -3464,11 +3464,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -3483,12 +3483,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5>::value, int>::type> @@ -3502,10 +3502,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -3519,11 +3519,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -3532,11 +3532,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -3545,11 +3545,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -3561,11 +3561,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -3577,7 +3577,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -3644,7 +3644,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -3654,7 +3654,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -3705,15 +3705,15 @@ namespace etl public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -3728,11 +3728,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -3747,12 +3747,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4>::value, int>::type> @@ -3766,10 +3766,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -3783,11 +3783,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -3796,11 +3796,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -3809,11 +3809,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -3825,11 +3825,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -3841,7 +3841,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -3905,7 +3905,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -3915,7 +3915,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -3964,15 +3964,15 @@ namespace etl public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -3987,11 +3987,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -4006,12 +4006,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3>::value, int>::type> @@ -4025,10 +4025,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -4042,11 +4042,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -4055,11 +4055,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -4068,11 +4068,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -4084,11 +4084,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -4100,7 +4100,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -4164,7 +4164,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -4174,7 +4174,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -4221,15 +4221,15 @@ namespace etl public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -4244,11 +4244,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -4263,12 +4263,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2>::value, int>::type> @@ -4282,10 +4282,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -4299,11 +4299,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -4312,11 +4312,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -4325,11 +4325,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -4341,11 +4341,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -4357,7 +4357,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -4421,7 +4421,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -4431,7 +4431,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -4476,15 +4476,15 @@ namespace etl public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -4499,11 +4499,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -4518,12 +4518,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1>::value, int>::type> @@ -4537,10 +4537,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -4554,11 +4554,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -4567,11 +4567,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -4580,11 +4580,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -4596,11 +4596,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -4612,7 +4612,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -4676,7 +4676,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -4686,7 +4686,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) diff --git a/include/etl/optional.h b/include/etl/optional.h index a6d7a15c3..f88e9fead 100644 --- a/include/etl/optional.h +++ b/include/etl/optional.h @@ -135,7 +135,7 @@ namespace etl { } -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //*************************************************************************** /// Copy constructor. //*************************************************************************** @@ -147,7 +147,7 @@ namespace etl storage.construct(other.value()); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" #if ETL_USING_CPP11 //*************************************************************************** @@ -481,7 +481,7 @@ namespace etl //************************************************************************* /// Emplaces a value. ///\param args The arguments to construct with. - //************************************************************************* + //************************************************************************* template ETL_CONSTEXPR20_STL void emplace(TArgs&& ... args) @@ -890,7 +890,7 @@ namespace etl //*************************************************************************** /// Bool conversion operator. //*************************************************************************** - ETL_CONSTEXPR14 + ETL_CONSTEXPR14 ETL_EXPLICIT operator bool() const { return valid; @@ -1110,7 +1110,7 @@ namespace etl storage_type storage; }; -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //*************************************************************************** /// Equality operator. cppreference 1 @@ -1404,7 +1404,7 @@ namespace etl return rhs.has_value() ? lhs >= rhs.value() : true; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //*************************************************************************** /// Make an optional. diff --git a/include/etl/private/variant_legacy.h b/include/etl/private/variant_legacy.h index 93878ce58..c1b825668 100644 --- a/include/etl/private/variant_legacy.h +++ b/include/etl/private/variant_legacy.h @@ -460,12 +460,12 @@ namespace etl /// Default constructor. /// Sets the state of the instance to containing no valid data. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" variant() : type_id(UNSUPPORTED_TYPE_ID) { } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Constructor that catches any types that are not supported. @@ -484,7 +484,7 @@ namespace etl /// Copy constructor. ///\param other The other variant object to copy. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" variant(const variant& other) { switch (other.type_id) @@ -502,7 +502,7 @@ namespace etl type_id = other.type_id; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" #if ETL_USING_CPP11 && ETL_NOT_USING_STLPORT && !defined(ETL_VARIANT_FORCE_CPP03_IMPLEMENTATION) //************************************************************************* @@ -869,8 +869,7 @@ namespace etl } private: - -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" //*************************************************************************** /// Destruct the current occupant of the variant. //*************************************************************************** @@ -891,7 +890,7 @@ namespace etl type_id = UNSUPPORTED_TYPE_ID; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// The internal storage. @@ -1010,4 +1009,3 @@ namespace etl } #endif } - diff --git a/include/etl/private/variant_variadic.h b/include/etl/private/variant_variadic.h index c7ee4d1f6..6a8d9ab0b 100644 --- a/include/etl/private/variant_variadic.h +++ b/include/etl/private/variant_variadic.h @@ -430,7 +430,7 @@ namespace etl /// 'Bad variant access' exception for the variant class. ///\ingroup variant //*************************************************************************** - class bad_variant_access : public variant_exception + class bad_variant_access : public variant_exception { public: bad_variant_access(string_type file_name_, numeric_type line_number_) @@ -524,7 +524,7 @@ namespace etl /// Default constructor. /// Sets the state of the instance to containing no valid data. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" ETL_CONSTEXPR14 variant() { using type = typename etl::private_variant::parameter_pack::template type_from_index<0U>::type; @@ -533,12 +533,12 @@ namespace etl operation = operation_type::value, etl::is_move_constructible::value>::do_operation; type_id = 0U; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Construct from a value. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template , variant>::value, int> = 0> ETL_CONSTEXPR14 variant(T&& value) : operation(operation_type, etl::is_copy_constructible>::value, etl::is_move_constructible>::value>::do_operation) @@ -548,12 +548,12 @@ namespace etl construct_in_place>(data, etl::forward(value)); } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Construct from arguments. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template ETL_CONSTEXPR14 explicit variant(etl::in_place_type_t, TArgs&&... args) : operation(operation_type, etl::is_copy_constructible>::value, etl::is_move_constructible>::value>::do_operation) @@ -563,12 +563,12 @@ namespace etl construct_in_place_args>(data, etl::forward(args)...); } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Construct from arguments. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template ETL_CONSTEXPR14 explicit variant(etl::in_place_index_t, TArgs&&... args) : type_id(Index) @@ -580,13 +580,13 @@ namespace etl operation = operation_type::value, etl::is_move_constructible::value>::do_operation; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" #if ETL_HAS_INITIALIZER_LIST //*************************************************************************** /// Construct from type, initializer_list and arguments. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template ETL_CONSTEXPR14 explicit variant(etl::in_place_type_t, std::initializer_list init, TArgs&&... args) : operation(operation_type, etl::is_copy_constructible>::value, etl::is_move_constructible>::value>::do_operation) @@ -596,12 +596,12 @@ namespace etl construct_in_place_args>(data, init, etl::forward(args)...); } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Construct from index, initializer_list and arguments. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template ETL_CONSTEXPR14 explicit variant(etl::in_place_index_t, std::initializer_list init, TArgs&&... args) : type_id(Index) @@ -613,14 +613,14 @@ namespace etl operation = operation_type::value, etl::is_move_constructible::value>::do_operation; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" #endif //*************************************************************************** /// Copy constructor. ///\param other The other variant object to copy. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" ETL_CONSTEXPR14 variant(const variant& other) : operation(other.operation) , type_id(other.type_id) @@ -637,13 +637,13 @@ namespace etl } } } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Move constructor. ///\param other The other variant object to copy. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" ETL_CONSTEXPR14 variant(variant&& other) : operation(other.operation) , type_id(other.type_id) @@ -664,7 +664,7 @@ namespace etl type_id = variant_npos; } } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Destructor. @@ -706,7 +706,7 @@ namespace etl //*************************************************************************** template typename etl::variant_alternative>::type& emplace(TArgs&&... args) - { + { static_assert(Index < etl::private_variant::parameter_pack::size, "Index out of range"); using type = typename etl::private_variant::parameter_pack::template type_from_index::type; @@ -826,7 +826,7 @@ namespace etl /// Accept an etl::visitor. //*************************************************************************** template - etl::enable_if_t::value, void> + etl::enable_if_t::value, void> accept(TVisitor& v) { #if ETL_USING_CPP17 && !defined(ETL_VARIANT_FORCE_CPP11) @@ -840,7 +840,7 @@ namespace etl /// Accept an etl::visitor. //*************************************************************************** template - etl::enable_if_t::value, void> + etl::enable_if_t::value, void> accept(TVisitor& v) const { #if ETL_USING_CPP17 && !defined(ETL_VARIANT_FORCE_CPP11) @@ -1125,7 +1125,7 @@ namespace etl { // Workaround for MSVC (2023/05/13) // It doesn't compile 'visitor.visit(etl::get(*this))' correctly for C++17 & C++20. - // Changed all of the instances for consistancy. + // Changed all of the instances for consistancy. auto& v = etl::get(*this); visitor.visit(v); return true; @@ -1146,7 +1146,7 @@ namespace etl { // Workaround for MSVC (2023/05/13) // It doesn't compile 'visitor.visit(etl::get(*this))' correctly for C++17 & C++20. - // Changed all of the instances for consistancy. + // Changed all of the instances for consistancy. auto& v = etl::get(*this); visitor.visit(v); return true; @@ -1700,7 +1700,7 @@ namespace etl struct do_visit_helper { using function_pointer = add_pointer_t; - + template static constexpr function_pointer fptr() noexcept { @@ -1715,10 +1715,10 @@ namespace etl static ETL_CONSTEXPR14 TRet do_visit(TCallable&& f, TVariant&& v, index_sequence, TVarRest&&... variants) { ETL_ASSERT(!v.valueless_by_exception(), ETL_ERROR(bad_variant_access)); - + using helper_t = do_visit_helper; using func_ptr = typename helper_t::function_pointer; - + constexpr func_ptr jmp_table[] { helper_t::template fptr()... From 20cfebc8bd3d1e76830604ae7f0b4a33df08c7cd Mon Sep 17 00:00:00 2001 From: Andreas Date: Thu, 14 Sep 2023 20:13:08 +0200 Subject: [PATCH 12/14] Make "private" includes relativ (#761) Avoid "include not found" when indirectly including etl-header Co-authored-by: Andreas Pelczer --- .../etl/generators/message_packet_generator.h | 116 +-- include/etl/message_packet.h | 718 +++++++++--------- include/etl/optional.h | 12 +- include/etl/private/variant_legacy.h | 14 +- include/etl/private/variant_variadic.h | 50 +- support/Release notes.txt | 1 + 6 files changed, 455 insertions(+), 456 deletions(-) diff --git a/include/etl/generators/message_packet_generator.h b/include/etl/generators/message_packet_generator.h index 49c73a700..cc3cfab31 100644 --- a/include/etl/generators/message_packet_generator.h +++ b/include/etl/generators/message_packet_generator.h @@ -100,17 +100,17 @@ namespace etl public: //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** - /// + /// //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" template explicit message_packet(T&& msg) : valid(true) @@ -142,7 +142,7 @@ namespace etl ETL_STATIC_ASSERT(IsInMessageList, "Message not in packet type list"); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //********************************************** void copy(const message_packet& other) @@ -167,7 +167,7 @@ namespace etl } //********************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -179,10 +179,10 @@ namespace etl return *this; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //********************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -194,7 +194,7 @@ namespace etl return *this; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** ~message_packet() @@ -271,7 +271,7 @@ namespace etl } //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -281,7 +281,7 @@ namespace etl pmsg->~imessage(); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -295,7 +295,7 @@ namespace etl (add_new_message_type(etl::move(msg)) || ...); } -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //******************************************** /// Only enabled for types that are in the typelist. //******************************************** @@ -306,9 +306,9 @@ namespace etl void* p = data; new (p) etl::remove_reference_t((etl::forward(msg))); } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //******************************************** template bool add_new_message_type(const etl::imessage& msg) @@ -324,7 +324,7 @@ namespace etl return false; } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** template @@ -398,9 +398,9 @@ namespace etl cog.out(" etl::is_one_of::type,") for i in range(1, n): cog.out("T%d, " % i) - cog.outl("T%s>::value);" % n) + cog.outl("T%s>::value);" % n) cog.outl("") - cog.outl(" ETL_STATIC_ASSERT(Enabled, \"Message not in packet type list\");") + cog.outl(" ETL_STATIC_ASSERT(Enabled, \"Message not in packet type list\");") ################################################ def generate_static_assert_cpp11(n): @@ -436,15 +436,15 @@ namespace etl cog.outl("public:") cog.outl("") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet()") cog.outl(" : valid(false)") cog.outl(" {") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" explicit message_packet(const etl::imessage& msg)") cog.outl(" {") cog.outl(" if (accepts(msg))") @@ -459,11 +459,11 @@ namespace etl cog.outl("") cog.outl(" ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception));") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" explicit message_packet(etl::imessage&& msg)") cog.outl(" {") cog.outl(" if (accepts(msg))") @@ -478,12 +478,12 @@ namespace etl cog.outl("") cog.outl(" ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception));") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS)") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.out(" template ::type, etl::message_packet<") for n in range(1, int(Handlers)): cog.out("T%s, " % n) @@ -498,10 +498,10 @@ namespace etl cog.outl(" {") generate_static_assert_cpp11(int(Handlers)) cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#else") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" template ") cog.out(" explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet<") for n in range(1, int(Handlers)): @@ -516,11 +516,11 @@ namespace etl cog.outl(" {") generate_static_assert_cpp03(int(Handlers)) cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet(const message_packet& other)") cog.outl(" : valid(other.is_valid())") cog.outl(" {") @@ -529,11 +529,11 @@ namespace etl cog.outl(" add_new_message(other.get());") cog.outl(" }") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet(message_packet&& other)") cog.outl(" : valid(other.is_valid())") cog.outl(" {") @@ -542,11 +542,11 @@ namespace etl cog.outl(" add_new_message(etl::move(other.get()));") cog.outl(" }") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet& operator =(const message_packet& rhs)") cog.outl(" {") cog.outl(" delete_current_message();") @@ -558,11 +558,11 @@ namespace etl cog.outl("") cog.outl(" return *this;") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet& operator =(message_packet&& rhs)") cog.outl(" {") cog.outl(" delete_current_message();") @@ -574,7 +574,7 @@ namespace etl cog.outl("") cog.outl(" return *this;") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //********************************************") @@ -628,7 +628,7 @@ namespace etl cog.outl(" {") generate_accepts_return_compile_time_TMessage(int(Handlers)) cog.outl(" }") - cog.outl("") + cog.outl("") cog.outl(" enum") cog.outl(" {") cog.out(" SIZE = etl::largest<") @@ -644,7 +644,7 @@ namespace etl cog.outl("private:") cog.outl("") cog.outl(" //********************************************") - cog.outl(" #include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl(" #include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" void delete_current_message()") cog.outl(" {") cog.outl(" if (valid)") @@ -654,7 +654,7 @@ namespace etl cog.outl(" pmsg->~imessage();") cog.outl(" }") cog.outl(" }") - cog.outl(" #include \"etl/private/diagnostic_pop.h\"") + cog.outl(" #include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl(" //********************************************") cog.outl(" void add_new_message(const etl::imessage& msg)") @@ -724,15 +724,15 @@ namespace etl cog.outl("public:") cog.outl("") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet()") cog.outl(" : valid(false)") cog.outl(" {") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" explicit message_packet(const etl::imessage& msg)") cog.outl(" {") cog.outl(" if (accepts(msg))") @@ -747,11 +747,11 @@ namespace etl cog.outl("") cog.outl(" ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception));") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" explicit message_packet(etl::imessage&& msg)") cog.outl(" {") cog.outl(" if (accepts(msg))") @@ -766,12 +766,12 @@ namespace etl cog.outl("") cog.outl(" ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception));") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS)") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.out(" template ::type, etl::message_packet<") for t in range(1, n): cog.out("T%s, " % t) @@ -786,10 +786,10 @@ namespace etl cog.outl(" {") generate_static_assert_cpp11(n) cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#else") cog.outl(" //********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" template ") cog.out(" explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet<") for t in range(1, n): @@ -804,11 +804,11 @@ namespace etl cog.outl(" {") generate_static_assert_cpp03(n) cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet(const message_packet& other)") cog.outl(" : valid(other.is_valid())") cog.outl(" {") @@ -817,11 +817,11 @@ namespace etl cog.outl(" add_new_message(other.get());") cog.outl(" }") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet(message_packet&& other)") cog.outl(" : valid(other.is_valid())") cog.outl(" {") @@ -830,11 +830,11 @@ namespace etl cog.outl(" add_new_message(etl::move(other.get()));") cog.outl(" }") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet& operator =(const message_packet& rhs)") cog.outl(" {") cog.outl(" delete_current_message();") @@ -846,11 +846,11 @@ namespace etl cog.outl("") cog.outl(" return *this;") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl("#if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION)") cog.outl(" //**********************************************") - cog.outl("#include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl("#include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" message_packet& operator =(message_packet&& rhs)") cog.outl(" {") cog.outl(" delete_current_message();") @@ -862,7 +862,7 @@ namespace etl cog.outl("") cog.outl(" return *this;") cog.outl(" }") - cog.outl("#include \"etl/private/diagnostic_pop.h\"") + cog.outl("#include \"private/diagnostic_pop.h\"") cog.outl("#endif") cog.outl("") cog.outl(" //********************************************") @@ -932,7 +932,7 @@ namespace etl cog.outl("private:") cog.outl("") cog.outl(" //********************************************") - cog.outl(" #include \"etl/private/diagnostic_uninitialized_push.h\"") + cog.outl(" #include \"private/diagnostic_uninitialized_push.h\"") cog.outl(" void delete_current_message()") cog.outl(" {") cog.outl(" if (valid)") @@ -942,7 +942,7 @@ namespace etl cog.outl(" pmsg->~imessage();") cog.outl(" }") cog.outl(" }") - cog.outl(" #include \"etl/private/diagnostic_pop.h\"") + cog.outl(" #include \"private/diagnostic_pop.h\"") cog.outl("") cog.outl(" //********************************************") cog.outl(" void add_new_message(const etl::imessage& msg)") diff --git a/include/etl/message_packet.h b/include/etl/message_packet.h index bc61247dd..17ef11552 100644 --- a/include/etl/message_packet.h +++ b/include/etl/message_packet.h @@ -88,17 +88,17 @@ namespace etl public: //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** - /// + /// //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" template explicit message_packet(T&& msg) : valid(true) @@ -130,7 +130,7 @@ namespace etl ETL_STATIC_ASSERT(IsInMessageList, "Message not in packet type list"); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //********************************************** void copy(const message_packet& other) @@ -155,7 +155,7 @@ namespace etl } //********************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -167,10 +167,10 @@ namespace etl return *this; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //********************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -182,7 +182,7 @@ namespace etl return *this; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** ~message_packet() @@ -259,7 +259,7 @@ namespace etl } //******************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -269,7 +269,7 @@ namespace etl pmsg->~imessage(); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -283,7 +283,7 @@ namespace etl (add_new_message_type(etl::move(msg)) || ...); } -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //******************************************** /// Only enabled for types that are in the typelist. //******************************************** @@ -294,9 +294,9 @@ namespace etl void* p = data; new (p) etl::remove_reference_t((etl::forward(msg))); } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //******************************************** template bool add_new_message_type(const etl::imessage& msg) @@ -312,7 +312,7 @@ namespace etl return false; } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //******************************************** template @@ -339,24 +339,24 @@ namespace etl //*************************************************************************** // The definition for all 16 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -371,11 +371,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -390,12 +390,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>::value, int>::type> @@ -409,10 +409,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -426,11 +426,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -439,11 +439,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -452,11 +452,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -468,11 +468,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -484,7 +484,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -557,7 +557,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -567,7 +567,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -634,24 +634,24 @@ namespace etl //*************************************************************************** // Specialisation for 15 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -666,11 +666,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -685,12 +685,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>::value, int>::type> @@ -704,10 +704,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -721,11 +721,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -734,11 +734,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -747,11 +747,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -763,11 +763,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -779,7 +779,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -852,7 +852,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -862,7 +862,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -927,24 +927,24 @@ namespace etl //*************************************************************************** // Specialisation for 14 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -959,11 +959,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -978,12 +978,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>::value, int>::type> @@ -997,10 +997,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -1014,11 +1014,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -1027,11 +1027,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -1040,11 +1040,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -1056,11 +1056,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -1072,7 +1072,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -1145,7 +1145,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -1155,7 +1155,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -1218,24 +1218,24 @@ namespace etl //*************************************************************************** // Specialisation for 13 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -1250,11 +1250,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -1269,12 +1269,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>::value, int>::type> @@ -1288,10 +1288,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -1305,11 +1305,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -1318,11 +1318,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -1331,11 +1331,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -1347,11 +1347,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -1363,7 +1363,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -1436,7 +1436,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -1446,7 +1446,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -1507,23 +1507,23 @@ namespace etl //*************************************************************************** // Specialisation for 12 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -1538,11 +1538,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -1557,12 +1557,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>::value, int>::type> @@ -1576,10 +1576,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -1593,11 +1593,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -1606,11 +1606,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -1619,11 +1619,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -1635,11 +1635,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -1651,7 +1651,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -1721,7 +1721,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -1731,7 +1731,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -1790,23 +1790,23 @@ namespace etl //*************************************************************************** // Specialisation for 11 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -1821,11 +1821,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -1840,12 +1840,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>::value, int>::type> @@ -1859,10 +1859,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -1876,11 +1876,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -1889,11 +1889,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -1902,11 +1902,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -1918,11 +1918,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -1934,7 +1934,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -2004,7 +2004,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -2014,7 +2014,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -2071,23 +2071,23 @@ namespace etl //*************************************************************************** // Specialisation for 10 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -2102,11 +2102,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -2121,12 +2121,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>::value, int>::type> @@ -2140,10 +2140,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -2157,11 +2157,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -2170,11 +2170,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -2183,11 +2183,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -2199,11 +2199,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -2215,7 +2215,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -2285,7 +2285,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -2295,7 +2295,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -2350,23 +2350,23 @@ namespace etl //*************************************************************************** // Specialisation for 9 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -2381,11 +2381,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -2400,12 +2400,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8, T9>::value, int>::type> @@ -2419,10 +2419,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -2436,11 +2436,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -2449,11 +2449,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -2462,11 +2462,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -2478,11 +2478,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -2494,7 +2494,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -2564,7 +2564,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -2574,7 +2574,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -2627,22 +2627,22 @@ namespace etl //*************************************************************************** // Specialisation for 8 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -2657,11 +2657,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -2676,12 +2676,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7, T8>::value, int>::type> @@ -2695,10 +2695,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -2712,11 +2712,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -2725,11 +2725,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -2738,11 +2738,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -2754,11 +2754,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -2770,7 +2770,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -2837,7 +2837,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -2847,7 +2847,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -2898,22 +2898,22 @@ namespace etl //*************************************************************************** // Specialisation for 7 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -2928,11 +2928,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -2947,12 +2947,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6, T7>::value, int>::type> @@ -2966,10 +2966,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -2983,11 +2983,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -2996,11 +2996,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -3009,11 +3009,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -3025,11 +3025,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -3041,7 +3041,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -3108,7 +3108,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -3118,7 +3118,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -3167,22 +3167,22 @@ namespace etl //*************************************************************************** // Specialisation for 6 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -3197,11 +3197,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -3216,12 +3216,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5, T6>::value, int>::type> @@ -3235,10 +3235,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -3252,11 +3252,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -3265,11 +3265,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -3278,11 +3278,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -3294,11 +3294,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -3310,7 +3310,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -3377,7 +3377,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -3387,7 +3387,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -3434,22 +3434,22 @@ namespace etl //*************************************************************************** // Specialisation for 5 message types. //*************************************************************************** - template class message_packet { public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -3464,11 +3464,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -3483,12 +3483,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4, T5>::value, int>::type> @@ -3502,10 +3502,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -3519,11 +3519,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -3532,11 +3532,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -3545,11 +3545,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -3561,11 +3561,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -3577,7 +3577,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -3644,7 +3644,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -3654,7 +3654,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -3705,15 +3705,15 @@ namespace etl public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -3728,11 +3728,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -3747,12 +3747,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3, T4>::value, int>::type> @@ -3766,10 +3766,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -3783,11 +3783,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -3796,11 +3796,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -3809,11 +3809,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -3825,11 +3825,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -3841,7 +3841,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -3905,7 +3905,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -3915,7 +3915,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -3964,15 +3964,15 @@ namespace etl public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -3987,11 +3987,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -4006,12 +4006,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2, T3>::value, int>::type> @@ -4025,10 +4025,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -4042,11 +4042,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -4055,11 +4055,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -4068,11 +4068,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -4084,11 +4084,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -4100,7 +4100,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -4164,7 +4164,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -4174,7 +4174,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -4221,15 +4221,15 @@ namespace etl public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -4244,11 +4244,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -4263,12 +4263,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1, T2>::value, int>::type> @@ -4282,10 +4282,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -4299,11 +4299,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -4312,11 +4312,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -4325,11 +4325,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -4341,11 +4341,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -4357,7 +4357,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -4421,7 +4421,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -4431,7 +4431,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) @@ -4476,15 +4476,15 @@ namespace etl public: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet() : valid(false) { } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(const etl::imessage& msg) { if (accepts(msg)) @@ -4499,11 +4499,11 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" explicit message_packet(etl::imessage&& msg) { if (accepts(msg)) @@ -4518,12 +4518,12 @@ namespace etl ETL_ASSERT(valid, ETL_ERROR(unhandled_message_exception)); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) && !defined(ETL_COMPILER_GREEN_HILLS) //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template ::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && !etl::is_one_of::type, T1>::value, int>::type> @@ -4537,10 +4537,10 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #else //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" template explicit message_packet(const TMessage& /*msg*/, typename etl::enable_if::type, etl::message_packet >::value && !etl::is_same::type, etl::imessage>::value && @@ -4554,11 +4554,11 @@ namespace etl ETL_STATIC_ASSERT(Enabled, "Message not in packet type list"); } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(const message_packet& other) : valid(other.is_valid()) { @@ -4567,11 +4567,11 @@ namespace etl add_new_message(other.get()); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet(message_packet&& other) : valid(other.is_valid()) { @@ -4580,11 +4580,11 @@ namespace etl add_new_message(etl::move(other.get())); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(const message_packet& rhs) { delete_current_message(); @@ -4596,11 +4596,11 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #if ETL_USING_CPP11 && !defined(ETL_MESSAGE_PACKET_FORCE_CPP03_IMPLEMENTATION) //********************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" message_packet& operator =(message_packet&& rhs) { delete_current_message(); @@ -4612,7 +4612,7 @@ namespace etl return *this; } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" #endif //******************************************** @@ -4676,7 +4676,7 @@ namespace etl private: //******************************************** - #include "etl/private/diagnostic_uninitialized_push.h" + #include "private/diagnostic_uninitialized_push.h" void delete_current_message() { if (valid) @@ -4686,7 +4686,7 @@ namespace etl pmsg->~imessage(); } } - #include "etl/private/diagnostic_pop.h" + #include "private/diagnostic_pop.h" //******************************************** void add_new_message(const etl::imessage& msg) diff --git a/include/etl/optional.h b/include/etl/optional.h index a6d7a15c3..f88e9fead 100644 --- a/include/etl/optional.h +++ b/include/etl/optional.h @@ -135,7 +135,7 @@ namespace etl { } -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //*************************************************************************** /// Copy constructor. //*************************************************************************** @@ -147,7 +147,7 @@ namespace etl storage.construct(other.value()); } } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" #if ETL_USING_CPP11 //*************************************************************************** @@ -481,7 +481,7 @@ namespace etl //************************************************************************* /// Emplaces a value. ///\param args The arguments to construct with. - //************************************************************************* + //************************************************************************* template ETL_CONSTEXPR20_STL void emplace(TArgs&& ... args) @@ -890,7 +890,7 @@ namespace etl //*************************************************************************** /// Bool conversion operator. //*************************************************************************** - ETL_CONSTEXPR14 + ETL_CONSTEXPR14 ETL_EXPLICIT operator bool() const { return valid; @@ -1110,7 +1110,7 @@ namespace etl storage_type storage; }; -#include "etl/private/diagnostic_uninitialized_push.h" +#include "private/diagnostic_uninitialized_push.h" //*************************************************************************** /// Equality operator. cppreference 1 @@ -1404,7 +1404,7 @@ namespace etl return rhs.has_value() ? lhs >= rhs.value() : true; } -#include "etl/private/diagnostic_pop.h" +#include "private/diagnostic_pop.h" //*************************************************************************** /// Make an optional. diff --git a/include/etl/private/variant_legacy.h b/include/etl/private/variant_legacy.h index 93878ce58..c1b825668 100644 --- a/include/etl/private/variant_legacy.h +++ b/include/etl/private/variant_legacy.h @@ -460,12 +460,12 @@ namespace etl /// Default constructor. /// Sets the state of the instance to containing no valid data. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" variant() : type_id(UNSUPPORTED_TYPE_ID) { } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Constructor that catches any types that are not supported. @@ -484,7 +484,7 @@ namespace etl /// Copy constructor. ///\param other The other variant object to copy. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" variant(const variant& other) { switch (other.type_id) @@ -502,7 +502,7 @@ namespace etl type_id = other.type_id; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" #if ETL_USING_CPP11 && ETL_NOT_USING_STLPORT && !defined(ETL_VARIANT_FORCE_CPP03_IMPLEMENTATION) //************************************************************************* @@ -869,8 +869,7 @@ namespace etl } private: - -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" //*************************************************************************** /// Destruct the current occupant of the variant. //*************************************************************************** @@ -891,7 +890,7 @@ namespace etl type_id = UNSUPPORTED_TYPE_ID; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// The internal storage. @@ -1010,4 +1009,3 @@ namespace etl } #endif } - diff --git a/include/etl/private/variant_variadic.h b/include/etl/private/variant_variadic.h index c7ee4d1f6..6a8d9ab0b 100644 --- a/include/etl/private/variant_variadic.h +++ b/include/etl/private/variant_variadic.h @@ -430,7 +430,7 @@ namespace etl /// 'Bad variant access' exception for the variant class. ///\ingroup variant //*************************************************************************** - class bad_variant_access : public variant_exception + class bad_variant_access : public variant_exception { public: bad_variant_access(string_type file_name_, numeric_type line_number_) @@ -524,7 +524,7 @@ namespace etl /// Default constructor. /// Sets the state of the instance to containing no valid data. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" ETL_CONSTEXPR14 variant() { using type = typename etl::private_variant::parameter_pack::template type_from_index<0U>::type; @@ -533,12 +533,12 @@ namespace etl operation = operation_type::value, etl::is_move_constructible::value>::do_operation; type_id = 0U; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Construct from a value. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template , variant>::value, int> = 0> ETL_CONSTEXPR14 variant(T&& value) : operation(operation_type, etl::is_copy_constructible>::value, etl::is_move_constructible>::value>::do_operation) @@ -548,12 +548,12 @@ namespace etl construct_in_place>(data, etl::forward(value)); } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Construct from arguments. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template ETL_CONSTEXPR14 explicit variant(etl::in_place_type_t, TArgs&&... args) : operation(operation_type, etl::is_copy_constructible>::value, etl::is_move_constructible>::value>::do_operation) @@ -563,12 +563,12 @@ namespace etl construct_in_place_args>(data, etl::forward(args)...); } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Construct from arguments. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template ETL_CONSTEXPR14 explicit variant(etl::in_place_index_t, TArgs&&... args) : type_id(Index) @@ -580,13 +580,13 @@ namespace etl operation = operation_type::value, etl::is_move_constructible::value>::do_operation; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" #if ETL_HAS_INITIALIZER_LIST //*************************************************************************** /// Construct from type, initializer_list and arguments. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template ETL_CONSTEXPR14 explicit variant(etl::in_place_type_t, std::initializer_list init, TArgs&&... args) : operation(operation_type, etl::is_copy_constructible>::value, etl::is_move_constructible>::value>::do_operation) @@ -596,12 +596,12 @@ namespace etl construct_in_place_args>(data, init, etl::forward(args)...); } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Construct from index, initializer_list and arguments. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" template ETL_CONSTEXPR14 explicit variant(etl::in_place_index_t, std::initializer_list init, TArgs&&... args) : type_id(Index) @@ -613,14 +613,14 @@ namespace etl operation = operation_type::value, etl::is_move_constructible::value>::do_operation; } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" #endif //*************************************************************************** /// Copy constructor. ///\param other The other variant object to copy. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" ETL_CONSTEXPR14 variant(const variant& other) : operation(other.operation) , type_id(other.type_id) @@ -637,13 +637,13 @@ namespace etl } } } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Move constructor. ///\param other The other variant object to copy. //*************************************************************************** -#include "etl/private/diagnostic_uninitialized_push.h" +#include "diagnostic_uninitialized_push.h" ETL_CONSTEXPR14 variant(variant&& other) : operation(other.operation) , type_id(other.type_id) @@ -664,7 +664,7 @@ namespace etl type_id = variant_npos; } } -#include "etl/private/diagnostic_pop.h" +#include "diagnostic_pop.h" //*************************************************************************** /// Destructor. @@ -706,7 +706,7 @@ namespace etl //*************************************************************************** template typename etl::variant_alternative>::type& emplace(TArgs&&... args) - { + { static_assert(Index < etl::private_variant::parameter_pack::size, "Index out of range"); using type = typename etl::private_variant::parameter_pack::template type_from_index::type; @@ -826,7 +826,7 @@ namespace etl /// Accept an etl::visitor. //*************************************************************************** template - etl::enable_if_t::value, void> + etl::enable_if_t::value, void> accept(TVisitor& v) { #if ETL_USING_CPP17 && !defined(ETL_VARIANT_FORCE_CPP11) @@ -840,7 +840,7 @@ namespace etl /// Accept an etl::visitor. //*************************************************************************** template - etl::enable_if_t::value, void> + etl::enable_if_t::value, void> accept(TVisitor& v) const { #if ETL_USING_CPP17 && !defined(ETL_VARIANT_FORCE_CPP11) @@ -1125,7 +1125,7 @@ namespace etl { // Workaround for MSVC (2023/05/13) // It doesn't compile 'visitor.visit(etl::get(*this))' correctly for C++17 & C++20. - // Changed all of the instances for consistancy. + // Changed all of the instances for consistancy. auto& v = etl::get(*this); visitor.visit(v); return true; @@ -1146,7 +1146,7 @@ namespace etl { // Workaround for MSVC (2023/05/13) // It doesn't compile 'visitor.visit(etl::get(*this))' correctly for C++17 & C++20. - // Changed all of the instances for consistancy. + // Changed all of the instances for consistancy. auto& v = etl::get(*this); visitor.visit(v); return true; @@ -1700,7 +1700,7 @@ namespace etl struct do_visit_helper { using function_pointer = add_pointer_t; - + template static constexpr function_pointer fptr() noexcept { @@ -1715,10 +1715,10 @@ namespace etl static ETL_CONSTEXPR14 TRet do_visit(TCallable&& f, TVariant&& v, index_sequence, TVarRest&&... variants) { ETL_ASSERT(!v.valueless_by_exception(), ETL_ERROR(bad_variant_access)); - + using helper_t = do_visit_helper; using func_ptr = typename helper_t::function_pointer; - + constexpr func_ptr jmp_table[] { helper_t::template fptr()... diff --git a/support/Release notes.txt b/support/Release notes.txt index ccd3cceca..92210da84 100644 --- a/support/Release notes.txt +++ b/support/Release notes.txt @@ -5,6 +5,7 @@ #755 warning about constexpr in array.h #756 Parameter pack compilation error #758 Move assignment not working for non-empty containers +#761 Make "private" includes relative Re-enabled bit_stream_writer tests =============================================================================== From 26cf2afd7f1ec9bc4e4830963b35e7cc3081203d Mon Sep 17 00:00:00 2001 From: Andreas Date: Fri, 15 Sep 2023 09:45:45 +0200 Subject: [PATCH 13/14] Remove BOM from random.h (#762) random.h is the only file with UTF8-BOM and IAR can not handle it. For compatibility reasons it should be removed. Co-authored-by: Andreas Pelczer --- include/etl/random.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/etl/random.h b/include/etl/random.h index 0bca835e8..bd4097a0c 100644 --- a/include/etl/random.h +++ b/include/etl/random.h @@ -1,4 +1,4 @@ -///\file +///\file /****************************************************************************** The MIT License(MIT) From 8e83a2655b5ef71f60b36e60adf79658e8327694 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Wed, 20 Sep 2023 22:50:02 +0100 Subject: [PATCH 14/14] Enabled etl::overload for C++11 & C++14 --- include/etl/overload.h | 36 +++++++++++++++++++++++++++++++++--- test/test_overload.cpp | 4 +++- 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/include/etl/overload.h b/include/etl/overload.h index 5b636c942..6f22b4c7b 100644 --- a/include/etl/overload.h +++ b/include/etl/overload.h @@ -35,10 +35,9 @@ SOFTWARE. #include "utility.h" #include "type_traits.h" -#if ETL_USING_CPP17 - namespace etl { +#if ETL_USING_CPP17 //************************************************************************* /// Variadic template definition of overload for C++17 and above. //************************************************************************* @@ -61,8 +60,39 @@ namespace etl { return overload{ etl::forward(overloads)... }; } -} +#elif ETL_USING_CPP11 + //************************************************************************* + /// Variadic template definition of overload for C++11 & C++14. + //************************************************************************* + template + struct overload; + + //************************************************************************* + template + struct overload : TOverload, overload + { + overload(TOverload ovl0, TRest... rest) : TOverload(ovl0), overload(rest...) {} + + using TOverload::operator(); + using overload::operator(); + }; + + //************************************************************************* + template + struct overload : TOverload + { + overload(TOverload ovl0) : TOverload(ovl0) {} + + using TOverload::operator(); + }; + //************************************************************************* + template + overload make_overload(TRest... overloads) + { + return overload(overloads...); + } #endif +} #endif diff --git a/test/test_overload.cpp b/test/test_overload.cpp index baef8b9fd..68da87dbe 100644 --- a/test/test_overload.cpp +++ b/test/test_overload.cpp @@ -30,7 +30,7 @@ SOFTWARE. #include "etl/overload.h" -#if ETL_USING_CPP17 +#if ETL_USING_CPP11 #include @@ -100,6 +100,7 @@ namespace CHECK(result.bs == true); } +#if ETL_USING_CPP_17 //************************************************************************* TEST(test_overload_lambdas_initializer_list) { @@ -136,6 +137,7 @@ namespace CHECK(result.bd == false); CHECK(result.bs == true); } +#endif //************************************************************************* TEST(test_visitor_overload)