I had just set up Fedora (virtual machine) to use for linux development on my new computer. I checked out my source code through svn and tried to build it and the above warning shows up. Whats more, its pointing to one of the typedefs I wrote waaay back, and has compiled fine with g++ / msvc 2010 before. In fact, it still compiled well in msvc, the only one having the problem is g++.
The offending line of code was this:
vtx_atomic.h
typedef float F32;
And this in turn caused another problem!
I reference this F32 declaration from many places in my code, but there is one specific location where I use F32 as a template argument for a class, and thats where it freaked out.
The code looks like the following:
vtx_vbuffer.h
struct VertexPosNormTex
{
core::Vector3 position;
core::Vector3 normal;
core::Vector2<platform::F32> texCoord;
};
It resulted in the error:
../include/vortex/vtx_vbuffer.h:11:31: error: template argument 1 is invalid
I renamed the typedef and all warnings and errors went away. Is F32 conflicting with something? If it is, how come it didn't do that earlier?
Inga kommentarer:
Skicka en kommentar