Get more compiling on MSVC Diffs= 1a271c437 Get more compiling on MSVC (#5547) Co-authored-by: Chris Dalton <99840794+csmartdalton@users.noreply.github.com>
diff --git a/.rive_head b/.rive_head index f3fc963..e871fb8 100644 --- a/.rive_head +++ b/.rive_head
@@ -1 +1 @@ -cd6a563e179cacbe5f243de12f04c04a8be83555 +1a271c4378f1fe79235e0e930d8261cbc09ea1be
diff --git a/include/rive/pls/buffer_ring.hpp b/include/rive/pls/buffer_ring.hpp index 149bb49..d2996a5 100644 --- a/include/rive/pls/buffer_ring.hpp +++ b/include/rive/pls/buffer_ring.hpp
@@ -109,6 +109,7 @@ case Format::rgba32ui: return 4 * 4; } + RIVE_UNREACHABLE(); } enum class Filter
diff --git a/include/rive/pls/d3d/d3d11.hpp b/include/rive/pls/d3d/d3d11.hpp index 762f245..5abbf78 100644 --- a/include/rive/pls/d3d/d3d11.hpp +++ b/include/rive/pls/d3d/d3d11.hpp
@@ -15,7 +15,11 @@ HRESULT hr = (CODE); \ if (hr != S_OK) \ { \ - fprintf(stderr, __FILE__ ":%u: D3D error 0x%lx: %s\n", __LINE__, hr, #CODE); \ + fprintf(stderr, \ + __FILE__ ":%i: D3D error 0x%lx: %s\n", \ + static_cast<int>(__LINE__), \ + hr, \ + #CODE); \ exit(-1); \ } \ }
diff --git a/include/rive/pls/pls.hpp b/include/rive/pls/pls.hpp index aa350b7..3edb100 100644 --- a/include/rive/pls/pls.hpp +++ b/include/rive/pls/pls.hpp
@@ -127,6 +127,7 @@ case StrokeJoin::bevel: return flags::kBevelJoin; } + RIVE_UNREACHABLE(); } // Tells the GPU that a given path has an even-odd fill rule.
diff --git a/include/rive/pls/pls_render_context.hpp b/include/rive/pls/pls_render_context.hpp index f1a3916..13108cb 100644 --- a/include/rive/pls/pls_render_context.hpp +++ b/include/rive/pls/pls_render_context.hpp
@@ -398,9 +398,9 @@ } } - constexpr static uint32_t ShaderUniqueKey(SourceType sourceType, - DrawType drawType, - const ShaderFeatures& shaderFeatures) + static uint32_t ShaderUniqueKey(SourceType sourceType, + DrawType drawType, + const ShaderFeatures& shaderFeatures) { return (shaderFeatures.getPreprocessorDefines(sourceType) << 1) | (drawType == DrawType::interiorTriangulation);
diff --git a/out/premake5.lua b/out/premake5.lua index 01659e3..e1b6d55 100644 --- a/out/premake5.lua +++ b/out/premake5.lua
@@ -121,7 +121,8 @@ RIVE_RUNTIME_DIR .. "/skia/dependencies/glfw/include"} flags { "FatalWarnings" } files {"../bubbles/bubbles.cpp", - "../glad/glad.c"} + "../glad/glad.c", + "../glad/glad_custom.c"} filter "system:windows" do
diff --git a/path_fiddle/fiddle_context_d3d.cpp b/path_fiddle/fiddle_context_d3d.cpp index 4838079..10b6829 100644 --- a/path_fiddle/fiddle_context_d3d.cpp +++ b/path_fiddle/fiddle_context_d3d.cpp
@@ -119,14 +119,14 @@ ComPtr<ID3D11Device> gpu; ComPtr<ID3D11DeviceContext> gpuContext; D3D_FEATURE_LEVEL featureLevels[] = {D3D_FEATURE_LEVEL_11_1}; + UINT creationFlags = 0; +#ifdef DEBUG + creationFlags |= D3D11_CREATE_DEVICE_DEBUG; +#endif VERIFY_OK(D3D11CreateDevice(adapter.Get(), D3D_DRIVER_TYPE_UNKNOWN, NULL, -#ifdef DEBUG - D3D11_CREATE_DEVICE_DEBUG, -#else - 0, -#endif + creationFlags, featureLevels, std::size(featureLevels), D3D11_SDK_VERSION,
diff --git a/renderer/d3d/pls_render_context_d3d.cpp b/renderer/d3d/pls_render_context_d3d.cpp index c2f89c8..d70738f 100644 --- a/renderer/d3d/pls_render_context_d3d.cpp +++ b/renderer/d3d/pls_render_context_d3d.cpp
@@ -31,6 +31,7 @@ case TexelBufferRing::Format::rgba8: return DXGI_FORMAT_R8G8B8A8_UNORM; } + RIVE_UNREACHABLE(); } static ComPtr<ID3D11Texture2D> make_simple_2d_texture(ID3D11Device* gpu,
diff --git a/renderer/gl/pls_render_context_gl.cpp b/renderer/gl/pls_render_context_gl.cpp index 1365c57..8da049c 100644 --- a/renderer/gl/pls_render_context_gl.cpp +++ b/renderer/gl/pls_render_context_gl.cpp
@@ -39,7 +39,11 @@ { m_shaderVersionString[kShaderVersionStringBuffSize - 1] = '\0'; +#ifdef _WIN32 + strcpy_s(m_shaderVersionString, kShaderVersionStringBuffSize, "#version 300 es\n"); +#else strncpy(m_shaderVersionString, "#version 300 es\n", kShaderVersionStringBuffSize - 1); +#endif #ifdef RIVE_DESKTOP_GL if (!GLAD_GL_version_es && GLAD_IS_GL_VERSION_AT_LEAST(4, 0)) { @@ -381,7 +385,7 @@ { glBindBuffer(GL_ARRAY_BUFFER, gl_buffer_id(tessSpanBufferRing())); bindVAO(m_tessellateVAO); - for (int i = 0; i < 3; ++i) + for (uintptr_t i = 0; i < 3; ++i) { glVertexAttribPointer(i, 4,
diff --git a/renderer/pls_paint.cpp b/renderer/pls_paint.cpp index ffc0a3d..d05dcb3 100644 --- a/renderer/pls_paint.cpp +++ b/renderer/pls_paint.cpp
@@ -71,6 +71,7 @@ case rive::BlendMode::luminosity: return PLSBlendMode::luminosity; } + RIVE_UNREACHABLE(); } void PLSPaint::blendMode(rive::BlendMode riveMode)
diff --git a/renderer/pls_render_context.cpp b/renderer/pls_render_context.cpp index 8d79dd7..ef4ca31 100644 --- a/renderer/pls_render_context.cpp +++ b/renderer/pls_render_context.cpp
@@ -73,6 +73,7 @@ case PLSBlendMode::luminosity: return BlendTier::advancedHSL; } + RIVE_UNREACHABLE(); } inline GradientContentKey::GradientContentKey(rcp<const PLSGradient> gradient) :
diff --git a/submodules/rive-cpp b/submodules/rive-cpp index 8015082..06fa79b 160000 --- a/submodules/rive-cpp +++ b/submodules/rive-cpp
@@ -1 +1 @@ -Subproject commit 801508288cd1c8e6b16946abd1f81f462fe1670f +Subproject commit 06fa79be95cd9265fd269b9621f84d3bfcaf161f