lint-0.1.0
checks.x86_64-linux.lint
· build #45
· raw
unpackPhase
1unpacking source archive /nix/store/ymb7zkkk64m94hixxxa7ca69j7lp867h-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.4s)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][24.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/input.cpp29/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]30 32 | if (case_insensitive && boost::iequals(name, described)) {31 | ^32/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original33 35 | } else if (!case_insensitive && name == described) {34 | ^35/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here36 35 | } else if (!case_insensitive && name == described) {37 | ^3839[ 2/47][25.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_physics/src/ray.cpp40/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]41 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}42 | ^43/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here44 198 | struct Vec4f : Vec<float, 4> {45 | ^46/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here4748[ 3/47][33.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/scene/scene.cpp49/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]50 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}51 | ^52/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here53 198 | struct Vec4f : Vec<float, 4> {54 | ^55/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here5657[ 4/47][43.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/event.cpp58/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]59 32 | if (case_insensitive && boost::iequals(name, described)) {60 | ^61/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original62 35 | } else if (!case_insensitive && name == described) {63 | ^64/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here65 35 | } else if (!case_insensitive && name == described) {66 | ^6768[ 5/47][48.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/src/filesystem.cpp69/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]70 32 | if (case_insensitive && boost::iequals(name, described)) {71 | ^72/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original73 35 | } else if (!case_insensitive && name == described) {74 | ^75/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here76 35 | } else if (!case_insensitive && name == described) {77 | ^78/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]79 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));80 | ^81 | ( )82/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]83 112 | auto unique = (expr); \84 | ^85 | ( )86/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]87 113 | if (!(unique).has_value()) return std::unexpected(unique.error());88 | ^ 89 | ( )90/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]91 118 | out = std::move((unique).value());92 | ^93 | ( )94/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]95 125 | auto unique = (expr); \96 | ^97 | ( )98/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]99 126 | if (!(unique).has_value()) throw unique.error();100 | ^ 101 | ( )102/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]103 131 | out = (unique).value();104 | ^105 | ( )106107[ 6/47][51.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_text/src/font.cpp108/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]109 34 | FcPattern* pat = FcNameParse((FcChar8* const)(font.data()));110 | ^111/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]112/build/source/wren_text/src/font.cpp:43:43: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]113 43 | font_path = std::filesystem::path{reinterpret_cast<char*>(file)};114 | ^115/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]116 32 | if (case_insensitive && boost::iequals(name, described)) {117 | ^118/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original119 35 | } else if (!case_insensitive && name == described) {120 | ^121/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here122 35 | } else if (!case_insensitive && name == described) {123 | ^124/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]125 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));126 | ^127 | ( )128/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]129 112 | auto unique = (expr); \130 | ^131 | ( )132/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]133 113 | if (!(unique).has_value()) return std::unexpected(unique.error());134 | ^ 135 | ( )136/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]137 118 | out = std::move((unique).value());138 | ^139 | ( )140/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]141 125 | auto unique = (expr); \142 | ^143 | ( )144/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]145 126 | if (!(unique).has_value()) throw unique.error();146 | ^ 147 | ( )148/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]149 131 | out = (unique).value();150 | ^151 | ( )152153[ 7/47][52.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_math/tests/geometry.cpp154/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]155 11 | struct std::formatter<wren::math::Vec<T, N>, char> {156 | ^157/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]158 29 | struct std::formatter<wren::math::Mat<T, Rows, Cols>, char> {159 | ^160/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]161 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}162 | ^163/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here164 198 | struct Vec4f : Vec<float, 4> {165 | ^166/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here167/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]168 12 | struct std::formatter<T, char> {169 | ^170/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]171 66 | struct std::formatter<T, char> {172 | ^173/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]174 97 | struct std::formatter<std::vector<T>, char> {175 | ^176/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]177 126 | struct std::formatter<std::array<T, N>, char> {178 | ^179/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]180 155 | struct std::formatter<std::map<Key, Val>, char> {181 | ^182/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]183 184 | struct std::formatter<std::filesystem::path, char> {184 | ^185186[ 8/47][52.8s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/tests/enums.cpp187/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]188 32 | if (case_insensitive && boost::iequals(name, described)) {189 | ^190/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original191 35 | } else if (!case_insensitive && name == described) {192 | ^193/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here194 35 | } else if (!case_insensitive && name == described) {195 | ^196/build/source/wren_utils/tests/enums.cpp:20:14: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]197 20 | BOOST_TEST(res.value() == TestEnums::Case1);198 | ^199/build/source/wren_utils/tests/enums.cpp:26:14: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]200 26 | BOOST_TEST(res.value() == TestEnums::Case2);201 | ^202/build/source/wren_utils/tests/enums.cpp:30:14: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]203 30 | BOOST_TEST(res.value() == TestEnums::Case1);204 | ^205206[ 9/47][3.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/src/string_reader.cpp207[10/47][55.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_math/tests/vector.cpp208/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]209 11 | struct std::formatter<wren::math::Vec<T, N>, char> {210 | ^211/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]212 29 | struct std::formatter<wren::math::Mat<T, Rows, Cols>, char> {213 | ^214/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]215 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}216 | ^217/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here218 198 | struct Vec4f : Vec<float, 4> {219 | ^220/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here221/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]222 12 | struct std::formatter<T, char> {223 | ^224/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]225 66 | struct std::formatter<T, char> {226 | ^227/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]228 97 | struct std::formatter<std::vector<T>, char> {229 | ^230/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]231 126 | struct std::formatter<std::array<T, N>, char> {232 | ^233/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]234 155 | struct std::formatter<std::map<Key, Val>, char> {235 | ^236/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]237 184 | struct std::formatter<std::filesystem::path, char> {238 | ^239240[11/47][9.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/src/string.cpp241[12/47][39.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/tests/string_reader.cpp242[13/47][46.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/assets/manager.cpp243/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]244 32 | if (case_insensitive && boost::iequals(name, described)) {245 | ^246/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original247 35 | } else if (!case_insensitive && name == described) {248 | ^249/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here250 35 | } else if (!case_insensitive && name == described) {251 | ^252/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]253 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));254 | ^255 | ( )256/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]257 112 | auto unique = (expr); \258 | ^259 | ( )260/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]261 113 | if (!(unique).has_value()) return std::unexpected(unique.error());262 | ^ 263 | ( )264/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]265 118 | out = std::move((unique).value());266 | ^267 | ( )268/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]269 125 | auto unique = (expr); \270 | ^271 | ( )272/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]273 126 | if (!(unique).has_value()) throw unique.error();274 | ^ 275 | ( )276/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]277 131 | out = (unique).value();278 | ^279 | ( )280281[14/47][107.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/inspector_panel.cpp282/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]283 77 | mesh_renderer.update_mesh(ctx.project_path, new_file);284 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~285/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]286 77 | mesh_renderer.update_mesh(ctx.project_path, new_file);287 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~288/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]289 91 | ImGui::LabelText("##name", "%s", tag.data());290 | ~~~~^~~~291/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]292 96 | if (ImGui::DragFloat(("##x" + std::string(tag.data())).c_str(), &x, 0.1F))293 | ~~~~^~~~294/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]295 103 | if (ImGui::DragFloat(("##y" + std::string(tag.data())).c_str(), &y, 0.1F))296 | ~~~~^~~~297/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]298 110 | if (ImGui::DragFloat(("##z" + std::string(tag.data())).c_str(), &z, 0.1F))299 | ~~~~^~~~300/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]301 26 | const std::array kTriangleVertices = {302 | ^303/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here304 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}305 | ^306/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]307 32 | const std::array kQuadVertices = {308 | ^309/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here310 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}311 | ^312/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]313 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};314 | ^315/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here316 698 | vector(initializer_list<value_type> __l,317 | ^318/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]319 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {320 | ^ 321 | != 0322/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]323 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {324 | ~~~~~^~~~325/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]326 56 | if (std::strcmp(ext.layerName, name.data())) {327 | ^ 328 | != 0329/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]330 56 | if (std::strcmp(ext.layerName, name.data())) {331 | ~~~~~^~~~332/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]333 71 | if (std::strcmp(ext.extensionName, name.data())) {334 | ^ 335 | != 0336/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]337 71 | if (std::strcmp(ext.extensionName, name.data())) {338 | ~~~~~^~~~339/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]340 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}341 | ^342/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here343 198 | struct Vec4f : Vec<float, 4> {344 | ^345/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here346/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]347 32 | if (case_insensitive && boost::iequals(name, described)) {348 | ^349/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original350 35 | } else if (!case_insensitive && name == described) {351 | ^352/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here353 35 | } else if (!case_insensitive && name == described) {354 | ^355/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]356 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));357 | ^358 | ( )359/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]360 112 | auto unique = (expr); \361 | ^362 | ( )363/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]364 113 | if (!(unique).has_value()) return std::unexpected(unique.error());365 | ^ 366 | ( )367/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]368 118 | out = std::move((unique).value());369 | ^370 | ( )371/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]372 125 | auto unique = (expr); \373 | ^374 | ( )375/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]376 126 | if (!(unique).has_value()) throw unique.error();377 | ^ 378 | ( )379/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]380 131 | out = (unique).value();381 | ^382 | ( )383384[15/47][56.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_math/tests/matrix.cpp385/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]386 11 | struct std::formatter<wren::math::Vec<T, N>, char> {387 | ^388/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]389 29 | struct std::formatter<wren::math::Mat<T, Rows, Cols>, char> {390 | ^391/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]392 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}393 | ^394/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here395 198 | struct Vec4f : Vec<float, 4> {396 | ^397/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here398/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]399 21 | std::array<float, 4 * 4> identity = {400 | ^401/build/source/wren_math/tests/matrix.cpp:21:21: note: make conversion explicit to silence this warning402 2 | std::array<float, 4 * 4> identity = {403 | ^~~~~404 | static_cast<std::size_t>( )405/build/source/wren_math/tests/matrix.cpp:21:21: note: perform multiplication in a wider type406 21 | std::array<float, 4 * 4> identity = {407 | ^408 | static_cast<long>( )409/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]410 12 | struct std::formatter<T, char> {411 | ^412/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]413 66 | struct std::formatter<T, char> {414 | ^415/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]416 97 | struct std::formatter<std::vector<T>, char> {417 | ^418/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]419 126 | struct std::formatter<std::array<T, N>, char> {420 | ^421/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]422 155 | struct std::formatter<std::map<Key, Val>, char> {423 | ^424/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]425 184 | struct std::formatter<std::filesystem::path, char> {426 | ^427428[16/47][123.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/mesh.cpp429/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]430 26 | const std::array kTriangleVertices = {431 | ^432/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here433 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}434 | ^435/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]436 32 | const std::array kQuadVertices = {437 | ^438/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here439 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}440 | ^441/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]442 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};443 | ^444/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here445 698 | vector(initializer_list<value_type> __l,446 | ^447/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]448 29 | staging_buffer->set_data_raw<Vertex>(data);449 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~450/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]451 29 | staging_buffer->set_data_raw<Vertex>(data);452 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~453/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]454 35 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),455 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~456 36 | device.command_pool(), staging_buffer,457 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~458 37 | vertex_buffer_, data.size_bytes());459 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~460/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]461 35 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),462 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~463 36 | device.command_pool(), staging_buffer,464 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~465 37 | vertex_buffer_, data.size_bytes());466 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~467/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]468 50 | staging_buffer->set_data_raw<uint16_t>(data);469 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~470/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]471 50 | staging_buffer->set_data_raw<uint16_t>(data);472 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~473/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]474 56 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),475 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~476 57 | device.command_pool(), staging_buffer,477 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~478 58 | index_buffer_, data.size_bytes());479 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~480/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]481 56 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),482 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~483 57 | device.command_pool(), staging_buffer,484 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~485 58 | index_buffer_, data.size_bytes());486 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~487/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]488 69 | uniform_buffer_->set_data_raw(&ubo, size);489 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~490/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]491 69 | uniform_buffer_->set_data_raw(&ubo, size);492 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~493/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]494 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}495 | ^496/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here497 198 | struct Vec4f : Vec<float, 4> {498 | ^499/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here500/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]501 32 | if (case_insensitive && boost::iequals(name, described)) {502 | ^503/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original504 35 | } else if (!case_insensitive && name == described) {505 | ^506/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here507 35 | } else if (!case_insensitive && name == described) {508 | ^509/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]510 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));511 | ^512 | ( )513/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]514 112 | auto unique = (expr); \515 | ^516 | ( )517/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]518 113 | if (!(unique).has_value()) return std::unexpected(unique.error());519 | ^ 520 | ( )521/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]522 118 | out = std::move((unique).value());523 | ^524 | ( )525/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]526 125 | auto unique = (expr); \527 | ^528 | ( )529/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]530 126 | if (!(unique).has_value()) throw unique.error();531 | ^ 532 | ( )533/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]534 131 | out = (unique).value();535 | ^536 | ( )537538[17/47][129.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/buffer.cpp539/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]540 32 | if (case_insensitive && boost::iequals(name, described)) {541 | ^542/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original543 35 | } else if (!case_insensitive && name == described) {544 | ^545/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here546 35 | } else if (!case_insensitive && name == described) {547 | ^548/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]549 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));550 | ^551 | ( )552/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]553 112 | auto unique = (expr); \554 | ^555 | ( )556/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]557 113 | if (!(unique).has_value()) return std::unexpected(unique.error());558 | ^ 559 | ( )560/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]561 118 | out = std::move((unique).value());562 | ^563 | ( )564/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]565 125 | auto unique = (expr); \566 | ^567 | ( )568/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]569 126 | if (!(unique).has_value()) throw unique.error();570 | ^ 571 | ( )572/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]573 131 | out = (unique).value();574 | ^575 | ( )576577[18/47][136.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/graph.cpp578/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]579 26 | const std::array kTriangleVertices = {580 | ^581/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here582 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}583 | ^584/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]585 32 | const std::array kQuadVertices = {586 | ^587/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here588 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}589 | ^590/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]591 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};592 | ^593/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here594 698 | vector(initializer_list<value_type> __l,595 | ^596/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]597 67 | ::vk::SampleCountFlagBits sample_count_{};598 | ^599/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here600 2655 | enum class SampleCountFlagBits : VkSampleCountFlags601 | ^602/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]603 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {604 | ^ 605 | != 0606/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]607 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {608 | ~~~~~^~~~609/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]610 56 | if (std::strcmp(ext.layerName, name.data())) {611 | ^ 612 | != 0613/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]614 56 | if (std::strcmp(ext.layerName, name.data())) {615 | ~~~~~^~~~616/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]617 71 | if (std::strcmp(ext.extensionName, name.data())) {618 | ^ 619 | != 0620/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]621 71 | if (std::strcmp(ext.extensionName, name.data())) {622 | ~~~~~^~~~623/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]624 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}625 | ^626/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here627 198 | struct Vec4f : Vec<float, 4> {628 | ^629/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here630/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]631 32 | if (case_insensitive && boost::iequals(name, described)) {632 | ^633/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original634 35 | } else if (!case_insensitive && name == described) {635 | ^636/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here637 35 | } else if (!case_insensitive && name == described) {638 | ^639/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]640 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));641 | ^642 | ( )643/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]644 112 | auto unique = (expr); \645 | ^646 | ( )647/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]648 113 | if (!(unique).has_value()) return std::unexpected(unique.error());649 | ^ 650 | ( )651/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]652 118 | out = std::move((unique).value());653 | ^654 | ( )655/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]656 125 | auto unique = (expr); \657 | ^658 | ( )659/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]660 126 | if (!(unique).has_value()) throw unique.error();661 | ^ 662 | ( )663/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]664 131 | out = (unique).value();665 | ^666 | ( )667668[19/47][140.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/renderer.cpp669/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]670 26 | const std::array kTriangleVertices = {671 | ^672/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here673 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}674 | ^675/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]676 32 | const std::array kQuadVertices = {677 | ^678/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here679 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}680 | ^681/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]682 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};683 | ^684/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here685 698 | vector(initializer_list<value_type> __l,686 | ^687/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]688 67 | ::vk::SampleCountFlagBits sample_count_{};689 | ^690/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here691 2655 | enum class SampleCountFlagBits : VkSampleCountFlags692 | ^693/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]694 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {695 | ^ 696 | != 0697/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]698 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {699 | ~~~~~^~~~700/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]701 56 | if (std::strcmp(ext.layerName, name.data())) {702 | ^ 703 | != 0704/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]705 56 | if (std::strcmp(ext.layerName, name.data())) {706 | ~~~~~^~~~707/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]708 71 | if (std::strcmp(ext.extensionName, name.data())) {709 | ^ 710 | != 0711/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]712 71 | if (std::strcmp(ext.extensionName, name.data())) {713 | ~~~~~^~~~714/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]715 49 | render_targets_.at(kSwapchainRendertargetName.data())716 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~717/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]718 196 | if (render_targets_.contains(kSwapchainRendertargetName.data())) {719 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~720/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]721 290 | if (!render_targets_.contains(kSwapchainRendertargetName.data())) {722 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~723/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]724 301 | const auto& target = render_targets_.at(kSwapchainRendertargetName.data());725 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~726/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]727 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}728 | ^729/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here730 198 | struct Vec4f : Vec<float, 4> {731 | ^732/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here733/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]734 37 | return level.value();735 | ^~~~~736/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]737 32 | if (case_insensitive && boost::iequals(name, described)) {738 | ^739/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original740 35 | } else if (!case_insensitive && name == described) {741 | ^742/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here743 35 | } else if (!case_insensitive && name == described) {744 | ^745/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]746 12 | struct std::formatter<T, char> {747 | ^748/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]749 66 | struct std::formatter<T, char> {750 | ^751/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]752 97 | struct std::formatter<std::vector<T>, char> {753 | ^754/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]755 126 | struct std::formatter<std::array<T, N>, char> {756 | ^757/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]758 155 | struct std::formatter<std::map<Key, Val>, char> {759 | ^760/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]761 184 | struct std::formatter<std::filesystem::path, char> {762 | ^763/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]764 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));765 | ^766 | ( )767/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]768 112 | auto unique = (expr); \769 | ^770 | ( )771/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]772 113 | if (!(unique).has_value()) return std::unexpected(unique.error());773 | ^ 774 | ( )775/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]776 118 | out = std::move((unique).value());777 | ^778 | ( )779/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]780 125 | auto unique = (expr); \781 | ^782 | ( )783/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]784 126 | if (!(unique).has_value()) throw unique.error();785 | ^ 786 | ( )787/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]788 131 | out = (unique).value();789 | ^790 | ( )791792[20/47][7.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_math/src/geometry.cpp793/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 here800801[21/47][98.1s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/vulkan.cpp802[22/47][45.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_utils/tests/binary_reader.cpp803[23/47][156.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/utils/vulkan.cpp804/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]805 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {806 | ^ 807 | != 0808/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]809 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {810 | ~~~~~^~~~811/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]812 56 | if (std::strcmp(ext.layerName, name.data())) {813 | ^ 814 | != 0815/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]816 56 | if (std::strcmp(ext.layerName, name.data())) {817 | ~~~~~^~~~818/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]819 71 | if (std::strcmp(ext.extensionName, name.data())) {820 | ^ 821 | != 0822/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]823 71 | if (std::strcmp(ext.extensionName, name.data())) {824 | ~~~~~^~~~825/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]826 37 | return level.value();827 | ^~~~~828/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]829 32 | if (case_insensitive && boost::iequals(name, described)) {830 | ^831/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original832 35 | } else if (!case_insensitive && name == described) {833 | ^834/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here835 35 | } else if (!case_insensitive && name == described) {836 | ^837/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]838 12 | struct std::formatter<T, char> {839 | ^840/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]841 66 | struct std::formatter<T, char> {842 | ^843/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]844 97 | struct std::formatter<std::vector<T>, char> {845 | ^846/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]847 126 | struct std::formatter<std::array<T, N>, char> {848 | ^849/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]850 155 | struct std::formatter<std::map<Key, Val>, char> {851 | ^852/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]853 184 | struct std::formatter<std::filesystem::path, char> {854 | ^855/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]856 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));857 | ^858 | ( )859/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]860 112 | auto unique = (expr); \861 | ^862 | ( )863/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]864 113 | if (!(unique).has_value()) return std::unexpected(unique.error());865 | ^ 866 | ( )867/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]868 118 | out = std::move((unique).value());869 | ^870 | ( )871/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]872 125 | auto unique = (expr); \873 | ^874 | ( )875/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]876 126 | if (!(unique).has_value()) throw unique.error();877 | ^ 878 | ( )879/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]880 131 | out = (unique).value();881 | ^882 | ( )883884[24/47][158.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/render_pass.cpp885/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]886 26 | const std::array kTriangleVertices = {887 | ^888/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here889 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}890 | ^891/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]892 32 | const std::array kQuadVertices = {893 | ^894/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here895 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}896 | ^897/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]898 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};899 | ^900/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here901 698 | vector(initializer_list<value_type> __l,902 | ^903/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]904 67 | ::vk::SampleCountFlagBits sample_count_{};905 | ^906/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here907 2655 | enum class SampleCountFlagBits : VkSampleCountFlags908 | ^909/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]910 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {911 | ^ 912 | != 0913/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]914 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {915 | ~~~~~^~~~916/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]917 56 | if (std::strcmp(ext.layerName, name.data())) {918 | ^ 919 | != 0920/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]921 56 | if (std::strcmp(ext.layerName, name.data())) {922 | ~~~~~^~~~923/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]924 71 | if (std::strcmp(ext.extensionName, name.data())) {925 | ^ 926 | != 0927/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]928 71 | if (std::strcmp(ext.extensionName, name.data())) {929 | ~~~~~^~~~930/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]931 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}932 | ^933/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here934 198 | struct Vec4f : Vec<float, 4> {935 | ^936/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here937/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]938 37 | return level.value();939 | ^~~~~940/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]941 32 | if (case_insensitive && boost::iequals(name, described)) {942 | ^943/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original944 35 | } else if (!case_insensitive && name == described) {945 | ^946/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here947 35 | } else if (!case_insensitive && name == described) {948 | ^949/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]950 12 | struct std::formatter<T, char> {951 | ^952/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]953 66 | struct std::formatter<T, char> {954 | ^955/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]956 97 | struct std::formatter<std::vector<T>, char> {957 | ^958/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]959 126 | struct std::formatter<std::array<T, N>, char> {960 | ^961/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]962 155 | struct std::formatter<std::map<Key, Val>, char> {963 | ^964/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]965 184 | struct std::formatter<std::filesystem::path, char> {966 | ^967/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]968 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));969 | ^970 | ( )971/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]972 112 | auto unique = (expr); \973 | ^974 | ( )975/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]976 113 | if (!(unique).has_value()) return std::unexpected(unique.error());977 | ^ 978 | ( )979/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]980 118 | out = std::move((unique).value());981 | ^982 | ( )983/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]984 125 | auto unique = (expr); \985 | ^986 | ( )987/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]988 126 | if (!(unique).has_value()) throw unique.error();989 | ^ 990 | ( )991/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]992 131 | out = (unique).value();993 | ^994 | ( )995996[25/47][147.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/graphics_context.cpp997/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]998 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {999 | ^ 1000 | != 01001/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]1002 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1003 | ~~~~~^~~~1004/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]1005 56 | if (std::strcmp(ext.layerName, name.data())) {1006 | ^ 1007 | != 01008/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]1009 56 | if (std::strcmp(ext.layerName, name.data())) {1010 | ~~~~~^~~~1011/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]1012 71 | if (std::strcmp(ext.extensionName, name.data())) {1013 | ^ 1014 | != 01015/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]1016 71 | if (std::strcmp(ext.extensionName, name.data())) {1017 | ~~~~~^~~~1018/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1019 37 | return level.value();1020 | ^~~~~1021/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1022 32 | if (case_insensitive && boost::iequals(name, described)) {1023 | ^1024/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1025 35 | } else if (!case_insensitive && name == described) {1026 | ^1027/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1028 35 | } else if (!case_insensitive && name == described) {1029 | ^1030/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]1031 12 | struct std::formatter<T, char> {1032 | ^1033/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]1034 66 | struct std::formatter<T, char> {1035 | ^1036/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]1037 97 | struct std::formatter<std::vector<T>, char> {1038 | ^1039/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]1040 126 | struct std::formatter<std::array<T, N>, char> {1041 | ^1042/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]1043 155 | struct std::formatter<std::map<Key, Val>, char> {1044 | ^1045/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]1046 184 | struct std::formatter<std::filesystem::path, char> {1047 | ^1048/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]1049 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1050 | ^1051 | ( )1052/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]1053 112 | auto unique = (expr); \1054 | ^1055 | ( )1056/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]1057 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1058 | ^ 1059 | ( )1060/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]1061 118 | out = std::move((unique).value());1062 | ^1063 | ( )1064/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1065 125 | auto unique = (expr); \1066 | ^1067 | ( )1068/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1069 126 | if (!(unique).has_value()) throw unique.error();1070 | ^ 1071 | ( )1072/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1073 131 | out = (unique).value();1074 | ^1075 | ( )10761077[26/47][37.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_text/tests/font.cpp1078/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1079 32 | if (case_insensitive && boost::iequals(name, described)) {1080 | ^1081/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1082 35 | } else if (!case_insensitive && name == described) {1083 | ^1084/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1085 35 | } else if (!case_insensitive && name == described) {1086 | ^1087/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]1088 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1089 | ^1090 | ( )1091/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]1092 112 | auto unique = (expr); \1093 | ^1094 | ( )1095/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]1096 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1097 | ^ 1098 | ( )1099/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]1100 118 | out = std::move((unique).value());1101 | ^1102 | ( )1103/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1104 125 | auto unique = (expr); \1105 | ^1106 | ( )1107/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1108 126 | if (!(unique).has_value()) throw unique.error();1109 | ^ 1110 | ( )1111/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1112 131 | out = (unique).value();1113 | ^1114 | ( )11151116[27/47][156.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/application.cpp1117/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]1118 26 | const std::array kTriangleVertices = {1119 | ^1120/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1121 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1122 | ^1123/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]1124 32 | const std::array kQuadVertices = {1125 | ^1126/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1127 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1128 | ^1129/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]1130 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1131 | ^1132/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1133 698 | vector(initializer_list<value_type> __l,1134 | ^1135/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]1136 67 | ::vk::SampleCountFlagBits sample_count_{};1137 | ^1138/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here1139 2655 | enum class SampleCountFlagBits : VkSampleCountFlags1140 | ^1141/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]1142 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1143 | ^ 1144 | != 01145/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]1146 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1147 | ~~~~~^~~~1148/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]1149 56 | if (std::strcmp(ext.layerName, name.data())) {1150 | ^ 1151 | != 01152/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]1153 56 | if (std::strcmp(ext.layerName, name.data())) {1154 | ~~~~~^~~~1155/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]1156 71 | if (std::strcmp(ext.extensionName, name.data())) {1157 | ^ 1158 | != 01159/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]1160 71 | if (std::strcmp(ext.extensionName, name.data())) {1161 | ~~~~~^~~~1162/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]1163 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1164 | ^1165/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1166 198 | struct Vec4f : Vec<float, 4> {1167 | ^1168/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1169/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1170 37 | return level.value();1171 | ^~~~~1172/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1173 32 | if (case_insensitive && boost::iequals(name, described)) {1174 | ^1175/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1176 35 | } else if (!case_insensitive && name == described) {1177 | ^1178/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1179 35 | } else if (!case_insensitive && name == described) {1180 | ^1181/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]1182 12 | struct std::formatter<T, char> {1183 | ^1184/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]1185 66 | struct std::formatter<T, char> {1186 | ^1187/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]1188 97 | struct std::formatter<std::vector<T>, char> {1189 | ^1190/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]1191 126 | struct std::formatter<std::array<T, N>, char> {1192 | ^1193/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]1194 155 | struct std::formatter<std::map<Key, Val>, char> {1195 | ^1196/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]1197 184 | struct std::formatter<std::filesystem::path, char> {1198 | ^1199/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]1200 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1201 | ^1202 | ( )1203/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]1204 112 | auto unique = (expr); \1205 | ^1206 | ( )1207/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]1208 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1209 | ^ 1210 | ( )1211/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]1212 118 | out = std::move((unique).value());1213 | ^1214 | ( )1215/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1216 125 | auto unique = (expr); \1217 | ^1218 | ( )1219/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1220 126 | if (!(unique).has_value()) throw unique.error();1221 | ^ 1222 | ( )1223/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1224 131 | out = (unique).value();1225 | ^1226 | ( )12271228[28/47][28.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/scene_panel.cpp1229/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]1230 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1231 | ^1232/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1233 198 | struct Vec4f : Vec<float, 4> {1234 | ^1235/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here12361237[29/47][16.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/memory.cpp1238[30/47][26.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/scene/components/collider.cpp1239/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]1240 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1241 | ^1242/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1243 198 | struct Vec4f : Vec<float, 4> {1244 | ^1245/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here12461247[31/47][55.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_physics/tests/raycast.cpp1248/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]1249 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1250 | ^1251/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1252 198 | struct Vec4f : Vec<float, 4> {1253 | ^1254/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here12551256[32/47][155.2s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/mesh_loader.cpp1257/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]1258 26 | const std::array kTriangleVertices = {1259 | ^1260/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1261 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1262 | ^1263/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]1264 32 | const std::array kQuadVertices = {1265 | ^1266/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1267 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1268 | ^1269/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]1270 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1271 | ^1272/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1273 698 | vector(initializer_list<value_type> __l,1274 | ^1275/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]1276 33 | vertices.reserve(triangles * 3);1277 | ^1278/build/source/wren/src/mesh_loader.cpp:33:20: note: make conversion explicit to silence this warning1279 4 | vertices.reserve(triangles * 3);1280 | ^~~~~~~~~~~~~1281 | static_cast<size_type>( )1282/build/source/wren/src/mesh_loader.cpp:33:20: note: perform multiplication in a wider type1283 33 | vertices.reserve(triangles * 3);1284 | ^~~~~~~~~1285 | static_cast<size_type>( )1286/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]1287 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1288 | ^1289/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1290 198 | struct Vec4f : Vec<float, 4> {1291 | ^1292/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1293/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1294 37 | return level.value();1295 | ^~~~~1296/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1297 32 | if (case_insensitive && boost::iequals(name, described)) {1298 | ^1299/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1300 35 | } else if (!case_insensitive && name == described) {1301 | ^1302/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1303 35 | } else if (!case_insensitive && name == described) {1304 | ^1305/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]1306 12 | struct std::formatter<T, char> {1307 | ^1308/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]1309 66 | struct std::formatter<T, char> {1310 | ^1311/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]1312 97 | struct std::formatter<std::vector<T>, char> {1313 | ^1314/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]1315 126 | struct std::formatter<std::array<T, N>, char> {1316 | ^1317/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]1318 155 | struct std::formatter<std::map<Key, Val>, char> {1319 | ^1320/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]1321 184 | struct std::formatter<std::filesystem::path, char> {1322 | ^1323/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]1324 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1325 | ^1326 | ( )1327/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]1328 112 | auto unique = (expr); \1329 | ^1330 | ( )1331/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]1332 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1333 | ^ 1334 | ( )1335/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]1336 118 | out = std::move((unique).value());1337 | ^1338 | ( )1339/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1340 125 | auto unique = (expr); \1341 | ^1342 | ( )1343/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1344 126 | if (!(unique).has_value()) throw unique.error();1345 | ^ 1346 | ( )1347/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1348 131 | out = (unique).value();1349 | ^1350 | ( )13511352[33/47][155.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/window.cpp1353/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]1354 283 | switch (event.type) {1355 | ^1356/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1357 37 | return level.value();1358 | ^~~~~1359/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1360 32 | if (case_insensitive && boost::iequals(name, described)) {1361 | ^1362/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1363 35 | } else if (!case_insensitive && name == described) {1364 | ^1365/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1366 35 | } else if (!case_insensitive && name == described) {1367 | ^1368/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]1369 12 | struct std::formatter<T, char> {1370 | ^1371/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]1372 66 | struct std::formatter<T, char> {1373 | ^1374/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]1375 97 | struct std::formatter<std::vector<T>, char> {1376 | ^1377/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]1378 126 | struct std::formatter<std::array<T, N>, char> {1379 | ^1380/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]1381 155 | struct std::formatter<std::map<Key, Val>, char> {1382 | ^1383/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]1384 184 | struct std::formatter<std::filesystem::path, char> {1385 | ^1386/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]1387 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1388 | ^1389 | ( )1390/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]1391 112 | auto unique = (expr); \1392 | ^1393 | ( )1394/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]1395 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1396 | ^ 1397 | ( )1398/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]1399 118 | out = std::move((unique).value());1400 | ^1401 | ( )1402/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1403 125 | auto unique = (expr); \1404 | ^1405 | ( )1406/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1407 126 | if (!(unique).has_value()) throw unique.error();1408 | ^ 1409 | ( )1410/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1411 131 | out = (unique).value();1412 | ^1413 | ( )14141415[34/47][113.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/texture.cpp1416/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]1417 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1418 | ^1419/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1420 198 | struct Vec4f : Vec<float, 4> {1421 | ^1422/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1423/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1424 32 | if (case_insensitive && boost::iequals(name, described)) {1425 | ^1426/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1427 35 | } else if (!case_insensitive && name == described) {1428 | ^1429/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1430 35 | } else if (!case_insensitive && name == described) {1431 | ^1432/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]1433 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1434 | ^1435 | ( )1436/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]1437 112 | auto unique = (expr); \1438 | ^1439 | ( )1440/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]1441 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1442 | ^ 1443 | ( )1444/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]1445 118 | out = std::move((unique).value());1446 | ^1447 | ( )1448/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1449 125 | auto unique = (expr); \1450 | ^1451 | ( )1452/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1453 126 | if (!(unique).has_value()) throw unique.error();1454 | ^ 1455 | ( )1456/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1457 131 | out = (unique).value();1458 | ^1459 | ( )14601461[35/47][179.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/editor.cpp1462/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]1463 26 | const std::array kTriangleVertices = {1464 | ^1465/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1466 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1467 | ^1468/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]1469 32 | const std::array kQuadVertices = {1470 | ^1471/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1472 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1473 | ^1474/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]1475 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1476 | ^1477/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1478 698 | vector(initializer_list<value_type> __l,1479 | ^1480/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]1481 67 | ::vk::SampleCountFlagBits sample_count_{};1482 | ^1483/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here1484 2655 | enum class SampleCountFlagBits : VkSampleCountFlags1485 | ^1486/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]1487 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1488 | ^ 1489 | != 01490/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]1491 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1492 | ~~~~~^~~~1493/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]1494 56 | if (std::strcmp(ext.layerName, name.data())) {1495 | ^ 1496 | != 01497/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]1498 56 | if (std::strcmp(ext.layerName, name.data())) {1499 | ~~~~~^~~~1500/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]1501 71 | if (std::strcmp(ext.extensionName, name.data())) {1502 | ^ 1503 | != 01504/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]1505 71 | if (std::strcmp(ext.extensionName, name.data())) {1506 | ~~~~~^~~~1507/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]1508 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1509 | ^1510/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1511 198 | struct Vec4f : Vec<float, 4> {1512 | ^1513/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1514/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1515 37 | return level.value();1516 | ^~~~~1517/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1518 32 | if (case_insensitive && boost::iequals(name, described)) {1519 | ^1520/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1521 35 | } else if (!case_insensitive && name == described) {1522 | ^1523/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1524 35 | } else if (!case_insensitive && name == described) {1525 | ^1526/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]1527 12 | struct std::formatter<T, char> {1528 | ^1529/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]1530 66 | struct std::formatter<T, char> {1531 | ^1532/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]1533 97 | struct std::formatter<std::vector<T>, char> {1534 | ^1535/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]1536 126 | struct std::formatter<std::array<T, N>, char> {1537 | ^1538/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]1539 155 | struct std::formatter<std::map<Key, Val>, char> {1540 | ^1541/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]1542 184 | struct std::formatter<std::filesystem::path, char> {1543 | ^1544/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]1545 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1546 | ^1547 | ( )1548/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]1549 112 | auto unique = (expr); \1550 | ^1551 | ( )1552/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]1553 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1554 | ^ 1555 | ( )1556/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]1557 118 | out = std::move((unique).value());1558 | ^1559 | ( )1560/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1561 125 | auto unique = (expr); \1562 | ^1563 | ( )1564/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1565 126 | if (!(unique).has_value()) throw unique.error();1566 | ^ 1567 | ( )1568/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1569 131 | out = (unique).value();1570 | ^1571 | ( )15721573[36/47][153.6s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/ui.cpp1574/build/source/editor/src/ui.cpp:47:5: error: switch has 10 consecutive identical branches [bugprone-branch-clone,-warnings-as-errors]1575 47 | case wren::KeyCode::KExclaim:1576 | ^1577/build/source/editor/src/ui.cpp:66:37: note: last of these clones ends here1578 66 | return ImGuiKey::ImGuiKey_None; // FIXME1579 | ^1580/build/source/editor/src/ui.cpp:102:5: error: switch has 2 consecutive identical branches [bugprone-branch-clone,-warnings-as-errors]1581 102 | case wren::KeyCode::KQuestion:1582 | ^1583/build/source/editor/src/ui.cpp:105:37: note: last of these clones ends here1584 105 | return ImGuiKey::ImGuiKey_None; // FIXME1585 | ^1586/build/source/editor/src/ui.cpp:114:5: error: switch has 2 consecutive identical branches [bugprone-branch-clone,-warnings-as-errors]1587 114 | case wren::KeyCode::KUnderscore:1588 | ^1589/build/source/editor/src/ui.cpp:117:37: note: last of these clones ends here1590 117 | return ImGuiKey::ImGuiKey_None;1591 | ^1592/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]1593 283 | [&io](const auto& e) { io.AddInputCharactersUTF8(e.text.data()); });1594 | ~~~~~~~^~~~1595/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]1596 26 | const std::array kTriangleVertices = {1597 | ^1598/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1599 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1600 | ^1601/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]1602 32 | const std::array kQuadVertices = {1603 | ^1604/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1605 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1606 | ^1607/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]1608 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1609 | ^1610/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1611 698 | vector(initializer_list<value_type> __l,1612 | ^1613/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]1614 67 | ::vk::SampleCountFlagBits sample_count_{};1615 | ^1616/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here1617 2655 | enum class SampleCountFlagBits : VkSampleCountFlags1618 | ^1619/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]1620 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1621 | ^ 1622 | != 01623/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]1624 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1625 | ~~~~~^~~~1626/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]1627 56 | if (std::strcmp(ext.layerName, name.data())) {1628 | ^ 1629 | != 01630/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]1631 56 | if (std::strcmp(ext.layerName, name.data())) {1632 | ~~~~~^~~~1633/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]1634 71 | if (std::strcmp(ext.extensionName, name.data())) {1635 | ^ 1636 | != 01637/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]1638 71 | if (std::strcmp(ext.extensionName, name.data())) {1639 | ~~~~~^~~~1640/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]1641 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1642 | ^1643/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1644 198 | struct Vec4f : Vec<float, 4> {1645 | ^1646/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1647/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1648 37 | return level.value();1649 | ^~~~~1650/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1651 32 | if (case_insensitive && boost::iequals(name, described)) {1652 | ^1653/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1654 35 | } else if (!case_insensitive && name == described) {1655 | ^1656/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1657 35 | } else if (!case_insensitive && name == described) {1658 | ^1659/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]1660 12 | struct std::formatter<T, char> {1661 | ^1662/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]1663 66 | struct std::formatter<T, char> {1664 | ^1665/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]1666 97 | struct std::formatter<std::vector<T>, char> {1667 | ^1668/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]1669 126 | struct std::formatter<std::array<T, N>, char> {1670 | ^1671/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]1672 155 | struct std::formatter<std::map<Key, Val>, char> {1673 | ^1674/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]1675 184 | struct std::formatter<std::filesystem::path, char> {1676 | ^1677/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]1678 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1679 | ^1680 | ( )1681/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]1682 112 | auto unique = (expr); \1683 | ^1684 | ( )1685/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]1686 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1687 | ^ 1688 | ( )1689/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]1690 118 | out = std::move((unique).value());1691 | ^1692 | ( )1693/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1694 125 | auto unique = (expr); \1695 | ^1696 | ( )1697/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1698 126 | if (!(unique).has_value()) throw unique.error();1699 | ^ 1700 | ( )1701/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1702 131 | out = (unique).value();1703 | ^1704 | ( )17051706[37/47][106.0s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/utils/queue.cpp1707/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1708 32 | if (case_insensitive && boost::iequals(name, described)) {1709 | ^1710/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1711 35 | } else if (!case_insensitive && name == described) {1712 | ^1713/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1714 35 | } else if (!case_insensitive && name == described) {1715 | ^1716/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]1717 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1718 | ^1719 | ( )1720/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]1721 112 | auto unique = (expr); \1722 | ^1723 | ( )1724/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]1725 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1726 | ^ 1727 | ( )1728/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]1729 118 | out = std::move((unique).value());1730 | ^1731 | ( )1732/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1733 125 | auto unique = (expr); \1734 | ^1735 | ( )1736/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1737 126 | if (!(unique).has_value()) throw unique.error();1738 | ^ 1739 | ( )1740/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1741 131 | out = (unique).value();1742 | ^1743 | ( )17441745[38/47][101.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/utils/device.cpp1746/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1747 32 | if (case_insensitive && boost::iequals(name, described)) {1748 | ^1749/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1750 35 | } else if (!case_insensitive && name == described) {1751 | ^1752/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1753 35 | } else if (!case_insensitive && name == described) {1754 | ^1755/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]1756 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1757 | ^1758 | ( )1759/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]1760 112 | auto unique = (expr); \1761 | ^1762 | ( )1763/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]1764 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1765 | ^ 1766 | ( )1767/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]1768 118 | out = std::move((unique).value());1769 | ^1770 | ( )1771/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1772 125 | auto unique = (expr); \1773 | ^1774 | ( )1775/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1776 126 | if (!(unique).has_value()) throw unique.error();1777 | ^ 1778 | ( )1779/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1780 131 | out = (unique).value();1781 | ^1782 | ( )17831784[39/47][30.7s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/filesystem_panel.cpp1785/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1786 32 | if (case_insensitive && boost::iequals(name, described)) {1787 | ^1788/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1789 35 | } else if (!case_insensitive && name == described) {1790 | ^1791/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1792 35 | } else if (!case_insensitive && name == described) {1793 | ^1794/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]1795 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1796 | ^1797 | ( )1798/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]1799 112 | auto unique = (expr); \1800 | ^1801 | ( )1802/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]1803 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1804 | ^ 1805 | ( )1806/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]1807 118 | out = std::move((unique).value());1808 | ^1809 | ( )1810/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1811 125 | auto unique = (expr); \1812 | ^1813 | ( )1814/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1815 126 | if (!(unique).has_value()) throw unique.error();1816 | ^ 1817 | ( )1818/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1819 131 | out = (unique).value();1820 | ^1821 | ( )18221823[40/47][141.8s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/examples/nand/main.cpp1824/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]1825 62 | VkDeviceSize image_size = tex_width * tex_height * tex_channels;1826 | ^1827/build/source/examples/nand/main.cpp:62:29: note: make conversion explicit to silence this warning1828 1 | VkDeviceSize image_size = tex_width * tex_height * tex_channels;1829 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1830 | static_cast<VkDeviceSize>( )1831/build/source/examples/nand/main.cpp:62:29: note: perform multiplication in a wider type1832 62 | VkDeviceSize image_size = tex_width * tex_height * tex_channels;1833 | ^~~~~~~~~~~~~~~~~~~~~~1834 | static_cast<long>( )1835/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]1836 146 | auto main() -> int {1837 | ^1838/build/source/examples/nand/main.cpp:64:5: note: frame #0: unhandled exception of type 'std::runtime_error' may be thrown in function 'initialize' here1839 64 | throw std::runtime_error("Failed to load texture");1840 | ^1841/build/source/examples/nand/main.cpp:170:25: note: frame #1: function 'main' calls function 'initialize' here1842 170 | const auto init_err = initialize(data);1843 | ^1844/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]1845 26 | const std::array kTriangleVertices = {1846 | ^1847/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1848 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1849 | ^1850/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]1851 32 | const std::array kQuadVertices = {1852 | ^1853/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1854 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1855 | ^1856/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]1857 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1858 | ^1859/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1860 698 | vector(initializer_list<value_type> __l,1861 | ^1862/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]1863 156 | buffer->set_data_raw(&data, sizeof(T));1864 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1865/build/source/examples/nand/main.cpp:112:24: note: in instantiation of function template specialization 'wren::RenderPass::write_scratch_buffer<GLOBALS>' requested here1866 112 | pass.write_scratch_buffer(cmd, 0, 0, ubo);1867 | ^1868/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]1869 67 | ::vk::SampleCountFlagBits sample_count_{};1870 | ^1871/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here1872 2655 | enum class SampleCountFlagBits : VkSampleCountFlags1873 | ^1874/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]1875 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1876 | ^ 1877 | != 01878/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]1879 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1880 | ~~~~~^~~~1881/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]1882 56 | if (std::strcmp(ext.layerName, name.data())) {1883 | ^ 1884 | != 01885/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]1886 56 | if (std::strcmp(ext.layerName, name.data())) {1887 | ~~~~~^~~~1888/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]1889 71 | if (std::strcmp(ext.extensionName, name.data())) {1890 | ^ 1891 | != 01892/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]1893 71 | if (std::strcmp(ext.extensionName, name.data())) {1894 | ~~~~~^~~~1895/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]1896 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}1897 | ^1898/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here1899 198 | struct Vec4f : Vec<float, 4> {1900 | ^1901/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here1902/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]1903 37 | return level.value();1904 | ^~~~~1905/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]1906 32 | if (case_insensitive && boost::iequals(name, described)) {1907 | ^1908/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original1909 35 | } else if (!case_insensitive && name == described) {1910 | ^1911/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here1912 35 | } else if (!case_insensitive && name == described) {1913 | ^1914/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]1915 12 | struct std::formatter<T, char> {1916 | ^1917/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]1918 66 | struct std::formatter<T, char> {1919 | ^1920/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]1921 97 | struct std::formatter<std::vector<T>, char> {1922 | ^1923/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]1924 126 | struct std::formatter<std::array<T, N>, char> {1925 | ^1926/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]1927 155 | struct std::formatter<std::map<Key, Val>, char> {1928 | ^1929/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]1930 184 | struct std::formatter<std::filesystem::path, char> {1931 | ^1932/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]1933 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));1934 | ^1935 | ( )1936/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]1937 112 | auto unique = (expr); \1938 | ^1939 | ( )1940/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]1941 113 | if (!(unique).has_value()) return std::unexpected(unique.error());1942 | ^ 1943 | ( )1944/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]1945 118 | out = std::move((unique).value());1946 | ^1947 | ( )1948/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1949 125 | auto unique = (expr); \1950 | ^1951 | ( )1952/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1953 126 | if (!(unique).has_value()) throw unique.error();1954 | ^ 1955 | ( )1956/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]1957 131 | out = (unique).value();1958 | ^1959 | ( )19601961[41/47][89.2s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/render_target.cpp1962/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]1963 26 | const std::array kTriangleVertices = {1964 | ^1965/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1966 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1967 | ^1968/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]1969 32 | const std::array kQuadVertices = {1970 | ^1971/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here1972 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}1973 | ^1974/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]1975 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};1976 | ^1977/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here1978 698 | vector(initializer_list<value_type> __l,1979 | ^1980/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]1981 67 | ::vk::SampleCountFlagBits sample_count_{};1982 | ^1983/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here1984 2655 | enum class SampleCountFlagBits : VkSampleCountFlags1985 | ^1986/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]1987 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1988 | ^ 1989 | != 01990/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]1991 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {1992 | ~~~~~^~~~1993/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]1994 56 | if (std::strcmp(ext.layerName, name.data())) {1995 | ^ 1996 | != 01997/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]1998 56 | if (std::strcmp(ext.layerName, name.data())) {1999 | ~~~~~^~~~2000/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]2001 71 | if (std::strcmp(ext.extensionName, name.data())) {2002 | ^ 2003 | != 02004/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]2005 71 | if (std::strcmp(ext.extensionName, name.data())) {2006 | ~~~~~^~~~2007/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]2008 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2009 | ^2010/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2011 198 | struct Vec4f : Vec<float, 4> {2012 | ^2013/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2014/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2015 32 | if (case_insensitive && boost::iequals(name, described)) {2016 | ^2017/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2018 35 | } else if (!case_insensitive && name == described) {2019 | ^2020/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2021 35 | } else if (!case_insensitive && name == described) {2022 | ^2023/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]2024 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2025 | ^2026 | ( )2027/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]2028 112 | auto unique = (expr); \2029 | ^2030 | ( )2031/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]2032 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2033 | ^ 2034 | ( )2035/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]2036 118 | out = std::move((unique).value());2037 | ^2038 | ( )2039/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2040 125 | auto unique = (expr); \2041 | ^2042 | ( )2043/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2044 126 | if (!(unique).has_value()) throw unique.error();2045 | ^ 2046 | ( )2047/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2048 131 | out = (unique).value();2049 | ^2050 | ( )20512052[42/47][94.8s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_gui/src/instance.cpp2053/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]2054 37 | const std::vector<uint16_t> kQuadIndices = {0, 1, 3, 3, 1, 2};2055 | ^2056/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here2057 698 | vector(initializer_list<value_type> __l,2058 | ^2059/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]2060 100 | staging_buffer->set_data_raw<Vertex>(data);2061 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2062/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]2063 100 | staging_buffer->set_data_raw<Vertex>(data);2064 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2065/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]2066 106 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),2067 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2068 107 | device.command_pool(), staging_buffer,2069 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2070 108 | vertex_buffer_, data.size_bytes());2071 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2072/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]2073 106 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),2074 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2075 107 | device.command_pool(), staging_buffer,2076 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2077 108 | vertex_buffer_, data.size_bytes());2078 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2079/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]2080 119 | staging_buffer->set_data_raw<std::int16_t>(data);2081 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2082/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]2083 119 | staging_buffer->set_data_raw<std::int16_t>(data);2084 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2085/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]2086 125 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),2087 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2088 126 | device.command_pool(), staging_buffer,2089 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2090 127 | index_buffer_, data.size_bytes());2091 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2092/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]2093 125 | vk::Buffer::copy_buffer(device.get(), device.get_graphics_queue(),2094 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2095 126 | device.command_pool(), staging_buffer,2096 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2097 127 | index_buffer_, data.size_bytes());2098 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2099/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]2100 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2101 | ^2102/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2103 198 | struct Vec4f : Vec<float, 4> {2104 | ^2105/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2106/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2107 37 | return level.value();2108 | ^~~~~2109/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2110 32 | if (case_insensitive && boost::iequals(name, described)) {2111 | ^2112/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2113 35 | } else if (!case_insensitive && name == described) {2114 | ^2115/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2116 35 | } else if (!case_insensitive && name == described) {2117 | ^2118/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]2119 12 | struct std::formatter<T, char> {2120 | ^2121/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]2122 66 | struct std::formatter<T, char> {2123 | ^2124/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]2125 97 | struct std::formatter<std::vector<T>, char> {2126 | ^2127/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]2128 126 | struct std::formatter<std::array<T, N>, char> {2129 | ^2130/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]2131 155 | struct std::formatter<std::map<Key, Val>, char> {2132 | ^2133/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]2134 184 | struct std::formatter<std::filesystem::path, char> {2135 | ^2136/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]2137 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2138 | ^2139 | ( )2140/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]2141 112 | auto unique = (expr); \2142 | ^2143 | ( )2144/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]2145 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2146 | ^ 2147 | ( )2148/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]2149 118 | out = std::move((unique).value());2150 | ^2151 | ( )2152/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2153 125 | auto unique = (expr); \2154 | ^2155 | ( )2156/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2157 126 | if (!(unique).has_value()) throw unique.error();2158 | ^ 2159 | ( )2160/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2161 131 | out = (unique).value();2162 | ^2163 | ( )21642165[43/47][61.5s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/image.cpp2166/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]2167 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2168 | ^2169/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2170 198 | struct Vec4f : Vec<float, 4> {2171 | ^2172/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2173/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2174 32 | if (case_insensitive && boost::iequals(name, described)) {2175 | ^2176/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2177 35 | } else if (!case_insensitive && name == described) {2178 | ^2179/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2180 35 | } else if (!case_insensitive && name == described) {2181 | ^2182/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]2183 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2184 | ^2185 | ( )2186/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]2187 112 | auto unique = (expr); \2188 | ^2189 | ( )2190/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]2191 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2192 | ^ 2193 | ( )2194/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]2195 118 | out = std::move((unique).value());2196 | ^2197 | ( )2198/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2199 125 | auto unique = (expr); \2200 | ^2201 | ( )2202/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2203 126 | if (!(unique).has_value()) throw unique.error();2204 | ^ 2205 | ( )2206/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2207 131 | out = (unique).value();2208 | ^2209 | ( )22102211[44/47][96.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/editor/src/main.cpp2212/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]2213 14 | auto main(int argc, char** argv) -> int {2214 | ^2215/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/expected:824:2: note: frame #0: unhandled exception of type 'std::bad_expected_access<wren::Err>' may be thrown in function 'value' here2216 824 | _GLIBCXX_THROW_OR_ABORT(bad_expected_access<_Er>(_M_unex));2217 | ^2218/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'2219 262 | # define _GLIBCXX_THROW_OR_ABORT(_EXC) (throw (_EXC))2220 | ^2221/build/source/editor/src/main.cpp:46:21: note: frame #1: function 'main' calls function 'value' here2222 46 | const auto& app = err.value();2223 | ^2224/build/source/editor/src/main.cpp:52:48: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2225 52 | const auto res = editor::Editor::create(app, project_path.value());2226 | ^~~~~~~~~~~~2227/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]2228 26 | const std::array kTriangleVertices = {2229 | ^2230/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2231 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2232 | ^2233/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]2234 32 | const std::array kQuadVertices = {2235 | ^2236/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2237 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2238 | ^2239/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]2240 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};2241 | ^2242/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here2243 698 | vector(initializer_list<value_type> __l,2244 | ^2245/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]2246 67 | ::vk::SampleCountFlagBits sample_count_{};2247 | ^2248/nix/store/wj32fr9qda2anncv77ah46vxkhdz22qv-vulkan-headers-1.4.363.0/include/vulkan/vulkan_enums.hpp:2655:14: note: enum is defined here2249 2655 | enum class SampleCountFlagBits : VkSampleCountFlags2250 | ^2251/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]2252 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2253 | ^ 2254 | != 02255/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]2256 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2257 | ~~~~~^~~~2258/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]2259 56 | if (std::strcmp(ext.layerName, name.data())) {2260 | ^ 2261 | != 02262/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]2263 56 | if (std::strcmp(ext.layerName, name.data())) {2264 | ~~~~~^~~~2265/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]2266 71 | if (std::strcmp(ext.extensionName, name.data())) {2267 | ^ 2268 | != 02269/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]2270 71 | if (std::strcmp(ext.extensionName, name.data())) {2271 | ~~~~~^~~~2272/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]2273 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2274 | ^2275/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2276 198 | struct Vec4f : Vec<float, 4> {2277 | ^2278/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2279/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2280 37 | return level.value();2281 | ^~~~~2282/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2283 32 | if (case_insensitive && boost::iequals(name, described)) {2284 | ^2285/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2286 35 | } else if (!case_insensitive && name == described) {2287 | ^2288/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2289 35 | } else if (!case_insensitive && name == described) {2290 | ^2291/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]2292 12 | struct std::formatter<T, char> {2293 | ^2294/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]2295 66 | struct std::formatter<T, char> {2296 | ^2297/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]2298 97 | struct std::formatter<std::vector<T>, char> {2299 | ^2300/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]2301 126 | struct std::formatter<std::array<T, N>, char> {2302 | ^2303/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]2304 155 | struct std::formatter<std::map<Key, Val>, char> {2305 | ^2306/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]2307 184 | struct std::formatter<std::filesystem::path, char> {2308 | ^2309/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]2310 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2311 | ^2312 | ( )2313/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]2314 112 | auto unique = (expr); \2315 | ^2316 | ( )2317/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]2318 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2319 | ^ 2320 | ( )2321/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]2322 118 | out = std::move((unique).value());2323 | ^2324 | ( )2325/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2326 125 | auto unique = (expr); \2327 | ^2328 | ( )2329/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2330 126 | if (!(unique).has_value()) throw unique.error();2331 | ^ 2332 | ( )2333/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2334 131 | out = (unique).value();2335 | ^2336 | ( )23372338[45/47][81.3s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/scene/deserialization.cpp2339/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]2340 26 | const std::array kTriangleVertices = {2341 | ^2342/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2343 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2344 | ^2345/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]2346 32 | const std::array kQuadVertices = {2347 | ^2348/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2349 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2350 | ^2351/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]2352 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};2353 | ^2354/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here2355 698 | vector(initializer_list<value_type> __l,2356 | ^2357/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]2358 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2359 | ^ 2360 | != 02361/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]2362 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2363 | ~~~~~^~~~2364/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]2365 56 | if (std::strcmp(ext.layerName, name.data())) {2366 | ^ 2367 | != 02368/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]2369 56 | if (std::strcmp(ext.layerName, name.data())) {2370 | ~~~~~^~~~2371/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]2372 71 | if (std::strcmp(ext.extensionName, name.data())) {2373 | ^ 2374 | != 02375/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]2376 71 | if (std::strcmp(ext.extensionName, name.data())) {2377 | ~~~~~^~~~2378/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]2379 23 | for (const auto& e : *table["entities"].as_array()) {2380 | ^~~~~~~~~~~~2381/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]2382 26 | scene->create_entity(entity_table["name"].as_string()->get());2383 | ^~~~~~~~2384/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]2385 45 | deserialize(*table["position"].as_table(), transform.position);2386 | ^~~~~~~~~~~~2387/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]2388 46 | deserialize(*table["rotation"].as_table(), transform.rotation);2389 | ^~~~~~~~~~~~2390/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]2391 47 | deserialize(*table["scale"].as_table(), transform.scale);2392 | ^~~~~~~~~2393/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]2394 53 | mesh_renderer.update_mesh(project_root, *table["path"].value<std::string>());2395 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2396/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]2397 53 | mesh_renderer.update_mesh(project_root, *table["path"].value<std::string>());2398 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2399/build/source/wren/src/scene/deserialization.cpp:53:44: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2400 53 | mesh_renderer.update_mesh(project_root, *table["path"].value<std::string>());2401 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2402/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]2403 53 | mesh_renderer.update_mesh(project_root, *table["path"].value<std::string>());2404 | ^~~~~~~~2405/build/source/wren/src/scene/deserialization.cpp:57:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2406 57 | vec.x(*table["x"].value<float>());2407 | ^~~~~~~~~~~~~~~~~~~~~~~~~2408/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]2409 57 | vec.x(*table["x"].value<float>());2410 | ^~~~~2411/build/source/wren/src/scene/deserialization.cpp:58:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2412 58 | vec.y(*table["y"].value<float>());2413 | ^~~~~~~~~~~~~~~~~~~~~~~~~2414/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]2415 58 | vec.y(*table["y"].value<float>());2416 | ^~~~~2417/build/source/wren/src/scene/deserialization.cpp:59:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2418 59 | vec.z(*table["z"].value<float>());2419 | ^~~~~~~~~~~~~~~~~~~~~~~~~2420/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]2421 59 | vec.z(*table["z"].value<float>());2422 | ^~~~~2423/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]2424 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2425 | ^2426/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2427 198 | struct Vec4f : Vec<float, 4> {2428 | ^2429/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2430/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2431 32 | if (case_insensitive && boost::iequals(name, described)) {2432 | ^2433/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2434 35 | } else if (!case_insensitive && name == described) {2435 | ^2436/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2437 35 | } else if (!case_insensitive && name == described) {2438 | ^2439/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]2440 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2441 | ^2442 | ( )2443/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]2444 112 | auto unique = (expr); \2445 | ^2446 | ( )2447/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]2448 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2449 | ^ 2450 | ( )2451/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]2452 118 | out = std::move((unique).value());2453 | ^2454 | ( )2455/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2456 125 | auto unique = (expr); \2457 | ^2458 | ( )2459/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2460 126 | if (!(unique).has_value()) throw unique.error();2461 | ^ 2462 | ( )2463/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2464 131 | out = (unique).value();2465 | ^2466 | ( )24672468[46/47][53.4s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren_vk/src/shader.cpp2469/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]2470 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2471 | ^2472/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2473 198 | struct Vec4f : Vec<float, 4> {2474 | ^2475/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2476/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2477 37 | return level.value();2478 | ^~~~~2479/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2480 32 | if (case_insensitive && boost::iequals(name, described)) {2481 | ^2482/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2483 35 | } else if (!case_insensitive && name == described) {2484 | ^2485/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2486 35 | } else if (!case_insensitive && name == described) {2487 | ^2488/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]2489 12 | struct std::formatter<T, char> {2490 | ^2491/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]2492 66 | struct std::formatter<T, char> {2493 | ^2494/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]2495 97 | struct std::formatter<std::vector<T>, char> {2496 | ^2497/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]2498 126 | struct std::formatter<std::array<T, N>, char> {2499 | ^2500/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]2501 155 | struct std::formatter<std::map<Key, Val>, char> {2502 | ^2503/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]2504 184 | struct std::formatter<std::filesystem::path, char> {2505 | ^2506/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]2507 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2508 | ^2509 | ( )2510/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]2511 112 | auto unique = (expr); \2512 | ^2513 | ( )2514/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]2515 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2516 | ^ 2517 | ( )2518/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]2519 118 | out = std::move((unique).value());2520 | ^2521 | ( )2522/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2523 125 | auto unique = (expr); \2524 | ^2525 | ( )2526/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2527 126 | if (!(unique).has_value()) throw unique.error();2528 | ^ 2529 | ( )2530/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2531 131 | out = (unique).value();2532 | ^2533 | ( )25342535[47/47][61.9s] /nix/store/cj3il9qsgnh2msf8lzvgp2bmmmz91ppq-clang-tools-22.1.8/bin/clang-tidy --use-color -p=build -quiet /build/source/wren/src/scene/serialization.cpp2536/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]2537 26 | const std::array kTriangleVertices = {2538 | ^2539/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2540 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2541 | ^2542/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]2543 32 | const std::array kQuadVertices = {2544 | ^2545/build/source/wren_math/include/wren/math/vector.hpp:184:3: note: possibly throwing constructor declared here2546 184 | Vec3f(float x, float y, float z) : Vec<float, 3>(x, y, z) {}2547 | ^2548/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]2549 55 | const std::vector<uint16_t> kQuadIndices = {0, 2, 1, 0, 3, 2};2550 | ^2551/nix/store/xpaz3fi6ibqxb9sla4gjlp0c82v566y8-gcc-16.2.0/include/c++/16.2.0/bits/stl_vector.h:698:7: note: possibly throwing constructor declared here2552 698 | vector(initializer_list<value_type> __l,2553 | ^2554/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]2555 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2556 | ^ 2557 | != 02558/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]2559 42 | if (std::strcmp(ext.extensionName.data(), name.data())) {2560 | ~~~~~^~~~2561/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]2562 56 | if (std::strcmp(ext.layerName, name.data())) {2563 | ^ 2564 | != 02565/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]2566 56 | if (std::strcmp(ext.layerName, name.data())) {2567 | ~~~~~^~~~2568/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]2569 71 | if (std::strcmp(ext.extensionName, name.data())) {2570 | ^ 2571 | != 02572/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]2573 71 | if (std::strcmp(ext.extensionName, name.data())) {2574 | ~~~~~^~~~2575/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]2576 201 | Vec4f(auto&& other) : Vec<float, 4>(other) {}2577 | ^2578/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: copy constructor declared here2579 198 | struct Vec4f : Vec<float, 4> {2580 | ^2581/build/source/wren_math/include/wren/math/vector.hpp:198:8: note: move constructor declared here2582/build/source/wren_utils/include/wren/logging/log.hpp:37:10: error: unchecked access to optional value [bugprone-unchecked-optional-access,-warnings-as-errors]2583 37 | return level.value();2584 | ^~~~~2585/build/source/wren_utils/include/wren/utils/enums.hpp:32:68: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]2586 32 | if (case_insensitive && boost::iequals(name, described)) {2587 | ^2588/build/source/wren_utils/include/wren/utils/enums.hpp:35:12: note: end of the original2589 35 | } else if (!case_insensitive && name == described) {2590 | ^2591/build/source/wren_utils/include/wren/utils/enums.hpp:35:62: note: clone 1 starts here2592 35 | } else if (!case_insensitive && name == described) {2593 | ^2594/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]2595 12 | struct std::formatter<T, char> {2596 | ^2597/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]2598 66 | struct std::formatter<T, char> {2599 | ^2600/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]2601 97 | struct std::formatter<std::vector<T>, char> {2602 | ^2603/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]2604 126 | struct std::formatter<std::array<T, N>, char> {2605 | ^2606/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]2607 155 | struct std::formatter<std::map<Key, Val>, char> {2608 | ^2609/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]2610 184 | struct std::formatter<std::filesystem::path, char> {2611 | ^2612/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]2613 17 | #define WREN_ASSERT(expr, msg) assert(expr && (msg));2614 | ^2615 | ( )2616/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]2617 112 | auto unique = (expr); \2618 | ^2619 | ( )2620/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]2621 113 | if (!(unique).has_value()) return std::unexpected(unique.error());2622 | ^ 2623 | ( )2624/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]2625 118 | out = std::move((unique).value());2626 | ^2627 | ( )2628/build/source/wren_utils/include/wren/utils/result.hpp:125:8: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2629 125 | auto unique = (expr); \2630 | ^2631 | ( )2632/build/source/wren_utils/include/wren/utils/result.hpp:126:36: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2633 126 | if (!(unique).has_value()) throw unique.error();2634 | ^ 2635 | ( )2636/build/source/wren_utils/include/wren/utils/result.hpp:131:3: error: macro argument should be enclosed in parentheses [bugprone-macro-parentheses,-warnings-as-errors]2637 131 | out = (unique).value();2638 | ^2639 | ( )2640