# AngelScript 2.23.1 is here

This topic is 2050 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

[color=#000000][font=Arial][size=3]
A new version is here. This release has been mostly focused on performance improvements and bug fixes, so there are not a lot of visible changes.[/size][/font][/color]
[color=#000000][font=Arial][size=3]
Especially the compatibility problems with Mac OS have been fixed. Apple had decided to change their compiler suite in the latest version of Mac OS X, and this made my code that has been working flawlessly for many years to break. As I do not have an up-to-date Mac it took a bit of trial and error to get things working again, but mainly thanks to Matt Bush, from [url="http://hitboxteam.com/"]Hitbox Team[/url], who did a lot of testing for me, was I able to correct the problems.[/size][/font][/color]
[color=#000000][font=Arial][size=3]
Much of the performance improvements that has been made has been with the way the bytecode is generated. That together with the introduction of some new bytecode instructions, which replace frequently occurring bytecode sequences, should hopefully give a general performance boost for script execututions. I say hopefully, because it really depends on what your scripts look like.[/size][/font][/color]
[color=#000000][font=Arial][size=3]
Unfortunately the bytecode changes also means that the [url="https://github.com/BlindMindStudios/AngelScript-JIT-Compiler"]JIT compiler[/url] that [url="http://www.blind-mind.com/"]Blind Mind Studios[/url] released in February needs to be updated before it can be used with this new version of AngelScript.[/size][/font][/color]
[color=#000000][font=Arial][size=3]
I've already contacted them, and they are working on getting the JIT compiler updated, in addition to further enhancements, e.g. support for 64bit Windows. Hopefully they will be able to complete that task soon.[/size][/font][/color]
[color=#000000][font=Arial][size=3]
Regards,[/size][/font][/color][color=#000000][font=Arial][size=3]
Andreas[/size][/font][/color]

##### Share on other sites
Thanks, Andreas!

've been waiting for this version to be relased, so we can bundle it with the upcoming release of Warsow

##### Share on other sites
[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)]Thanks, Andreas![/background][/left][/size][/font][/color]

##### Share on other sites
Compilation of debug angelscript library in msvc9 is broken [img]http://public.gamedev.net//public/style_emoticons/default/sad.png[/img]

[CODE]
1>------ Build started: Project: angelscript, Configuration: Debug Win32 ------
1>Compiling...
1>as_atomic.cpp
1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(171) : error C2008: '$' : unexpected in macro definition 1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(172) : error C2008: '$' : unexpected in macro definition
1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(172) : warning C4005: '__' : macro redefinition
1> C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(171) : see previous definition of '__'
1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(173) : error C2008: '$' : unexpected in macro definition 1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(173) : warning C4005: '__' : macro redefinition 1> C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(172) : see previous definition of '__' 1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(174) : error C2008: '$' : unexpected in macro definition
1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(174) : warning C4005: '__' : macro redefinition
1> C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(173) : see previous definition of '__'
1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(175) : error C2008: '$' : unexpected in macro definition 1>C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\specstrings.h(175) : warning C4005: '__' : macro redefinition ... and so on [/CODE] [code] #define __$adt_prop(adt,prop)
#define __$adt_add_prop(adt,prop) #define __$adt_remove_prop(adt,prop)
#define __$adt_transfer_prop(arg) #define __$adt_type_props(typ)
#define __$volatile #define __$nonvolatile
#define __$possibly_notnulltermiated #endif // #if (_MSC_VER >= 1000) && !defined(__midl) && defined(_PREFAST_) [/code] Release build compiles just fine. The breakage is caused by the fact that language extensions are disabled for the Debug build in C/C++ :: Language tab. Edited by _Vicious_ #### Share this post ##### Link to post ##### Share on other sites Was this using the project from the sdk? If it was I'll have to fix it. #### Share this post ##### Link to post ##### Share on other sites thanks Andreas, best scripting language out their imo=-) #### Share this post ##### Link to post ##### Share on other sites [quote name='Andreas Jonsson' timestamp='1335744385' post='4935940'] Was this using the project from the sdk? If it was I'll have to fix it. [/quote]Yes, it was. #### Share this post ##### Link to post ##### Share on other sites Interesting. I use MSVC9 myself and I always work with the debug version. I wonder how this got through. Thanks for reporting it. I'll look into it. #### Share this post ##### Link to post ##### Share on other sites Thank you! I will try the latest version soon. #### Share this post ##### Link to post ##### Share on other sites [quote name='Andreas Jonsson' timestamp='1335793521' post='4936077'] Interesting. I use MSVC9 myself and I always work with the debug version. I wonder how this got through. Thanks for reporting it. I'll look into it. [/quote] Rev 1161: "Fixed compiler warnings." #### Share this post ##### Link to post ##### Share on other sites Thanks. That must be the moment the problem was introduced, still I don't understand why this is not happening on my machine. It seems that my project is not equal to what is in the SVN for some reason, but that really shouldn't be possible as I always do diffs to verify differences in all files. I'll investigate further when I get home. #### Share this post ##### Link to post ##### Share on other sites The difference is with the Microsoft SDK version 6.0a. I have version 6.1 installed, which is why I didn't face the problem due to the disabled language extensions. In version 6.1 Microsoft corrected the problem with the specstrings.h header file by adding the following precompiler condition: [code] #if defined(_MSC_EXTENSIONS) || defined(_PREFAST_) || defined(OACR) #define __$adt_prop(adt,prop) __declspec("SAL_adt("#adt","#prop")")
#define __$adt_add_prop(adt,prop) __declspec("SAL_add_adt_property("#adt","#prop")") #define __$adt_remove_prop(adt,prop) __declspec("SAL_remove_adt_property("#adt","#prop")")
#define __$adt_transfer_prop(arg) __declspec("SAL_transfer_adt_property_from("#arg")") #define __$adt_type_props(typ) __declspec("SAL_post_type("#typ")")
#define __$volatile __declspec("SAL_volatile") #define __$nonvolatile __declspec("SAL_nonvolatile")
#define __\$possibly_notnulltermiated __declspec("SAL_RequiresZeroTermination(sometimes)")
#endif
[/code]

Anyway, I'll re-enable the language extensions in the project settings to avoid this problem for others that use MS SDK 6.0a.

Regards,
Andreas

##### Share on other sites
Heh, turns out despite the fact I had v6.1 installed, v6.0 was still used by MSVC due to some bogus registry value. Thanks for the hint!

Anyway, it was weird to have this setting different for release and debug builds.

##### Share on other sites
I've updated our JIT compiler for 2.23.1.

##### Share on other sites
Great. Thanks for letting us know.

##### Share on other sites
Should remove header file 'as_bytecodedef.h' in project of MSVC10 to prevent its 'check-file-missing' building ...

##### Share on other sites
Done in revision 1299. Thanks.

##### Share on other sites

This topic is 2050 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.