Browse Source

GCC 4.5 compatibility: initializer issues.

Vladimír Vondruš 12 years ago
parent
commit
9ac56d85f4
  1. 3
      src/Magnum/AbstractShaderProgram.cpp
  2. 2
      src/Magnum/Shaders/DistanceFieldVector.cpp
  3. 2
      src/Magnum/Shaders/Vector.cpp

3
src/Magnum/AbstractShaderProgram.cpp

@ -361,7 +361,8 @@ bool AbstractShaderProgram::link(std::initializer_list<std::reference_wrapper<Ab
Int AbstractShaderProgram::uniformLocationInternal(const Containers::ArrayReference<const char> name) {
GLint location = glGetUniformLocation(_id, name);
if(location == -1)
Warning() << "AbstractShaderProgram: location of uniform \'" + std::string{name, name.size()} + "\' cannot be retrieved!";
/* GCC 4.5 takes {} as initialization from list of chars */
Warning() << "AbstractShaderProgram: location of uniform \'" + std::string(name, name.size()) + "\' cannot be retrieved!";
return location;
}

2
src/Magnum/Shaders/DistanceFieldVector.cpp

@ -65,7 +65,7 @@ template<UnsignedInt dimensions> DistanceFieldVector<dimensions>::DistanceFieldV
std::initializer_list<std::reference_wrapper<Shader>> ss{std::ref(frag), std::ref(vert)};
CORRADE_INTERNAL_ASSERT_OUTPUT(Shader::compile(ss));
AbstractShaderProgram::attachShaders({frag, vert});
AbstractShaderProgram::attachShaders(ss);
#ifndef MAGNUM_TARGET_GLES
if(!Context::current()->isExtensionSupported<Extensions::GL::ARB::explicit_attrib_location>(version))

2
src/Magnum/Shaders/Vector.cpp

@ -65,7 +65,7 @@ template<UnsignedInt dimensions> Vector<dimensions>::Vector(): transformationPro
std::initializer_list<std::reference_wrapper<Shader>> ss{std::ref(frag), std::ref(vert)};
CORRADE_INTERNAL_ASSERT_OUTPUT(Shader::compile(ss));
AbstractShaderProgram::attachShaders({vert, frag});
AbstractShaderProgram::attachShaders(ss);
#ifndef MAGNUM_TARGET_GLES
if(!Context::current()->isExtensionSupported<Extensions::GL::ARB::explicit_attrib_location>(version))

Loading…
Cancel
Save