]> git.tdb.fi Git - libs/gl.git/commitdiff
Make boolean conversion operators explicit
authorMikko Rasa <tdb@tdb.fi>
Sun, 10 Dec 2023 13:29:32 +0000 (15:29 +0200)
committerMikko Rasa <tdb@tdb.fi>
Sun, 10 Dec 2023 22:29:04 +0000 (00:29 +0200)
source/backends/opengl/batch_backend.cpp
source/backends/opengl/device_backend.cpp
source/backends/opengl/extension.h
source/backends/opengl/sampler_backend.cpp
source/core/backend.h
source/glsl/compiler.cpp

index 2bd3c8374b3278e20e01e475e74e82a862b27dad..78d398e64d68742dd5423af57ba3bf56498f1229 100644 (file)
@@ -17,7 +17,7 @@ bool OpenGLBatch::check_restart(bool require)
 {
        if(require)
                static Require _req(MSP_primitive_restart);
-       return MSP_primitive_restart;
+       return static_cast<bool>(MSP_primitive_restart);
 }
 
 void OpenGLBatch::set_index_type(DataType t)
index d8b75011c633791a7a0e0327d283b45b161d589a..001387c186598bf6a37bb953919de61e1601bfb3 100644 (file)
@@ -87,15 +87,15 @@ void OpenGLDevice::fill_info()
        SL::Features &feat = info.glsl_features;
        feat.target_api = get_backend_api();
        feat.glsl_version = get_glsl_version();
-       feat.arb_enhanced_layouts = ARB_enhanced_layouts;
-       feat.arb_explicit_attrib_location = ARB_explicit_attrib_location;
-       feat.arb_explicit_uniform_location = ARB_explicit_uniform_location;
-       feat.arb_gpu_shader5 = ARB_gpu_shader5;
-       feat.arb_separate_shader_objects = ARB_separate_shader_objects;
-       feat.arb_uniform_buffer_object = ARB_uniform_buffer_object;
-       feat.arb_shader_storage_buffer_object = ARB_shader_storage_buffer_object;
-       feat.ext_gpu_shader4 = EXT_gpu_shader4;
-       feat.ext_texture_array = EXT_texture_array;
+       feat.arb_enhanced_layouts = static_cast<bool>(ARB_enhanced_layouts);
+       feat.arb_explicit_attrib_location = static_cast<bool>(ARB_explicit_attrib_location);
+       feat.arb_explicit_uniform_location = static_cast<bool>(ARB_explicit_uniform_location);
+       feat.arb_gpu_shader5 = static_cast<bool>(ARB_gpu_shader5);
+       feat.arb_separate_shader_objects = static_cast<bool>(ARB_separate_shader_objects);
+       feat.arb_uniform_buffer_object = static_cast<bool>(ARB_uniform_buffer_object);
+       feat.arb_shader_storage_buffer_object = static_cast<bool>(ARB_shader_storage_buffer_object);
+       feat.ext_gpu_shader4 = static_cast<bool>(EXT_gpu_shader4);
+       feat.ext_texture_array = static_cast<bool>(EXT_texture_array);
        feat.uniform_binding_range = lim.max_uniform_bindings;
        feat.texture_binding_range = lim.max_texture_bindings;
        feat.storage_texture_binding_range = lim.max_storage_texture_bindings;
index f1edec3e2656de78b53f20b878ab92a9324dee03..9033ba11d65f45f00fd8a4ec8e0bedf88c0cee2d 100644 (file)
@@ -40,7 +40,7 @@ public:
        Extension(const char *, InitFunc);
 
        const char *get_name() const { return name; }
-       operator bool() const;
+       explicit operator bool() const;
 };
 
 
index 161429f0597a7f0023d5f852d3da8d3ec9e1c8cc..2afd691b0cea608f4c25f37c3c8037d6febfe0fd 100644 (file)
@@ -44,7 +44,7 @@ bool OpenGLSampler::check_anisotropic(bool require)
 {
        if(require)
                static Require _req(EXT_texture_filter_anisotropic);
-       return EXT_texture_filter_anisotropic;
+       return static_cast<bool>(EXT_texture_filter_anisotropic);
 }
 
 void OpenGLSampler::update(unsigned mask) const
index db0274544ddcd0a600caa6443216bb3c5b8072f7..5080cebf1b61141cb4fd33394390b1c6a3ae7567 100644 (file)
@@ -25,7 +25,7 @@ struct MSPGL_API Version
 
        bool operator>=(const Version &) const;
        bool operator<(const Version &o) const { return !(*this>=o); }
-       operator bool() const { return major || minor; }
+       explicit operator bool() const { return major || minor; }
 };
 
 /** Returns the backend for which the library was compiled. */
index e61cf10dd5307044ca7dd0fdc202c1b8d15529ac..7da7fcd9601ca08f2b92971aa3df12b69657c596 100644 (file)
@@ -282,7 +282,7 @@ void Compiler::append_stage(const Stage &stage)
                target = &*i;
        }
 
-       if(stage.required_features.glsl_version>target->required_features.glsl_version)
+       if(target->required_features.glsl_version<stage.required_features.glsl_version)
                target->required_features.glsl_version = stage.required_features.glsl_version;
        for(const RefPtr<Statement> &s: stage.content.body)
                if(!dynamic_cast<Import *>(s.get()))
@@ -301,7 +301,7 @@ void Compiler::import(ModuleCache &mod_cache, const string &name)
 void Compiler::generate(Stage &stage)
 {
        stage.required_features.target_api = features.target_api;
-       if(module->shared.required_features.glsl_version>stage.required_features.glsl_version)
+       if(stage.required_features.glsl_version<module->shared.required_features.glsl_version)
                stage.required_features.glsl_version = module->shared.required_features.glsl_version;
 
        inject_block(stage.content, module->shared.content);