Hi!

For some reason glm library does not compile with /clr in VS2012. The text:

#include <glm/glm.hpp>

ref class A
{
float a, b, c;

void q()
{
glm::vec3 t = glm::vec3(a, b, c);
}
};

int main()
{
return 0;
}

gives error message:

1>ConsoleApplication4.cpp(9): error C2665: 'glm::detail::tvec3<T>::tvec3' : none of the 7 overloads could convert all the argument types
1> with
1> [
1> T=glm::mediump_float
1> ]
1> c:\program files\windows kits\8.0\include\um\glm\core\type_vec3.inl(169): could be 'glm::detail::tvec3<T>::tvec3<float,float,float>(c onst A &,const B &,const C &)'
1> with
1> [
1> T=glm::mediump_float,
1> A=float,
1> B=float,
1> C=float
1> ]
1> c:\program files\windows kits\8.0\include\um\glm\core\type_vec3.hpp(120): or 'glm::detail::tvec3<T>::tvec3(const float &,const float &,const float &)'
1> with
1> [
1> T=glm::mediump_float
1> ]
1> while trying to match the argument list '(float, float, float)'
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

but if I make a,b,c local like this:

#include <glm/glm.hpp>

ref class A
{
void q()
{
float a, b, c;
glm::vec3 t = glm::vec3(a, b, c);
}
};

int main()
{
return 0;
}

everything goes fine. Any idea?
Thank you.