diff --git a/src/Magnum/GL/AbstractShaderProgram.cpp b/src/Magnum/GL/AbstractShaderProgram.cpp index 481715ede..481844eb5 100644 --- a/src/Magnum/GL/AbstractShaderProgram.cpp +++ b/src/Magnum/GL/AbstractShaderProgram.cpp @@ -524,7 +524,7 @@ AbstractShaderProgram& AbstractShaderProgram::drawTransformFeedback(Mesh& mesh, AbstractShaderProgram& AbstractShaderProgram::drawTransformFeedback(MeshView& mesh, TransformFeedback& xfb, UnsignedInt stream) { /* If nothing to draw, exit without touching any state */ - if(mesh._instanceCount) + if(!mesh._instanceCount) return *this; use(); diff --git a/src/Magnum/GL/Test/AbstractShaderProgramGLTest.cpp b/src/Magnum/GL/Test/AbstractShaderProgramGLTest.cpp index 7273baf58..9691d481c 100644 --- a/src/Magnum/GL/Test/AbstractShaderProgramGLTest.cpp +++ b/src/Magnum/GL/Test/AbstractShaderProgramGLTest.cpp @@ -1319,11 +1319,6 @@ void AbstractShaderProgramGLTest::compute() { /* These are outside of any namespace to verify the macros fully qualify all names */ namespace { - /* Yes, Clang, I know, the macros add unused members. That's fine. */ - #ifdef CORRADE_TARGET_CLANG - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wunused-member-function" - #endif struct ShaderSubclassDraw: Magnum::GL::AbstractShaderProgram { MAGNUM_GL_ABSTRACTSHADERPROGRAM_SUBCLASS_DRAW_IMPLEMENTATION(ShaderSubclassDraw) }; @@ -1332,9 +1327,6 @@ namespace { MAGNUM_GL_ABSTRACTSHADERPROGRAM_SUBCLASS_DISPATCH_IMPLEMENTATION(ShaderSubclassDispatch) }; #endif - #ifdef CORRADE_TARGET_CLANG - #pragma GCC diagnostic pop - #endif } namespace Magnum { namespace GL { namespace Test { namespace { @@ -1350,7 +1342,7 @@ void AbstractShaderProgramGLTest::subclassDraw() { Mesh meshNoInstances; meshNoInstances .setInstanceCount(0); - Mesh meshViewNoInstances; + MeshView meshViewNoInstances{mesh}; meshViewNoInstances .setInstanceCount(0); #ifndef MAGNUM_TARGET_GLES