From 0aa5adbff3b206282c1194ed52c5baff90a0200b Mon Sep 17 00:00:00 2001 From: Sergio Ricardo Zerbetto Masson Date: Thu, 12 Feb 2026 16:23:20 -0300 Subject: [PATCH 1/3] Updated to C++ 20 --- CMakeLists.txt | 2 +- README.md | 2 +- Source/Android/Arcana.Android.vcxproj | 186 --------------- Source/Shared/Arcana.vcxitems | 47 ---- Source/Shared/arcana/string.h | 12 - .../Windows/Arcana.Windows.Reference.vcxitems | 30 --- Source/Windows/Arcana.Windows.vcxproj | 218 ------------------ 7 files changed, 2 insertions(+), 495 deletions(-) delete mode 100644 Source/Android/Arcana.Android.vcxproj delete mode 100644 Source/Shared/Arcana.vcxitems delete mode 100644 Source/Windows/Arcana.Windows.Reference.vcxitems delete mode 100644 Source/Windows/Arcana.Windows.vcxproj diff --git a/CMakeLists.txt b/CMakeLists.txt index 143a2c9..1088839 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,7 +19,7 @@ project(arcana.cpp) set_property(GLOBAL PROPERTY USE_FOLDERS ON) -set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) FetchContent_MakeAvailable(GSL) diff --git a/README.md b/README.md index 31bc101..b092995 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ You can learn more about API usage in the [arcana.cpp documentation](Source/Arca ### Prerequisites - CMake 3.15 or higher -- A C++17 compatible compiler (Visual Studio 2019+, GCC 8+, or Clang 7+) +- A C++20 compatible compiler (Visual Studio 2019+, GCC 8+, or Clang 7+) ### Building with CMake diff --git a/Source/Android/Arcana.Android.vcxproj b/Source/Android/Arcana.Android.vcxproj deleted file mode 100644 index 71104d6..0000000 --- a/Source/Android/Arcana.Android.vcxproj +++ /dev/null @@ -1,186 +0,0 @@ - - - - - Debug - ARM - - - Release - ARM - - - Debug - ARM64 - - - Release - ARM64 - - - Debug - x64 - - - Release - x64 - - - Debug - x86 - - - Release - x86 - - - - - - - {D3384115-A923-4F26-86B2-CCE99B4241DD} - Android - Arcana - 14.0 - Android - 3.0 - - - - StaticLibrary - true - Clang_5_0 - c++_shared - - - StaticLibrary - false - Clang_5_0 - c++_shared - - - StaticLibrary - true - Clang_5_0 - c++_shared - - - StaticLibrary - false - Clang_5_0 - c++_shared - - - StaticLibrary - true - Clang_5_0 - c++_shared - - - StaticLibrary - false - Clang_5_0 - c++_shared - - - StaticLibrary - true - Clang_5_0 - c++_shared - - - StaticLibrary - false - Clang_5_0 - c++_shared - - - - - - - - - - - - - - - - - - - NotUsing - pch.h - c++1z - true - Enabled - - - - - NotUsing - pch.h - c++1z - true - Enabled - - - - - NotUsing - pch.h - c++1z - true - Enabled - - - - - NotUsing - pch.h - c++1z - true - Enabled - - - - - NotUsing - pch.h - c++1z - true - Enabled - - - - - NotUsing - pch.h - c++1z - true - Enabled - - - - - NotUsing - pch.h - c++1z - true - Enabled - - - - - NotUsing - pch.h - c++1z - true - Enabled - - - - - \ No newline at end of file diff --git a/Source/Shared/Arcana.vcxitems b/Source/Shared/Arcana.vcxitems deleted file mode 100644 index a6d20cd..0000000 --- a/Source/Shared/Arcana.vcxitems +++ /dev/null @@ -1,47 +0,0 @@ - - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - true - {5F50DA01-6416-4ABD-9514-28E68FAC01BA} - - - - %(AdditionalIncludeDirectories);$(MSBuildThisFileDirectory) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Source/Shared/arcana/string.h b/Source/Shared/arcana/string.h index 1662fff..ececc5c 100644 --- a/Source/Shared/arcana/string.h +++ b/Source/Shared/arcana/string.h @@ -5,19 +5,7 @@ #include #include -#ifdef _MSC_VER #include -#else -// llvm-libc++ included with Android NDK r15c hasn't yet promoted the C++1z library fundamentals -// technical specification to the final C++17 specification for string_view. -// Force promote the types we need up into the std namespace. -#include -namespace std -{ - using string_view = experimental::string_view; - using wstring_view = experimental::wstring_view; -} -#endif namespace arcana { diff --git a/Source/Windows/Arcana.Windows.Reference.vcxitems b/Source/Windows/Arcana.Windows.Reference.vcxitems deleted file mode 100644 index 235fbcb..0000000 --- a/Source/Windows/Arcana.Windows.Reference.vcxitems +++ /dev/null @@ -1,30 +0,0 @@ - - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - true - {3B5BA6E6-3B02-4E92-93A7-333AA9DCFD7E} - - - - - true - - - - $(MSBuildThisFileDirectory) - - - - %(AdditionalIncludeDirectories);$(ArcanaDirectory);$(ArcanaDirectory)..\Shared - - - %(AdditionalDependencies);runtimeobject.lib - - - - - {e4c54c47-397b-4d8e-9488-99d79a29ab38} - - - \ No newline at end of file diff --git a/Source/Windows/Arcana.Windows.vcxproj b/Source/Windows/Arcana.Windows.vcxproj deleted file mode 100644 index dd22bce..0000000 --- a/Source/Windows/Arcana.Windows.vcxproj +++ /dev/null @@ -1,218 +0,0 @@ - - - - - Debug - ARM - - - Debug - Win32 - - - Debug - x64 - - - Release - ARM - - - Release - Win32 - - - Release - x64 - - - - - - - - - - - - - - - {e4c54c47-397b-4d8e-9488-99d79a29ab38} - StaticLibrary - Arcana - en-US - 14.0 - 10.0 - - - - StaticLibrary - true - v142 - - - StaticLibrary - true - v142 - - - StaticLibrary - true - v142 - - - StaticLibrary - false - true - v142 - - - StaticLibrary - false - true - v142 - - - StaticLibrary - false - true - v142 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - false - Arcana - - - false - Arcana - - - false - Arcana - - - false - Arcana - - - false - Arcana - - - false - Arcana - - - - NotUsing - true - $(OutDir)$(TargetName).pdb - stdcpp17 - $(GslSubmoduleDir)include;%(AdditionalIncludeDirectories) - - - Console - false - false - - - - - NotUsing - true - $(OutDir)$(TargetName).pdb - stdcpp17 - $(GslSubmoduleDir)include;%(AdditionalIncludeDirectories) - - - Console - false - false - - - - - NotUsing - true - $(OutDir)$(TargetName).pdb - stdcpp17 - $(GslSubmoduleDir)include;%(AdditionalIncludeDirectories) - - - Console - false - false - - - - - NotUsing - true - $(OutDir)$(TargetName).pdb - stdcpp17 - $(GslSubmoduleDir)include;%(AdditionalIncludeDirectories) - - - Console - false - false - - - - - NotUsing - true - $(OutDir)$(TargetName).pdb - stdcpp17 - $(GslSubmoduleDir)include;%(AdditionalIncludeDirectories) - - - Console - false - false - - - - - NotUsing - true - $(OutDir)$(TargetName).pdb - stdcpp17 - $(GslSubmoduleDir)include;%(AdditionalIncludeDirectories) - - - Console - false - false - - - - - \ No newline at end of file From e6036a24928c59afc5291ca38871045cd5c84e19 Mon Sep 17 00:00:00 2001 From: Sergio Ricardo Zerbetto Masson Date: Thu, 12 Feb 2026 16:32:01 -0300 Subject: [PATCH 2/3] Updated documentation --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b092995..90b3c3d 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ You can learn more about API usage in the [arcana.cpp documentation](Source/Arca ### Prerequisites - CMake 3.15 or higher -- A C++20 compatible compiler (Visual Studio 2019+, GCC 8+, or Clang 7+) +- A C++20 compatible compiler (Visual Studio 2022+, GCC 10+, or Clang 10+) ### Building with CMake From dd1425aeaf12d1bf5b05d4f65c0ac41942088d27 Mon Sep 17 00:00:00 2001 From: "Sergio R. Z. Masson" <97050577+SergioRZMasson@users.noreply.github.com> Date: Thu, 12 Feb 2026 17:12:49 -0300 Subject: [PATCH 3/3] Update README.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 90b3c3d..3045a5b 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ You can learn more about API usage in the [arcana.cpp documentation](Source/Arca ### Prerequisites - CMake 3.15 or higher -- A C++20 compatible compiler (Visual Studio 2022+, GCC 10+, or Clang 10+) +- A C++20 compatible compiler (Visual Studio 2022+, GCC 11+, or Clang 12+) ### Building with CMake