lint-0.1.0
checks.x86_64-linux.lint
· build #44
· raw
unpackPhase
1unpacking source archive /nix/store/i2csh5pbdrjd6bbqsx1ziva6hia8313v-source2source root is sourceconfigurePhase
3-- The C compiler identification is Clang 22.1.84-- The CXX compiler identification is Clang 22.1.85-- Detecting C compiler ABI info6-- Detecting C compiler ABI info - done7-- Check for working C compiler: /nix/store/aa0fqrgffl8ijza9mmx9apxy973215wz-clang-wrapper-22.1.8/bin/clang - skipped8-- Detecting C compile features9-- Detecting C compile features - done10-- Detecting CXX compiler ABI info11-- Detecting CXX compiler ABI info - done12-- Check for working CXX compiler: /nix/store/aa0fqrgffl8ijza9mmx9apxy973215wz-clang-wrapper-22.1.8/bin/clang++ - skipped13-- Detecting CXX compile features14-- Detecting CXX compile features - done15-- Found Vulkan: /nix/store/la62431p5qf1ggr3rdzql9dksv5fhicc-vulkan-loader-1.4.363.0/lib/libvulkan.so (found version "1.4.363") missing components: glslc glslangValidator16-- Performing Test CMAKE_HAVE_LIBC_PTHREAD17-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success18-- Found Threads: TRUE19-- Found Fontconfig: /nix/store/p3y4rk4gjnhs80339qq7jixjbhplqc16-fontconfig-2.18.3-lib/lib/libfontconfig.so (found version "2.18.3")20-- Found Freetype: /nix/store/zj7yb55h1zpmxmw6dp817n6y0370wji0-freetype-2.14.3/lib/libfreetype.so (found version "2.14.3")21-- Found PkgConfig: /nix/store/s70gz6bvz74c36xigh5m2ab2cqli08cv-pkg-config-wrapper-0.29.2/bin/pkg-config (found version "0.29.2")22-- Checking for module 'stb'23-- Found stb, version 124-- Configuring done (5.1s)25-- Generating done (0.3s)26-- Build files have been written to: /build/source/buildbuildPhase
27Running clang-tidy in 16 threads for 47 files out of 47 in compilation database ...28[ 1/47][7.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_math/src/geometry.cpp29/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]30 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}31 | ^32/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here33 198 | struct Vec4f : Vec<float, 4> {34 | ^35/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here3637[ 2/47][15.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/memory.cpp38[ 3/47][26.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_physics/src/ray.cpp39/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]40 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}41 | ^42/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here43 198 | struct Vec4f : Vec<float, 4> {44 | ^45/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here4647[ 4/47][27.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/scene/scene.cpp48/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]49 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}50 | ^51/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here52 198 | struct Vec4f : Vec<float, 4> {53 | ^54/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here5556[ 5/47][36.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/event.cpp57/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]58 32 | if (case_insensitive && boost::iequals(name, described)) {59 | ^60/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original61 35 | } else if (!case_insensitive && name == described) {62 | ^63/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here64 35 | } else if (!case_insensitive && name == described) {65 | ^6667[ 6/47][42.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/assets/manager.cpp68/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]69 32 | if (case_insensitive && boost::iequals(name, described)) {70 | ^71/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original72 35 | } else if (!case_insensitive && name == described) {73 | ^74/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here75 35 | } else if (!case_insensitive && name == described) {76 | ^77/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]78 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));79 | ^80 | ( )81/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]82 112 | auto unique = (expr); \83 | ^84 | ( )85/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]86 113 | if (!(unique).has_value()) return std::unexpected(unique.error());87 | ^ 88 | ( )89/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]90 118 | out = std::move((unique).value());91 | ^92 | ( )93/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]94 127 | auto unique = (expr); \95 | ^96 | ( )97/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]98 133 | out = (unique).value();99 | ^100 | ( )101102[ 7/47][49.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_math/tests/vector.cpp103/build/source/wren_math/include/wren/math/format.hpp:11:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]104 11 | struct std::formatter<wren::math::Vec<T, N>, char> {105 | ^106/build/source/wren_math/include/wren/math/format.hpp:29:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]107 29 | struct std::formatter<wren::math::Mat<T, Rows, Cols>, char> {108 | ^109/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]110 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}111 | ^112/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here113 198 | struct Vec4f : Vec<float, 4> {114 | ^115/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here116/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]117 12 | struct std::formatter<T, char> {118 | ^119/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]120 66 | struct std::formatter<T, char> {121 | ^122/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]123 97 | struct std::formatter<std::vector<T>, char> {124 | ^125/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]126 126 | struct std::formatter<std::array<T, N>, char> {127 | ^128/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]129 155 | struct std::formatter<std::map<Key, Val>, char> {130 | ^131/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]132 184 | struct std::formatter<std::filesystem::path, char> {133 | ^134135[ 8/47][51.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_math/tests/geometry.cpp136/build/source/wren_math/include/wren/math/format.hpp:11:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]137 11 | struct std::formatter<wren::math::Vec<T, N>, char> {138 | ^139/build/source/wren_math/include/wren/math/format.hpp:29:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]140 29 | struct std::formatter<wren::math::Mat<T, Rows, Cols>, char> {141 | ^142/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]143 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}144 | ^145/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here146 198 | struct Vec4f : Vec<float, 4> {147 | ^148/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here149/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]150 12 | struct std::formatter<T, char> {151 | ^152/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]153 66 | struct std::formatter<T, char> {154 | ^155/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]156 97 | struct std::formatter<std::vector<T>, char> {157 | ^158/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]159 126 | struct std::formatter<std::array<T, N>, char> {160 | ^161/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]162 155 | struct std::formatter<std::map<Key, Val>, char> {163 | ^164/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]165 184 | struct std::formatter<std::filesystem::path, char> {166 | ^167168[ 9/47][37.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/tests/string_reader.cpp169[10/47][56.2s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_physics/tests/raycast.cpp170/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]171 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}172 | ^173/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here174 198 | struct Vec4f : Vec<float, 4> {175 | ^176/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here177178[11/47][37.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/input.cpp179/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]180 32 | if (case_insensitive && boost::iequals(name, described)) {181 | ^182/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original183 35 | } else if (!case_insensitive && name == described) {184 | ^185/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here186 35 | } else if (!case_insensitive && name == described) {187 | ^188189[12/47][52.8s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_math/tests/matrix.cpp190/build/source/wren_math/include/wren/math/format.hpp:11:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]191 11 | struct std::formatter<wren::math::Vec<T, N>, char> {192 | ^193/build/source/wren_math/include/wren/math/format.hpp:29:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]194 29 | struct std::formatter<wren::math::Mat<T, Rows, Cols>, char> {195 | ^196/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]197 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}198 | ^199/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here200 198 | struct Vec4f : Vec<float, 4> {201 | ^202/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here203/build/source/wren_math/tests/matrix.cpp:21:21: error: performing an implicit widening conversion to type 'std::size_t' (aka 'unsigned long') of a multiplication performed in type 'int' [bugprone-implicit-widening-of-multiplication-result,-warnings-as-errors]204 21 | std::array<float, 4 * 4> identity = {205 | ^206/build/source/wren_math/tests/matrix.cpp:21:21: note: make conversion explicit to silence this warning207 2 | std::array<float, 4 * 4> identity = {208 | ^~~~~209 | static_cast<std::size_t>( )210/build/source/wren_math/tests/matrix.cpp:21:21: note: perform multiplication in a wider type211 21 | std::array<float, 4 * 4> identity = {212 | ^213 | static_cast<long>( )214/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]215 12 | struct std::formatter<T, char> {216 | ^217/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]218 66 | struct std::formatter<T, char> {219 | ^220/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]221 97 | struct std::formatter<std::vector<T>, char> {222 | ^223/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]224 126 | struct std::formatter<std::array<T, N>, char> {225 | ^226/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]227 155 | struct std::formatter<std::map<Key, Val>, char> {228 | ^229/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]230 184 | struct std::formatter<std::filesystem::path, char> {231 | ^232233[13/47][1.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/src/string_reader.cpp234[14/47][117.8s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/utils/queue.cpp235/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]236 32 | if (case_insensitive && boost::iequals(name, described)) {237 | ^238/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original239 35 | } else if (!case_insensitive && name == described) {240 | ^241/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here242 35 | } else if (!case_insensitive && name == described) {243 | ^244/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]245 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));246 | ^247 | ( )248/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]249 112 | auto unique = (expr); \250 | ^251 | ( )252/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]253 113 | if (!(unique).has_value()) return std::unexpected(unique.error());254 | ^ 255 | ( )256/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]257 118 | out = std::move((unique).value());258 | ^259 | ( )260/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]261 127 | auto unique = (expr); \262 | ^263 | ( )264/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]265 133 | out = (unique).value();266 | ^267 | ( )268269[15/47][120.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/inspector_panel.cpp270/build/source/editor/src/inspector_panel.cpp:77:7: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]271 77 | mesh_renderer.update_mesh(ctx.project_path, new_file);272 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~273/build/source/editor/src/inspector_panel.cpp:77:7: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]274 77 | mesh_renderer.update_mesh(ctx.project_path, new_file);275 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~276/build/source/editor/src/inspector_panel.cpp:91:40: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]277 91 | ImGui::LabelText("##name", "%s", tag.data());278 | ~~~~^~~~279/build/source/editor/src/inspector_panel.cpp:96:49: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]280 96 | if (ImGui::DragFloat(("##x" + std::string(tag.data())).c_str(), &x, 0.1F))281 | ~~~~^~~~282/build/source/editor/src/inspector_panel.cpp:103:49: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]283 103 | if (ImGui::DragFloat(("##y" + std::string(tag.data())).c_str(), &y, 0.1F))284 | ~~~~^~~~285/build/source/editor/src/inspector_panel.cpp:110:49: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]286 110 | if (ImGui::DragFloat(("##z" + std::string(tag.data())).c_str(), &z, 0.1F))287 | ~~~~^~~~288/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]289 26 | const std::array kTriangleVertices = {290 | ^291/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here292 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}293 | ^294/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]295 32 | const std::array kQuadVertices = {296 | ^297/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here298 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}299 | ^300/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]301 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};302 | ^303/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here304 698 | vector(initializer_list<value_type> __l,305 | ^306/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]307 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {308 | ^ 309 | != 0310/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]311 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {312 | ~~~~~^~~~313/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]314 56 | if (std::strcmp(ext.layerName, name.data())) {315 | ^ 316 | != 0317/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]318 56 | if (std::strcmp(ext.layerName, name.data())) {319 | ~~~~~^~~~320/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]321 71 | if (std::strcmp(ext.extensionName, name.data())) {322 | ^ 323 | != 0324/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]325 71 | if (std::strcmp(ext.extensionName, name.data())) {326 | ~~~~~^~~~327/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]328 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}329 | ^330/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here331 198 | struct Vec4f : Vec<float, 4> {332 | ^333/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here334/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]335 32 | if (case_insensitive && boost::iequals(name, described)) {336 | ^337/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original338 35 | } else if (!case_insensitive && name == described) {339 | ^340/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here341 35 | } else if (!case_insensitive && name == described) {342 | ^343/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]344 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));345 | ^346 | ( )347/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]348 112 | auto unique = (expr); \349 | ^350 | ( )351/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]352 113 | if (!(unique).has_value()) return std::unexpected(unique.error());353 | ^ 354 | ( )355/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]356 118 | out = std::move((unique).value());357 | ^358 | ( )359/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]360 127 | auto unique = (expr); \361 | ^362 | ( )363/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]364 133 | out = (unique).value();365 | ^366 | ( )367368[16/47][130.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/buffer.cpp369/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]370 32 | if (case_insensitive && boost::iequals(name, described)) {371 | ^372/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original373 35 | } else if (!case_insensitive && name == described) {374 | ^375/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here376 35 | } else if (!case_insensitive && name == described) {377 | ^378/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]379 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));380 | ^381 | ( )382/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]383 112 | auto unique = (expr); \384 | ^385 | ( )386/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]387 113 | if (!(unique).has_value()) return std::unexpected(unique.error());388 | ^ 389 | ( )390/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]391 118 | out = std::move((unique).value());392 | ^393 | ( )394/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]395 127 | auto unique = (expr); \396 | ^397 | ( )398/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]399 133 | out = (unique).value();400 | ^401 | ( )402403[17/47][132.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/render_target.cpp404/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]405 26 | const std::array kTriangleVertices = {406 | ^407/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here408 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}409 | ^410/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]411 32 | const std::array kQuadVertices = {412 | ^413/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here414 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}415 | ^416/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]417 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};418 | ^419/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here420 698 | vector(initializer_list<value_type> __l,421 | ^422/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]423 67 | ::vk::SampleCountFlagBits sample_count_{};424 | ^425/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here426 2655 | enum class SampleCountFlagBits : VkSampleCountFlags427 | ^428/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]429 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {430 | ^ 431 | != 0432/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]433 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {434 | ~~~~~^~~~435/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]436 56 | if (std::strcmp(ext.layerName, name.data())) {437 | ^ 438 | != 0439/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]440 56 | if (std::strcmp(ext.layerName, name.data())) {441 | ~~~~~^~~~442/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]443 71 | if (std::strcmp(ext.extensionName, name.data())) {444 | ^ 445 | != 0446/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]447 71 | if (std::strcmp(ext.extensionName, name.data())) {448 | ~~~~~^~~~449/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]450 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}451 | ^452/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here453 198 | struct Vec4f : Vec<float, 4> {454 | ^455/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here456/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]457 32 | if (case_insensitive && boost::iequals(name, described)) {458 | ^459/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original460 35 | } else if (!case_insensitive && name == described) {461 | ^462/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here463 35 | } else if (!case_insensitive && name == described) {464 | ^465/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]466 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));467 | ^468 | ( )469/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]470 112 | auto unique = (expr); \471 | ^472 | ( )473/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]474 113 | if (!(unique).has_value()) return std::unexpected(unique.error());475 | ^ 476 | ( )477/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]478 118 | out = std::move((unique).value());479 | ^480 | ( )481/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]482 127 | auto unique = (expr); \483 | ^484 | ( )485/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]486 133 | out = (unique).value();487 | ^488 | ( )489490[18/47][31.2s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/tests/binary_reader.cpp491[19/47][9.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/src/string.cpp492[20/47][142.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_gui/src/instance.cpp493/build/source/wren_gui/src/instance.cpp:37:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]494 37 | const std::vector<uint16_t> kQuadIndices = {0, 1, 3, 3, 1, 2};495 | ^496/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here497 698 | vector(initializer_list<value_type> __l,498 | ^499/build/source/wren_gui/src/instance.cpp:100:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]500 100 | staging_buffer->set_data_raw<Vertex>(data);501 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~502/build/source/wren_gui/src/instance.cpp:100:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]503 100 | staging_buffer->set_data_raw<Vertex>(data);504 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~505/build/source/wren_gui/src/instance.cpp:106:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]506 106 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),507 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~508 107 | device.command_pool(), staging_buffer,509 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~510 108 | vertex_buffer_, data.size_bytes());511 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~512/build/source/wren_gui/src/instance.cpp:106:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]513 106 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),514 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~515 107 | device.command_pool(), staging_buffer,516 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~517 108 | vertex_buffer_, data.size_bytes());518 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~519/build/source/wren_gui/src/instance.cpp:119:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]520 119 | staging_buffer->set_data_raw<std::int16_t>(data);521 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~522/build/source/wren_gui/src/instance.cpp:119:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]523 119 | staging_buffer->set_data_raw<std::int16_t>(data);524 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~525/build/source/wren_gui/src/instance.cpp:125:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]526 125 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),527 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~528 126 | device.command_pool(), staging_buffer,529 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~530 127 | index_buffer_, data.size_bytes());531 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~532/build/source/wren_gui/src/instance.cpp:125:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]533 125 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),534 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~535 126 | device.command_pool(), staging_buffer,536 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~537 127 | index_buffer_, data.size_bytes());538 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~539/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]540 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}541 | ^542/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here543 198 | struct Vec4f : Vec<float, 4> {544 | ^545/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here546/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]547 37 | return level.value();548 | ^~~~~549/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]550 32 | if (case_insensitive && boost::iequals(name, described)) {551 | ^552/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original553 35 | } else if (!case_insensitive && name == described) {554 | ^555/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here556 35 | } else if (!case_insensitive && name == described) {557 | ^558/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]559 12 | struct std::formatter<T, char> {560 | ^561/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]562 66 | struct std::formatter<T, char> {563 | ^564/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]565 97 | struct std::formatter<std::vector<T>, char> {566 | ^567/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]568 126 | struct std::formatter<std::array<T, N>, char> {569 | ^570/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]571 155 | struct std::formatter<std::map<Key, Val>, char> {572 | ^573/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]574 184 | struct std::formatter<std::filesystem::path, char> {575 | ^576/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]577 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));578 | ^579 | ( )580/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]581 112 | auto unique = (expr); \582 | ^583 | ( )584/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]585 113 | if (!(unique).has_value()) return std::unexpected(unique.error());586 | ^ 587 | ( )588/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]589 118 | out = std::move((unique).value());590 | ^591 | ( )592/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]593 127 | auto unique = (expr); \594 | ^595 | ( )596/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]597 133 | out = (unique).value();598 | ^599 | ( )600601[21/47][152.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/examples/nand/main.cpp602/build/source/examples/nand/main.cpp:62:29: error: performing an implicit widening conversion to type 'VkDeviceSize' (aka 'unsigned long') of a multiplication performed in type 'int' [bugprone-implicit-widening-of-multiplication-result,-warnings-as-errors]603 62 | VkDeviceSize image_size = tex_width * tex_height * tex_channels;604 | ^605/build/source/examples/nand/main.cpp:62:29: note: make conversion explicit to silence this warning606 1 | VkDeviceSize image_size = tex_width * tex_height * tex_channels;607 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~608 | static_cast<VkDeviceSize>( )609/build/source/examples/nand/main.cpp:62:29: note: perform multiplication in a wider type610 62 | VkDeviceSize image_size = tex_width * tex_height * tex_channels;611 | ^~~~~~~~~~~~~~~~~~~~~~612 | static_cast<long>( )613/build/source/examples/nand/main.cpp:146:6: error: an exception may be thrown in function 'main' which should not throw exceptions [bugprone-exception-escape,-warnings-as-errors]614 146 | auto main() -> int {615 | ^616/build/source/examples/nand/main.cpp:64:5: note: frame #0: unhandled exception of type 'std::runtime_error' may be thrown in function 'initialize' here617 64 | throw std::runtime_error("Failed to load texture");618 | ^619/build/source/examples/nand/main.cpp:170:25: note: frame #1: function 'main' calls function 'initialize' here620 170 | const auto init_err = initialize(data);621 | ^622/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]623 26 | const std::array kTriangleVertices = {624 | ^625/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here626 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}627 | ^628/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]629 32 | const std::array kQuadVertices = {630 | ^631/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here632 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}633 | ^634/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]635 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};636 | ^637/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here638 698 | vector(initializer_list<value_type> __l,639 | ^640/build/source/wren/include/wren/render_pass.hpp:156:3: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]641 156 | buffer->set_data_raw(&data, sizeof(T));642 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~643/build/source/examples/nand/main.cpp:112:24: note: in instantiation of function template specialization 'wren::RenderPass::write_scratch_buffer<GLOBALS>' requested here644 112 | pass.write_scratch_buffer(cmd, 0, 0, ubo);645 | ^646/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]647 67 | ::vk::SampleCountFlagBits sample_count_{};648 | ^649/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here650 2655 | enum class SampleCountFlagBits : VkSampleCountFlags651 | ^652/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]653 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {654 | ^ 655 | != 0656/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]657 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {658 | ~~~~~^~~~659/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]660 56 | if (std::strcmp(ext.layerName, name.data())) {661 | ^ 662 | != 0663/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]664 56 | if (std::strcmp(ext.layerName, name.data())) {665 | ~~~~~^~~~666/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]667 71 | if (std::strcmp(ext.extensionName, name.data())) {668 | ^ 669 | != 0670/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]671 71 | if (std::strcmp(ext.extensionName, name.data())) {672 | ~~~~~^~~~673/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]674 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}675 | ^676/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here677 198 | struct Vec4f : Vec<float, 4> {678 | ^679/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here680/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]681 37 | return level.value();682 | ^~~~~683/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]684 32 | if (case_insensitive && boost::iequals(name, described)) {685 | ^686/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original687 35 | } else if (!case_insensitive && name == described) {688 | ^689/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here690 35 | } else if (!case_insensitive && name == described) {691 | ^692/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]693 12 | struct std::formatter<T, char> {694 | ^695/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]696 66 | struct std::formatter<T, char> {697 | ^698/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]699 97 | struct std::formatter<std::vector<T>, char> {700 | ^701/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]702 126 | struct std::formatter<std::array<T, N>, char> {703 | ^704/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]705 155 | struct std::formatter<std::map<Key, Val>, char> {706 | ^707/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]708 184 | struct std::formatter<std::filesystem::path, char> {709 | ^710/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]711 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));712 | ^713 | ( )714/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]715 112 | auto unique = (expr); \716 | ^717 | ( )718/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]719 113 | if (!(unique).has_value()) return std::unexpected(unique.error());720 | ^ 721 | ( )722/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]723 118 | out = std::move((unique).value());724 | ^725 | ( )726/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]727 127 | auto unique = (expr); \728 | ^729 | ( )730/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]731 133 | out = (unique).value();732 | ^733 | ( )734735[22/47][152.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/renderer.cpp736/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]737 26 | const std::array kTriangleVertices = {738 | ^739/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here740 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}741 | ^742/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]743 32 | const std::array kQuadVertices = {744 | ^745/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here746 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}747 | ^748/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]749 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};750 | ^751/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here752 698 | vector(initializer_list<value_type> __l,753 | ^754/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]755 67 | ::vk::SampleCountFlagBits sample_count_{};756 | ^757/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here758 2655 | enum class SampleCountFlagBits : VkSampleCountFlags759 | ^760/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]761 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {762 | ^ 763 | != 0764/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]765 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {766 | ~~~~~^~~~767/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]768 56 | if (std::strcmp(ext.layerName, name.data())) {769 | ^ 770 | != 0771/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]772 56 | if (std::strcmp(ext.layerName, name.data())) {773 | ~~~~~^~~~774/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]775 71 | if (std::strcmp(ext.extensionName, name.data())) {776 | ^ 777 | != 0778/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]779 71 | if (std::strcmp(ext.extensionName, name.data())) {780 | ~~~~~^~~~781/build/source/wren/src/renderer.cpp:49:49: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]782 49 | render_targets_.at(kSwapchainRendertargetName.data())783 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~784/build/source/wren/src/renderer.cpp:196:59: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]785 196 | if (render_targets_.contains(kSwapchainRendertargetName.data())) {786 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~787/build/source/wren/src/renderer.cpp:290:60: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]788 290 | if (!render_targets_.contains(kSwapchainRendertargetName.data())) {789 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~790/build/source/wren/src/renderer.cpp:301:72: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]791 301 | const auto& target = render_targets_.at(kSwapchainRendertargetName.data());792 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~793/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]794 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}795 | ^796/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here797 198 | struct Vec4f : Vec<float, 4> {798 | ^799/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here800/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]801 37 | return level.value();802 | ^~~~~803/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]804 32 | if (case_insensitive && boost::iequals(name, described)) {805 | ^806/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original807 35 | } else if (!case_insensitive && name == described) {808 | ^809/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here810 35 | } else if (!case_insensitive && name == described) {811 | ^812/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]813 12 | struct std::formatter<T, char> {814 | ^815/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]816 66 | struct std::formatter<T, char> {817 | ^818/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]819 97 | struct std::formatter<std::vector<T>, char> {820 | ^821/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]822 126 | struct std::formatter<std::array<T, N>, char> {823 | ^824/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]825 155 | struct std::formatter<std::map<Key, Val>, char> {826 | ^827/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]828 184 | struct std::formatter<std::filesystem::path, char> {829 | ^830/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]831 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));832 | ^833 | ( )834/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]835 112 | auto unique = (expr); \836 | ^837 | ( )838/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]839 113 | if (!(unique).has_value()) return std::unexpected(unique.error());840 | ^ 841 | ( )842/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]843 118 | out = std::move((unique).value());844 | ^845 | ( )846/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]847 127 | auto unique = (expr); \848 | ^849 | ( )850/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]851 133 | out = (unique).value();852 | ^853 | ( )854855[23/47][33.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/scene/components/collider.cpp856/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]857 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}858 | ^859/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here860 198 | struct Vec4f : Vec<float, 4> {861 | ^862/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here863864[24/47][129.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/image.cpp865/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]866 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}867 | ^868/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here869 198 | struct Vec4f : Vec<float, 4> {870 | ^871/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here872/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]873 32 | if (case_insensitive && boost::iequals(name, described)) {874 | ^875/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original876 35 | } else if (!case_insensitive && name == described) {877 | ^878/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here879 35 | } else if (!case_insensitive && name == described) {880 | ^881/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]882 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));883 | ^884 | ( )885/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]886 112 | auto unique = (expr); \887 | ^888 | ( )889/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]890 113 | if (!(unique).has_value()) return std::unexpected(unique.error());891 | ^ 892 | ( )893/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]894 118 | out = std::move((unique).value());895 | ^896 | ( )897/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]898 127 | auto unique = (expr); \899 | ^900 | ( )901/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]902 133 | out = (unique).value();903 | ^904 | ( )905906[25/47][164.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/application.cpp907/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]908 26 | const std::array kTriangleVertices = {909 | ^910/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here911 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}912 | ^913/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]914 32 | const std::array kQuadVertices = {915 | ^916/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here917 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}918 | ^919/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]920 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};921 | ^922/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here923 698 | vector(initializer_list<value_type> __l,924 | ^925/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]926 67 | ::vk::SampleCountFlagBits sample_count_{};927 | ^928/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here929 2655 | enum class SampleCountFlagBits : VkSampleCountFlags930 | ^931/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]932 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {933 | ^ 934 | != 0935/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]936 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {937 | ~~~~~^~~~938/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]939 56 | if (std::strcmp(ext.layerName, name.data())) {940 | ^ 941 | != 0942/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]943 56 | if (std::strcmp(ext.layerName, name.data())) {944 | ~~~~~^~~~945/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]946 71 | if (std::strcmp(ext.extensionName, name.data())) {947 | ^ 948 | != 0949/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]950 71 | if (std::strcmp(ext.extensionName, name.data())) {951 | ~~~~~^~~~952/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]953 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}954 | ^955/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here956 198 | struct Vec4f : Vec<float, 4> {957 | ^958/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here959/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]960 37 | return level.value();961 | ^~~~~962/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]963 32 | if (case_insensitive && boost::iequals(name, described)) {964 | ^965/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original966 35 | } else if (!case_insensitive && name == described) {967 | ^968/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here969 35 | } else if (!case_insensitive && name == described) {970 | ^971/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]972 12 | struct std::formatter<T, char> {973 | ^974/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]975 66 | struct std::formatter<T, char> {976 | ^977/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]978 97 | struct std::formatter<std::vector<T>, char> {979 | ^980/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]981 126 | struct std::formatter<std::array<T, N>, char> {982 | ^983/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]984 155 | struct std::formatter<std::map<Key, Val>, char> {985 | ^986/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]987 184 | struct std::formatter<std::filesystem::path, char> {988 | ^989/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]990 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));991 | ^992 | ( )993/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]994 112 | auto unique = (expr); \995 | ^996 | ( )997/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]998 113 | if (!(unique).has_value()) return std::unexpected(unique.error());999 | ^ 1000 | ( )1001/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1002 118 | out = std::move((unique).value());1003 | ^1004 | ( )1005/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1006 127 | auto unique = (expr); \1007 | ^1008 | ( )1009/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1010 133 | out = (unique).value();1011 | ^1012 | ( )10131014[26/47][133.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/mesh.cpp1015/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1016 26 | const std::array kTriangleVertices = {1017 | ^1018/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1019 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1020 | ^1021/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1022 32 | const std::array kQuadVertices = {1023 | ^1024/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1025 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1026 | ^1027/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1028 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1029 | ^1030/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1031 698 | vector(initializer_list<value_type> __l,1032 | ^1033/build/source/wren/src/mesh.cpp:29:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]1034 29 | staging_buffer->set_data_raw<Vertex>(data);1035 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1036/build/source/wren/src/mesh.cpp:29:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]1037 29 | staging_buffer->set_data_raw<Vertex>(data);1038 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1039/build/source/wren/src/mesh.cpp:35:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]1040 35 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),1041 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1042 36 | device.command_pool(), staging_buffer,1043 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1044 37 | vertex_buffer_, data.size_bytes());1045 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1046/build/source/wren/src/mesh.cpp:35:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]1047 35 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),1048 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1049 36 | device.command_pool(), staging_buffer,1050 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1051 37 | vertex_buffer_, data.size_bytes());1052 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1053/build/source/wren/src/mesh.cpp:50:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]1054 50 | staging_buffer->set_data_raw<uint16_t>(data);1055 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1056/build/source/wren/src/mesh.cpp:50:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]1057 50 | staging_buffer->set_data_raw<uint16_t>(data);1058 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1059/build/source/wren/src/mesh.cpp:56:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]1060 56 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),1061 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1062 57 | device.command_pool(), staging_buffer,1063 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1064 58 | index_buffer_, data.size_bytes());1065 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1066/build/source/wren/src/mesh.cpp:56:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]1067 56 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),1068 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1069 57 | device.command_pool(), staging_buffer,1070 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1071 58 | index_buffer_, data.size_bytes());1072 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1073/build/source/wren/src/mesh.cpp:69:5: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]1074 69 | uniform_buffer_->set_data_raw(&ubo, size);1075 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1076/build/source/wren/src/mesh.cpp:69:5: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]1077 69 | uniform_buffer_->set_data_raw(&ubo, size);1078 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1079/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]1080 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1081 | ^1082/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1083 198 | struct Vec4f : Vec<float, 4> {1084 | ^1085/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1086/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1087 32 | if (case_insensitive && boost::iequals(name, described)) {1088 | ^1089/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1090 35 | } else if (!case_insensitive && name == described) {1091 | ^1092/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1093 35 | } else if (!case_insensitive && name == described) {1094 | ^1095/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1096 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1097 | ^1098 | ( )1099/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1100 112 | auto unique = (expr); \1101 | ^1102 | ( )1103/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1104 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1105 | ^ 1106 | ( )1107/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1108 118 | out = std::move((unique).value());1109 | ^1110 | ( )1111/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1112 127 | auto unique = (expr); \1113 | ^1114 | ( )1115/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1116 133 | out = (unique).value();1117 | ^1118 | ( )11191120[27/47][38.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_text/src/font.cpp1121/build/source/wren_text/src/font.cpp:34:34: error: C-style casts are discouraged; use static_cast/const_cast/reinterpret_cast [modernize-avoid-c-style-cast,-warnings-as-errors]1122 34 | FcPattern* pat = FcNameParse((FcChar8* const)(font.data()));1123 | ^1124/build/source/wren_text/src/font.cpp:34:34: error: do not use C-style cast to convert between unrelated types [cppcoreguidelines-pro-type-cstyle-cast,-warnings-as-errors]1125/build/source/wren_text/src/font.cpp:43:43: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]1126 43 | font_path = std::filesystem::path{reinterpret_cast<char*>(file)};1127 | ^1128/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1129 32 | if (case_insensitive && boost::iequals(name, described)) {1130 | ^1131/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1132 35 | } else if (!case_insensitive && name == described) {1133 | ^1134/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1135 35 | } else if (!case_insensitive && name == described) {1136 | ^1137/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1138 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1139 | ^1140 | ( )1141/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1142 112 | auto unique = (expr); \1143 | ^1144 | ( )1145/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1146 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1147 | ^ 1148 | ( )1149/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1150 118 | out = std::move((unique).value());1151 | ^1152 | ( )1153/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1154 127 | auto unique = (expr); \1155 | ^1156 | ( )1157/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1158 133 | out = (unique).value();1159 | ^1160 | ( )11611162[28/47][48.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/src/filesystem.cpp1163/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1164 32 | if (case_insensitive && boost::iequals(name, described)) {1165 | ^1166/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1167 35 | } else if (!case_insensitive && name == described) {1168 | ^1169/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1170 35 | } else if (!case_insensitive && name == described) {1171 | ^1172/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1173 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1174 | ^1175 | ( )1176/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1177 112 | auto unique = (expr); \1178 | ^1179 | ( )1180/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1181 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1182 | ^ 1183 | ( )1184/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1185 118 | out = std::move((unique).value());1186 | ^1187 | ( )1188/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1189 127 | auto unique = (expr); \1190 | ^1191 | ( )1192/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1193 133 | out = (unique).value();1194 | ^1195 | ( )11961197[29/47][184.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/main.cpp1198/build/source/editor/src/main.cpp:14:6: error: an exception may be thrown in function 'main' which should not throw exceptions [bugprone-exception-escape,-warnings-as-errors]1199 14 | auto main(int argc, char** argv) -> int {1200 | ^1201/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/optional:128:5: note: frame #0: unhandled exception of type 'bad_optional_access' may be thrown in function '__throw_bad_optional_access' here1202 128 | { _GLIBCXX_THROW_OR_ABORT(bad_optional_access()); }1203 | ^1204/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/x86_64-unknown-linux-gnu/bits/c++config.h:262:42: note: expanded from macro '_GLIBCXX_THROW_OR_ABORT'1205 262 | # define _GLIBCXX_THROW_OR_ABORT(_EXC) (throw (_EXC))1206 | ^1207/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/optional:1288:2: note: frame #1: function 'value' calls function '__throw_bad_optional_access' here1208 1288 | __throw_bad_optional_access();1209 | ^1210/build/source/wren_utils/include/wren/logging/log.hpp:37:10: note: frame #2: function 'get_log_level' calls function 'value' here1211 37 | return level.value();1212 | ^1213/build/source/wren_utils/include/wren/logging/log.hpp:50:7: note: frame #3: function 'debug<>' calls function 'get_log_level' here1214 50 | if (get_log_level() <= LogLevel::Debug) {1215 | ^1216/build/source/editor/src/main.cpp:22:3: note: frame #4: function 'main' calls function 'debug<>' here1217 22 | wren::log::debug("launching editor");1218 | ^1219/build/source/editor/src/main.cpp:52:48: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1220 52 | const auto res = editor::Editor::create(app, project_path.value());1221 | ^~~~~~~~~~~~1222/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1223 26 | const std::array kTriangleVertices = {1224 | ^1225/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1226 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1227 | ^1228/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1229 32 | const std::array kQuadVertices = {1230 | ^1231/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1232 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1233 | ^1234/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1235 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1236 | ^1237/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1238 698 | vector(initializer_list<value_type> __l,1239 | ^1240/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]1241 67 | ::vk::SampleCountFlagBits sample_count_{};1242 | ^1243/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here1244 2655 | enum class SampleCountFlagBits : VkSampleCountFlags1245 | ^1246/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1247 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1248 | ^ 1249 | != 01250/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1251 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1252 | ~~~~~^~~~1253/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1254 56 | if (std::strcmp(ext.layerName, name.data())) {1255 | ^ 1256 | != 01257/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1258 56 | if (std::strcmp(ext.layerName, name.data())) {1259 | ~~~~~^~~~1260/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1261 71 | if (std::strcmp(ext.extensionName, name.data())) {1262 | ^ 1263 | != 01264/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1265 71 | if (std::strcmp(ext.extensionName, name.data())) {1266 | ~~~~~^~~~1267/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]1268 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1269 | ^1270/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1271 198 | struct Vec4f : Vec<float, 4> {1272 | ^1273/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1274/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1275 37 | return level.value();1276 | ^~~~~1277/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1278 32 | if (case_insensitive && boost::iequals(name, described)) {1279 | ^1280/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1281 35 | } else if (!case_insensitive && name == described) {1282 | ^1283/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1284 35 | } else if (!case_insensitive && name == described) {1285 | ^1286/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1287 12 | struct std::formatter<T, char> {1288 | ^1289/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1290 66 | struct std::formatter<T, char> {1291 | ^1292/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1293 97 | struct std::formatter<std::vector<T>, char> {1294 | ^1295/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1296 126 | struct std::formatter<std::array<T, N>, char> {1297 | ^1298/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1299 155 | struct std::formatter<std::map<Key, Val>, char> {1300 | ^1301/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1302 184 | struct std::formatter<std::filesystem::path, char> {1303 | ^1304/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1305 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1306 | ^1307 | ( )1308/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1309 112 | auto unique = (expr); \1310 | ^1311 | ( )1312/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1313 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1314 | ^ 1315 | ( )1316/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1317 118 | out = std::move((unique).value());1318 | ^1319 | ( )1320/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1321 127 | auto unique = (expr); \1322 | ^1323 | ( )1324/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1325 133 | out = (unique).value();1326 | ^1327 | ( )13281329[30/47][163.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/scene/deserialization.cpp1330/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1331 26 | const std::array kTriangleVertices = {1332 | ^1333/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1334 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1335 | ^1336/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1337 32 | const std::array kQuadVertices = {1338 | ^1339/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1340 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1341 | ^1342/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1343 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1344 | ^1345/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1346 698 | vector(initializer_list<value_type> __l,1347 | ^1348/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1349 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1350 | ^ 1351 | != 01352/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1353 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1354 | ~~~~~^~~~1355/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1356 56 | if (std::strcmp(ext.layerName, name.data())) {1357 | ^ 1358 | != 01359/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1360 56 | if (std::strcmp(ext.layerName, name.data())) {1361 | ~~~~~^~~~1362/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1363 71 | if (std::strcmp(ext.extensionName, name.data())) {1364 | ^ 1365 | != 01366/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1367 71 | if (std::strcmp(ext.extensionName, name.data())) {1368 | ~~~~~^~~~1369/build/source/wren/src/scene/deserialization.cpp:23:32: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1370 23 | for (const auto& e : *table["entities"].as_array()) {1371 | ^~~~~~~~~~~~1372/build/source/wren/src/scene/deserialization.cpp:26:44: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1373 26 | scene->create_entity(entity_table["name"].as_string()->get());1374 | ^~~~~~~~1375/build/source/wren/src/scene/deserialization.cpp:45:21: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1376 45 | deserialize(*table["position"].as_table(), transform.position);1377 | ^~~~~~~~~~~~1378/build/source/wren/src/scene/deserialization.cpp:46:21: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1379 46 | deserialize(*table["rotation"].as_table(), transform.rotation);1380 | ^~~~~~~~~~~~1381/build/source/wren/src/scene/deserialization.cpp:47:21: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1382 47 | deserialize(*table["scale"].as_table(), transform.scale);1383 | ^~~~~~~~~1384/build/source/wren/src/scene/deserialization.cpp:53:3: error: ignoring return value of type 'expected<void, wren::Err>' declared with 'nodiscard' attribute [clang-diagnostic-unused-value,-warnings-as-errors]1385 53 | mesh_renderer.update_mesh(project_root, *table["path"].value<std::string>());1386 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1387/build/source/wren/src/scene/deserialization.cpp:53:3: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]1388 53 | mesh_renderer.update_mesh(project_root, *table["path"].value<std::string>());1389 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1390/build/source/wren/src/scene/deserialization.cpp:53:44: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1391 53 | mesh_renderer.update_mesh(project_root, *table["path"].value<std::string>());1392 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1393/build/source/wren/src/scene/deserialization.cpp:53:49: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1394 53 | mesh_renderer.update_mesh(project_root, *table["path"].value<std::string>());1395 | ^~~~~~~~1396/build/source/wren/src/scene/deserialization.cpp:57:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1397 57 | vec.x(*table["x"].value<float>());1398 | ^~~~~~~~~~~~~~~~~~~~~~~~~1399/build/source/wren/src/scene/deserialization.cpp:57:15: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1400 57 | vec.x(*table["x"].value<float>());1401 | ^~~~~1402/build/source/wren/src/scene/deserialization.cpp:58:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1403 58 | vec.y(*table["y"].value<float>());1404 | ^~~~~~~~~~~~~~~~~~~~~~~~~1405/build/source/wren/src/scene/deserialization.cpp:58:15: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1406 58 | vec.y(*table["y"].value<float>());1407 | ^~~~~1408/build/source/wren/src/scene/deserialization.cpp:59:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1409 59 | vec.z(*table["z"].value<float>());1410 | ^~~~~~~~~~~~~~~~~~~~~~~~~1411/build/source/wren/src/scene/deserialization.cpp:59:15: error: possibly unsafe 'operator[]', consider bounds-safe alternatives [cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,-warnings-as-errors]1412 59 | vec.z(*table["z"].value<float>());1413 | ^~~~~1414/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]1415 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1416 | ^1417/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1418 198 | struct Vec4f : Vec<float, 4> {1419 | ^1420/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1421/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1422 32 | if (case_insensitive && boost::iequals(name, described)) {1423 | ^1424/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1425 35 | } else if (!case_insensitive && name == described) {1426 | ^1427/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1428 35 | } else if (!case_insensitive && name == described) {1429 | ^1430/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1431 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1432 | ^1433 | ( )1434/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1435 112 | auto unique = (expr); \1436 | ^1437 | ( )1438/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1439 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1440 | ^ 1441 | ( )1442/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1443 118 | out = std::move((unique).value());1444 | ^1445 | ( )1446/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1447 127 | auto unique = (expr); \1448 | ^1449 | ( )1450/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1451 133 | out = (unique).value();1452 | ^1453 | ( )14541455[31/47][30.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/scene_panel.cpp1456/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]1457 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1458 | ^1459/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1460 198 | struct Vec4f : Vec<float, 4> {1461 | ^1462/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here14631464[32/47][50.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/tests/enums.cpp1465/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1466 32 | if (case_insensitive && boost::iequals(name, described)) {1467 | ^1468/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1469 35 | } else if (!case_insensitive && name == described) {1470 | ^1471/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1472 35 | } else if (!case_insensitive && name == described) {1473 | ^1474/build/source/wren_utils/tests/enums.cpp:20:14: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1475 20 | BOOST_TEST(res.value() == TestEnums::Case1);1476 | ^1477/build/source/wren_utils/tests/enums.cpp:26:14: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1478 26 | BOOST_TEST(res.value() == TestEnums::Case2);1479 | ^1480/build/source/wren_utils/tests/enums.cpp:30:14: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1481 30 | BOOST_TEST(res.value() == TestEnums::Case1);1482 | ^14831484[33/47][49.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_text/tests/font.cpp1485/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1486 32 | if (case_insensitive && boost::iequals(name, described)) {1487 | ^1488/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1489 35 | } else if (!case_insensitive && name == described) {1490 | ^1491/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1492 35 | } else if (!case_insensitive && name == described) {1493 | ^1494/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1495 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1496 | ^1497 | ( )1498/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1499 112 | auto unique = (expr); \1500 | ^1501 | ( )1502/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1503 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1504 | ^ 1505 | ( )1506/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1507 118 | out = std::move((unique).value());1508 | ^1509 | ( )1510/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1511 127 | auto unique = (expr); \1512 | ^1513 | ( )1514/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1515 133 | out = (unique).value();1516 | ^1517 | ( )15181519[34/47][129.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/graph.cpp1520/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1521 26 | const std::array kTriangleVertices = {1522 | ^1523/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1524 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1525 | ^1526/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1527 32 | const std::array kQuadVertices = {1528 | ^1529/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1530 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1531 | ^1532/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1533 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1534 | ^1535/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1536 698 | vector(initializer_list<value_type> __l,1537 | ^1538/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]1539 67 | ::vk::SampleCountFlagBits sample_count_{};1540 | ^1541/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here1542 2655 | enum class SampleCountFlagBits : VkSampleCountFlags1543 | ^1544/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1545 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1546 | ^ 1547 | != 01548/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1549 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1550 | ~~~~~^~~~1551/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1552 56 | if (std::strcmp(ext.layerName, name.data())) {1553 | ^ 1554 | != 01555/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1556 56 | if (std::strcmp(ext.layerName, name.data())) {1557 | ~~~~~^~~~1558/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1559 71 | if (std::strcmp(ext.extensionName, name.data())) {1560 | ^ 1561 | != 01562/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1563 71 | if (std::strcmp(ext.extensionName, name.data())) {1564 | ~~~~~^~~~1565/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]1566 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1567 | ^1568/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1569 198 | struct Vec4f : Vec<float, 4> {1570 | ^1571/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1572/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1573 32 | if (case_insensitive && boost::iequals(name, described)) {1574 | ^1575/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1576 35 | } else if (!case_insensitive && name == described) {1577 | ^1578/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1579 35 | } else if (!case_insensitive && name == described) {1580 | ^1581/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1582 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1583 | ^1584 | ( )1585/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1586 112 | auto unique = (expr); \1587 | ^1588 | ( )1589/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1590 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1591 | ^ 1592 | ( )1593/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1594 118 | out = std::move((unique).value());1595 | ^1596 | ( )1597/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1598 127 | auto unique = (expr); \1599 | ^1600 | ( )1601/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1602 133 | out = (unique).value();1603 | ^1604 | ( )16051606[35/47][123.8s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/utils/vulkan.cpp1607/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1608 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1609 | ^ 1610 | != 01611/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1612 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1613 | ~~~~~^~~~1614/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1615 56 | if (std::strcmp(ext.layerName, name.data())) {1616 | ^ 1617 | != 01618/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1619 56 | if (std::strcmp(ext.layerName, name.data())) {1620 | ~~~~~^~~~1621/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1622 71 | if (std::strcmp(ext.extensionName, name.data())) {1623 | ^ 1624 | != 01625/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1626 71 | if (std::strcmp(ext.extensionName, name.data())) {1627 | ~~~~~^~~~1628/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1629 37 | return level.value();1630 | ^~~~~1631/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1632 32 | if (case_insensitive && boost::iequals(name, described)) {1633 | ^1634/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1635 35 | } else if (!case_insensitive && name == described) {1636 | ^1637/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1638 35 | } else if (!case_insensitive && name == described) {1639 | ^1640/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1641 12 | struct std::formatter<T, char> {1642 | ^1643/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1644 66 | struct std::formatter<T, char> {1645 | ^1646/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1647 97 | struct std::formatter<std::vector<T>, char> {1648 | ^1649/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1650 126 | struct std::formatter<std::array<T, N>, char> {1651 | ^1652/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1653 155 | struct std::formatter<std::map<Key, Val>, char> {1654 | ^1655/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1656 184 | struct std::formatter<std::filesystem::path, char> {1657 | ^1658/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1659 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1660 | ^1661 | ( )1662/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1663 112 | auto unique = (expr); \1664 | ^1665 | ( )1666/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1667 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1668 | ^ 1669 | ( )1670/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1671 118 | out = std::move((unique).value());1672 | ^1673 | ( )1674/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1675 127 | auto unique = (expr); \1676 | ^1677 | ( )1678/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1679 133 | out = (unique).value();1680 | ^1681 | ( )16821683[36/47][41.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/filesystem_panel.cpp1684/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1685 32 | if (case_insensitive && boost::iequals(name, described)) {1686 | ^1687/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1688 35 | } else if (!case_insensitive && name == described) {1689 | ^1690/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1691 35 | } else if (!case_insensitive && name == described) {1692 | ^1693/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1694 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1695 | ^1696 | ( )1697/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1698 112 | auto unique = (expr); \1699 | ^1700 | ( )1701/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1702 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1703 | ^ 1704 | ( )1705/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1706 118 | out = std::move((unique).value());1707 | ^1708 | ( )1709/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1710 127 | auto unique = (expr); \1711 | ^1712 | ( )1713/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1714 133 | out = (unique).value();1715 | ^1716 | ( )17171718[37/47][155.8s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/ui.cpp1719/build/source/editor/src/ui.cpp:47:5: error: switch has 10 consecutive identical branches [bugprone-branch-clone,-warnings-as-errors]1720 47 | case wren::KeyCode::KExclaim:1721 | ^1722/build/source/editor/src/ui.cpp:66:37: note: last of these clones ends here1723 66 | return ImGuiKey::ImGuiKey_None; // FIXME1724 | ^1725/build/source/editor/src/ui.cpp:102:5: error: switch has 2 consecutive identical branches [bugprone-branch-clone,-warnings-as-errors]1726 102 | case wren::KeyCode::KQuestion:1727 | ^1728/build/source/editor/src/ui.cpp:105:37: note: last of these clones ends here1729 105 | return ImGuiKey::ImGuiKey_None; // FIXME1730 | ^1731/build/source/editor/src/ui.cpp:114:5: error: switch has 2 consecutive identical branches [bugprone-branch-clone,-warnings-as-errors]1732 114 | case wren::KeyCode::KUnderscore:1733 | ^1734/build/source/editor/src/ui.cpp:117:37: note: last of these clones ends here1735 117 | return ImGuiKey::ImGuiKey_None;1736 | ^1737/build/source/editor/src/ui.cpp:283:63: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1738 283 | [&io](const auto& e) { io.AddInputCharactersUTF8(e.text.data()); });1739 | ~~~~~~~^~~~1740/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1741 26 | const std::array kTriangleVertices = {1742 | ^1743/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1744 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1745 | ^1746/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1747 32 | const std::array kQuadVertices = {1748 | ^1749/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1750 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1751 | ^1752/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]1753 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1754 | ^1755/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1756 698 | vector(initializer_list<value_type> __l,1757 | ^1758/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]1759 67 | ::vk::SampleCountFlagBits sample_count_{};1760 | ^1761/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here1762 2655 | enum class SampleCountFlagBits : VkSampleCountFlags1763 | ^1764/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1765 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1766 | ^ 1767 | != 01768/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1769 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1770 | ~~~~~^~~~1771/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1772 56 | if (std::strcmp(ext.layerName, name.data())) {1773 | ^ 1774 | != 01775/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1776 56 | if (std::strcmp(ext.layerName, name.data())) {1777 | ~~~~~^~~~1778/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1779 71 | if (std::strcmp(ext.extensionName, name.data())) {1780 | ^ 1781 | != 01782/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1783 71 | if (std::strcmp(ext.extensionName, name.data())) {1784 | ~~~~~^~~~1785/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]1786 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1787 | ^1788/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1789 198 | struct Vec4f : Vec<float, 4> {1790 | ^1791/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1792/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1793 37 | return level.value();1794 | ^~~~~1795/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1796 32 | if (case_insensitive && boost::iequals(name, described)) {1797 | ^1798/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1799 35 | } else if (!case_insensitive && name == described) {1800 | ^1801/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1802 35 | } else if (!case_insensitive && name == described) {1803 | ^1804/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1805 12 | struct std::formatter<T, char> {1806 | ^1807/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1808 66 | struct std::formatter<T, char> {1809 | ^1810/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1811 97 | struct std::formatter<std::vector<T>, char> {1812 | ^1813/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1814 126 | struct std::formatter<std::array<T, N>, char> {1815 | ^1816/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1817 155 | struct std::formatter<std::map<Key, Val>, char> {1818 | ^1819/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1820 184 | struct std::formatter<std::filesystem::path, char> {1821 | ^1822/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1823 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1824 | ^1825 | ( )1826/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1827 112 | auto unique = (expr); \1828 | ^1829 | ( )1830/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1831 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1832 | ^ 1833 | ( )1834/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1835 118 | out = std::move((unique).value());1836 | ^1837 | ( )1838/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1839 127 | auto unique = (expr); \1840 | ^1841 | ( )1842/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1843 133 | out = (unique).value();1844 | ^1845 | ( )18461847[38/47][84.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/utils/device.cpp1848/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1849 32 | if (case_insensitive && boost::iequals(name, described)) {1850 | ^1851/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1852 35 | } else if (!case_insensitive && name == described) {1853 | ^1854/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1855 35 | } else if (!case_insensitive && name == described) {1856 | ^1857/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1858 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1859 | ^1860 | ( )1861/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1862 112 | auto unique = (expr); \1863 | ^1864 | ( )1865/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1866 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1867 | ^ 1868 | ( )1869/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1870 118 | out = std::move((unique).value());1871 | ^1872 | ( )1873/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1874 127 | auto unique = (expr); \1875 | ^1876 | ( )1877/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1878 133 | out = (unique).value();1879 | ^1880 | ( )18811882[39/47][124.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/window.cpp1883/build/source/wren/src/window.cpp:283:5: error: switching on non-enum value without default case may not cover all cases [bugprone-switch-missing-default-case,-warnings-as-errors]1884 283 | switch (event.type) {1885 | ^1886/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1887 37 | return level.value();1888 | ^~~~~1889/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1890 32 | if (case_insensitive && boost::iequals(name, described)) {1891 | ^1892/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1893 35 | } else if (!case_insensitive && name == described) {1894 | ^1895/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1896 35 | } else if (!case_insensitive && name == described) {1897 | ^1898/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1899 12 | struct std::formatter<T, char> {1900 | ^1901/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1902 66 | struct std::formatter<T, char> {1903 | ^1904/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1905 97 | struct std::formatter<std::vector<T>, char> {1906 | ^1907/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1908 126 | struct std::formatter<std::array<T, N>, char> {1909 | ^1910/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1911 155 | struct std::formatter<std::map<Key, Val>, char> {1912 | ^1913/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1914 184 | struct std::formatter<std::filesystem::path, char> {1915 | ^1916/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1917 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1918 | ^1919 | ( )1920/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1921 112 | auto unique = (expr); \1922 | ^1923 | ( )1924/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1925 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1926 | ^ 1927 | ( )1928/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1929 118 | out = std::move((unique).value());1930 | ^1931 | ( )1932/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1933 127 | auto unique = (expr); \1934 | ^1935 | ( )1936/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1937 133 | out = (unique).value();1938 | ^1939 | ( )19401941[40/47][54.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/vulkan.cpp1942[41/47][105.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/graphics_context.cpp1943/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1944 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1945 | ^ 1946 | != 01947/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1948 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1949 | ~~~~~^~~~1950/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1951 56 | if (std::strcmp(ext.layerName, name.data())) {1952 | ^ 1953 | != 01954/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1955 56 | if (std::strcmp(ext.layerName, name.data())) {1956 | ~~~~~^~~~1957/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]1958 71 | if (std::strcmp(ext.extensionName, name.data())) {1959 | ^ 1960 | != 01961/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]1962 71 | if (std::strcmp(ext.extensionName, name.data())) {1963 | ~~~~~^~~~1964/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1965 37 | return level.value();1966 | ^~~~~1967/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1968 32 | if (case_insensitive && boost::iequals(name, described)) {1969 | ^1970/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1971 35 | } else if (!case_insensitive && name == described) {1972 | ^1973/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1974 35 | } else if (!case_insensitive && name == described) {1975 | ^1976/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1977 12 | struct std::formatter<T, char> {1978 | ^1979/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1980 66 | struct std::formatter<T, char> {1981 | ^1982/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1983 97 | struct std::formatter<std::vector<T>, char> {1984 | ^1985/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1986 126 | struct std::formatter<std::array<T, N>, char> {1987 | ^1988/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1989 155 | struct std::formatter<std::map<Key, Val>, char> {1990 | ^1991/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]1992 184 | struct std::formatter<std::filesystem::path, char> {1993 | ^1994/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1995 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1996 | ^1997 | ( )1998/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1999 112 | auto unique = (expr); \2000 | ^2001 | ( )2002/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2003 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2004 | ^ 2005 | ( )2006/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2007 118 | out = std::move((unique).value());2008 | ^2009 | ( )2010/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2011 127 | auto unique = (expr); \2012 | ^2013 | ( )2014/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2015 133 | out = (unique).value();2016 | ^2017 | ( )20182019[42/47][114.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/scene/serialization.cpp2020/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2021 26 | const std::array kTriangleVertices = {2022 | ^2023/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2024 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2025 | ^2026/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2027 32 | const std::array kQuadVertices = {2028 | ^2029/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2030 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2031 | ^2032/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2033 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};2034 | ^2035/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here2036 698 | vector(initializer_list<value_type> __l,2037 | ^2038/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2039 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2040 | ^ 2041 | != 02042/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2043 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2044 | ~~~~~^~~~2045/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2046 56 | if (std::strcmp(ext.layerName, name.data())) {2047 | ^ 2048 | != 02049/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2050 56 | if (std::strcmp(ext.layerName, name.data())) {2051 | ~~~~~^~~~2052/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2053 71 | if (std::strcmp(ext.extensionName, name.data())) {2054 | ^ 2055 | != 02056/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2057 71 | if (std::strcmp(ext.extensionName, name.data())) {2058 | ~~~~~^~~~2059/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]2060 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2061 | ^2062/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2063 198 | struct Vec4f : Vec<float, 4> {2064 | ^2065/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2066/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2067 37 | return level.value();2068 | ^~~~~2069/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2070 32 | if (case_insensitive && boost::iequals(name, described)) {2071 | ^2072/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2073 35 | } else if (!case_insensitive && name == described) {2074 | ^2075/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2076 35 | } else if (!case_insensitive && name == described) {2077 | ^2078/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2079 12 | struct std::formatter<T, char> {2080 | ^2081/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2082 66 | struct std::formatter<T, char> {2083 | ^2084/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2085 97 | struct std::formatter<std::vector<T>, char> {2086 | ^2087/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2088 126 | struct std::formatter<std::array<T, N>, char> {2089 | ^2090/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2091 155 | struct std::formatter<std::map<Key, Val>, char> {2092 | ^2093/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2094 184 | struct std::formatter<std::filesystem::path, char> {2095 | ^2096/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2097 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2098 | ^2099 | ( )2100/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2101 112 | auto unique = (expr); \2102 | ^2103 | ( )2104/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2105 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2106 | ^ 2107 | ( )2108/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2109 118 | out = std::move((unique).value());2110 | ^2111 | ( )2112/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2113 127 | auto unique = (expr); \2114 | ^2115 | ( )2116/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2117 133 | out = (unique).value();2118 | ^2119 | ( )21202121[43/47][67.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/render_pass.cpp2122/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2123 26 | const std::array kTriangleVertices = {2124 | ^2125/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2126 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2127 | ^2128/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2129 32 | const std::array kQuadVertices = {2130 | ^2131/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2132 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2133 | ^2134/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2135 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};2136 | ^2137/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here2138 698 | vector(initializer_list<value_type> __l,2139 | ^2140/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]2141 67 | ::vk::SampleCountFlagBits sample_count_{};2142 | ^2143/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here2144 2655 | enum class SampleCountFlagBits : VkSampleCountFlags2145 | ^2146/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2147 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2148 | ^ 2149 | != 02150/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2151 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2152 | ~~~~~^~~~2153/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2154 56 | if (std::strcmp(ext.layerName, name.data())) {2155 | ^ 2156 | != 02157/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2158 56 | if (std::strcmp(ext.layerName, name.data())) {2159 | ~~~~~^~~~2160/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2161 71 | if (std::strcmp(ext.extensionName, name.data())) {2162 | ^ 2163 | != 02164/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2165 71 | if (std::strcmp(ext.extensionName, name.data())) {2166 | ~~~~~^~~~2167/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]2168 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2169 | ^2170/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2171 198 | struct Vec4f : Vec<float, 4> {2172 | ^2173/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2174/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2175 37 | return level.value();2176 | ^~~~~2177/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2178 32 | if (case_insensitive && boost::iequals(name, described)) {2179 | ^2180/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2181 35 | } else if (!case_insensitive && name == described) {2182 | ^2183/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2184 35 | } else if (!case_insensitive && name == described) {2185 | ^2186/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2187 12 | struct std::formatter<T, char> {2188 | ^2189/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2190 66 | struct std::formatter<T, char> {2191 | ^2192/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2193 97 | struct std::formatter<std::vector<T>, char> {2194 | ^2195/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2196 126 | struct std::formatter<std::array<T, N>, char> {2197 | ^2198/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2199 155 | struct std::formatter<std::map<Key, Val>, char> {2200 | ^2201/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2202 184 | struct std::formatter<std::filesystem::path, char> {2203 | ^2204/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2205 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2206 | ^2207 | ( )2208/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2209 112 | auto unique = (expr); \2210 | ^2211 | ( )2212/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2213 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2214 | ^ 2215 | ( )2216/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2217 118 | out = std::move((unique).value());2218 | ^2219 | ( )2220/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2221 127 | auto unique = (expr); \2222 | ^2223 | ( )2224/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2225 133 | out = (unique).value();2226 | ^2227 | ( )22282229[44/47][59.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/texture.cpp2230/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]2231 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2232 | ^2233/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2234 198 | struct Vec4f : Vec<float, 4> {2235 | ^2236/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2237/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2238 32 | if (case_insensitive && boost::iequals(name, described)) {2239 | ^2240/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2241 35 | } else if (!case_insensitive && name == described) {2242 | ^2243/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2244 35 | } else if (!case_insensitive && name == described) {2245 | ^2246/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2247 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2248 | ^2249 | ( )2250/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2251 112 | auto unique = (expr); \2252 | ^2253 | ( )2254/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2255 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2256 | ^ 2257 | ( )2258/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2259 118 | out = std::move((unique).value());2260 | ^2261 | ( )2262/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2263 127 | auto unique = (expr); \2264 | ^2265 | ( )2266/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2267 133 | out = (unique).value();2268 | ^2269 | ( )22702271[45/47][78.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/mesh_loader.cpp2272/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2273 26 | const std::array kTriangleVertices = {2274 | ^2275/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2276 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2277 | ^2278/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2279 32 | const std::array kQuadVertices = {2280 | ^2281/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2282 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2283 | ^2284/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2285 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};2286 | ^2287/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here2288 698 | vector(initializer_list<value_type> __l,2289 | ^2290/build/source/wren/src/mesh_loader.cpp:33:20: error: performing an implicit widening conversion to type 'size_type' (aka 'unsigned long') of a multiplication performed in type 'unsigned int' [bugprone-implicit-widening-of-multiplication-result,-warnings-as-errors]2291 33 | vertices.reserve(triangles * 3);2292 | ^2293/build/source/wren/src/mesh_loader.cpp:33:20: note: make conversion explicit to silence this warning2294 4 | vertices.reserve(triangles * 3);2295 | ^~~~~~~~~~~~~2296 | static_cast<size_type>( )2297/build/source/wren/src/mesh_loader.cpp:33:20: note: perform multiplication in a wider type2298 33 | vertices.reserve(triangles * 3);2299 | ^~~~~~~~~2300 | static_cast<size_type>( )2301/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]2302 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2303 | ^2304/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2305 198 | struct Vec4f : Vec<float, 4> {2306 | ^2307/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2308/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2309 37 | return level.value();2310 | ^~~~~2311/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2312 32 | if (case_insensitive && boost::iequals(name, described)) {2313 | ^2314/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2315 35 | } else if (!case_insensitive && name == described) {2316 | ^2317/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2318 35 | } else if (!case_insensitive && name == described) {2319 | ^2320/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2321 12 | struct std::formatter<T, char> {2322 | ^2323/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2324 66 | struct std::formatter<T, char> {2325 | ^2326/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2327 97 | struct std::formatter<std::vector<T>, char> {2328 | ^2329/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2330 126 | struct std::formatter<std::array<T, N>, char> {2331 | ^2332/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2333 155 | struct std::formatter<std::map<Key, Val>, char> {2334 | ^2335/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2336 184 | struct std::formatter<std::filesystem::path, char> {2337 | ^2338/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2339 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2340 | ^2341 | ( )2342/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2343 112 | auto unique = (expr); \2344 | ^2345 | ( )2346/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2347 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2348 | ^ 2349 | ( )2350/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2351 118 | out = std::move((unique).value());2352 | ^2353 | ( )2354/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2355 127 | auto unique = (expr); \2356 | ^2357 | ( )2358/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2359 133 | out = (unique).value();2360 | ^2361 | ( )23622363[46/47][72.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/shader.cpp2364/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]2365 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2366 | ^2367/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2368 198 | struct Vec4f : Vec<float, 4> {2369 | ^2370/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2371/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2372 37 | return level.value();2373 | ^~~~~2374/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2375 32 | if (case_insensitive && boost::iequals(name, described)) {2376 | ^2377/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2378 35 | } else if (!case_insensitive && name == described) {2379 | ^2380/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2381 35 | } else if (!case_insensitive && name == described) {2382 | ^2383/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2384 12 | struct std::formatter<T, char> {2385 | ^2386/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2387 66 | struct std::formatter<T, char> {2388 | ^2389/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2390 97 | struct std::formatter<std::vector<T>, char> {2391 | ^2392/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2393 126 | struct std::formatter<std::array<T, N>, char> {2394 | ^2395/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2396 155 | struct std::formatter<std::map<Key, Val>, char> {2397 | ^2398/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2399 184 | struct std::formatter<std::filesystem::path, char> {2400 | ^2401/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2402 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2403 | ^2404 | ( )2405/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2406 112 | auto unique = (expr); \2407 | ^2408 | ( )2409/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2410 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2411 | ^ 2412 | ( )2413/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2414 118 | out = std::move((unique).value());2415 | ^2416 | ( )2417/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2418 127 | auto unique = (expr); \2419 | ^2420 | ( )2421/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2422 133 | out = (unique).value();2423 | ^2424 | ( )24252426[47/47][103.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/editor.cpp2427/build/source/wren/include/wren/mesh.hpp:26:18: error: initialization of 'kTriangleVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2428 26 | const std::array kTriangleVertices = {2429 | ^2430/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2431 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2432 | ^2433/build/source/wren/include/wren/mesh.hpp:32:18: error: initialization of 'kQuadVertices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2434 32 | const std::array kQuadVertices = {2435 | ^2436/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2437 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2438 | ^2439/build/source/wren/include/wren/mesh.hpp:55:29: error: initialization of 'kQuadIndices' with static storage duration may throw an exception that cannot be caught [bugprone-throwing-static-initialization,-warnings-as-errors]2440 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};2441 | ^2442/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here2443 698 | vector(initializer_list<value_type> __l,2444 | ^2445/build/source/wren/include/wren/render_target.hpp:67:42: error: enum value of type 'SampleCountFlagBits' initialized with invalid value of 0, enum doesn't have a zero-value enumerator [bugprone-invalid-enum-default-initialization,-warnings-as-errors]2446 67 | ::vk::SampleCountFlagBits sample_count_{};2447 | ^2448/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here2449 2655 | enum class SampleCountFlagBits : VkSampleCountFlags2450 | ^2451/build/source/wren/include/wren/utils/vulkan.hpp:42:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2452 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2453 | ^ 2454 | != 02455/build/source/wren/include/wren/utils/vulkan.hpp:42:52: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2456 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2457 | ~~~~~^~~~2458/build/source/wren/include/wren/utils/vulkan.hpp:56:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2459 56 | if (std::strcmp(ext.layerName, name.data())) {2460 | ^ 2461 | != 02462/build/source/wren/include/wren/utils/vulkan.hpp:56:41: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2463 56 | if (std::strcmp(ext.layerName, name.data())) {2464 | ~~~~~^~~~2465/build/source/wren/include/wren/utils/vulkan.hpp:71:9: error: function 'strcmp' is called without explicitly comparing result [bugprone-suspicious-string-compare,-warnings-as-errors]2466 71 | if (std::strcmp(ext.extensionName, name.data())) {2467 | ^ 2468 | != 02469/build/source/wren/include/wren/utils/vulkan.hpp:71:45: error: result of a `data()` call may not be null terminated, provide size information to the callee to prevent potential issues [bugprone-suspicious-stringview-data-usage,-warnings-as-errors]2470 71 | if (std::strcmp(ext.extensionName, name.data())) {2471 | ~~~~~^~~~2472/build/source/wren_math/include/wren/math/vector.hpp:201:3: error: constructor accepting a forwarding reference can hide the copy and move constructors [bugprone-forwarding-reference-overload,-warnings-as-errors]2473 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2474 | ^2475/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2476 198 | struct Vec4f : Vec<float, 4> {2477 | ^2478/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2479/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2480 37 | return level.value();2481 | ^~~~~2482/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2483 32 | if (case_insensitive && boost::iequals(name, described)) {2484 | ^2485/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2486 35 | } else if (!case_insensitive && name == described) {2487 | ^2488/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2489 35 | } else if (!case_insensitive && name == described) {2490 | ^2491/build/source/wren_utils/include/wren/utils/format.hpp:12:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2492 12 | struct std::formatter<T, char> {2493 | ^2494/build/source/wren_utils/include/wren/utils/format.hpp:66:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2495 66 | struct std::formatter<T, char> {2496 | ^2497/build/source/wren_utils/include/wren/utils/format.hpp:97:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2498 97 | struct std::formatter<std::vector<T>, char> {2499 | ^2500/build/source/wren_utils/include/wren/utils/format.hpp:126:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2501 126 | struct std::formatter<std::array<T, N>, char> {2502 | ^2503/build/source/wren_utils/include/wren/utils/format.hpp:155:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2504 155 | struct std::formatter<std::map<Key, Val>, char> {2505 | ^2506/build/source/wren_utils/include/wren/utils/format.hpp:184:13: error: modification of 'std' namespace can result in undefined behavior [bugprone-std-namespace-modification,-warnings-as-errors]2507 184 | struct std::formatter<std::filesystem::path, char> {2508 | ^2509/build/source/wren_utils/include/wren/utils/macros.hpp:17:39: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2510 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2511 | ^2512 | ( )2513/build/source/wren_utils/include/wren/utils/result.hpp:112:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2514 112 | auto unique = (expr); \2515 | ^2516 | ( )2517/build/source/wren_utils/include/wren/utils/result.hpp:113:53: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2518 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2519 | ^ 2520 | ( )2521/build/source/wren_utils/include/wren/utils/result.hpp:118:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2522 118 | out = std::move((unique).value());2523 | ^2524 | ( )2525/build/source/wren_utils/include/wren/utils/result.hpp:127:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2526 127 | auto unique = (expr); \2527 | ^2528 | ( )2529/build/source/wren_utils/include/wren/utils/result.hpp:133:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2530 133 | out = (unique).value();2531 | ^2532 | ( )2533