grayfox3000 Posted June 15, 2015 Share Posted June 15, 2015 Why this class doesn't have this constructor? On gcc (4.7.+ with -std=c++11) int64_t defined as long long int on x86 but on x64 - long int, so, u can't implicitly cast this type to Variable. Maybe worth replacing Unigine::Variable(long long int) with Unigine::Variable(int64_t)? Nevertheless, the use of pure types does not happen so often, instead of intXX_t. For example, we have class with method int64_t uid() const that we use in some Qt functions, boost and in Unigine script vm. It works perfectly with qt (qHash(), for example) and boost, but when we try to build project under linux x64 we encountered this problem. http://stackoverflow.com/questions/4160945/c-long-long-int-vs-long-int-vs-int64-t little more information on similar case Link to comment
unclebob Posted June 16, 2015 Share Posted June 16, 2015 Hi there, Vlad! I believe we don't use intXX_t types in public C++ API at all so that's the main reason though it's good to have such constructor. We'll consider adding this to C++ API. Thanks! Link to comment
Recommended Posts