Hello! Thanks for all your work on Angelscript and the support here!
I am having trouble updating from 2.25.2 to 2.31.2 (yes, a long break). In my program code it was mostly just a case of replacing asIObjectType with asITypeInfo, but I also had some unexpected problems with building Angelscript itself.
On Linux and Windows I had to define __STDC_LIMIT_MACROS to avoid a problem with UINT64_MAX being undefined (Mac seems to be ok without this change).
Further, for Windows (mingw32 cross-compiling on Linux) I had a strange compile error from as_callfunc_x86.cpp:
I found I could avoid that by defining AS_MAX_PORTABILITY but then I get runtime problems, when my program starts up I want to register some global functions like this:
scriptEngine->RegisterGlobalFunction("float rnd()", asFUNCTION(rnd), asCALL_CDECL);
... which returns asNOT_SUPPORTED.
On native Windows (again mingw32 but of course not cross-compiled) I do not need to define AS_MAX_PORTABILITY and all is ok without it. But if I define it I get the same problem so it looks like I just need to avoid it if I can. So I guess the question is, how can I get around that "CFI instruction used..." error without using AS_MAX_PORTABILITY?
If it helps, I'm running on Fedora15 x64 and the mingw32 cross-compiler I'm using is pretty standard, I just did "yum install mingw32*" to have the package manager install everything. I'm using cmake to compile, I only changed one line in CMakeLists.txt to add the two defines I mentioned above:
add_definitions(-DANGELSCRIPT_EXPORT -D_LIB -D__STDC_LIMIT_MACROS -DAS_MAX_PORTABILITY)
Then I just build like this: