diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5a90bf3a..73e66cbf 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -48,7 +48,7 @@ jobs: submodules: true # Setup python - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v7 if: ${{ matrix.proof }} with: python-version: "3.x" @@ -59,11 +59,6 @@ jobs: with: cmake-version: "3.22.x" - # Setup Ninja - - name: Setup Ninja - uses: ashutoshvarma/setup-ninja@v1.1 - with: - version: 1.13.0 # Create a build directory to store all the CMake generated files - name: Create Build Environment run: cmake -E make_directory ${{github.workspace}}/build @@ -168,7 +163,6 @@ jobs: cmake -E make_directory deps/inkcpp cp ../../build/comp_cl/* deps/inkcpp/ - # Run it - name: Run Ink Proof if: ${{ matrix.proof }} @@ -211,7 +205,7 @@ jobs: with: submodules: true - name: Set upt Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: python-version: "3.x" - name: install pyton libs @@ -262,7 +256,7 @@ jobs: with: submodules: true - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: python-version: "3.x" - name: install build @@ -334,12 +328,12 @@ jobs: - uses: actions/checkout@v6 # Download Ink Proof page for Linux - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: linux-www path: www/proof - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: doxygen path: www diff --git a/.github/workflows/pr-report.yml b/.github/workflows/pr-report.yml index e9d2928b..f566bcf0 100644 --- a/.github/workflows/pr-report.yml +++ b/.github/workflows/pr-report.yml @@ -18,7 +18,7 @@ jobs: steps: # Download Ink Proof Results from the triggering workflow run - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: pattern: result-* path: "results" diff --git a/inkcpp/array.h b/inkcpp/array.h index a03bf369..b138d068 100644 --- a/inkcpp/array.h +++ b/inkcpp/array.h @@ -293,8 +293,21 @@ void managed_array::extend(size_t capacity) // type-puns between two classes with different vtbls here. Copying these elementwise would // change the stored C++ type. if (_dynamic_data) { + +#ifdef _MSC_VER +# pragma warning(push) +# pragma warning(disable : 4201) +#else +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wclass-memaccess" +#endif memcpy(new_data, _dynamic_data, sizeof(T) * _capacity); delete[] reinterpret_cast(_dynamic_data); +#ifdef _MSC_VER +# pragma warning(pop) +#else +# pragma GCC diagnostic pop +#endif } } else { // Allocate and copy typed data normally diff --git a/inkcpp/list_impl.cpp b/inkcpp/list_impl.cpp index d0e68983..8606e2dd 100644 --- a/inkcpp/list_impl.cpp +++ b/inkcpp/list_impl.cpp @@ -5,7 +5,7 @@ * https://github.com/JBenda/inkcpp for full license details. */ #include "list_impl.h" -#include "list.h" +#include "./include/list.h" #include "list_table.h" namespace ink::runtime::internal diff --git a/inkcpp/list_table.h b/inkcpp/list_table.h index 05d0e610..feef1094 100644 --- a/inkcpp/list_table.h +++ b/inkcpp/list_table.h @@ -9,7 +9,7 @@ #include "config.h" #include "system.h" #include "array.h" -#include "list.h" +#include "./include/list.h" #ifdef INK_ENABLE_STL # include