The AllocateVariable method is responsible for reserving the stackspace that will be used for the local variable. Primitives of the same size can share the same area as long as it is free since they do not have any special cleanup routines. Object types on the other hand cannot share the same space with variables of other types, as then the exception handler would have a much harder time to figure out what type of the object stored in the space is when doing the stack cleanup.
For your implementation you must change this method to make sure the space allocated will be aligned to the specified alignment boundary of the type.
Don't worry. I definitely have an interest to merge these changing into the AngelScript SVN. I will however wait until the feature is completed to a useable degree, as I don't know if you will finish all changes before I'm ready to release the next version of AS. The individual changes you've made so far don't add anything to the library except additional complexity to the code. Only once all the changes are ready will they provide value to the community.
I suggest you concentrate on making things work as far as you need it first. Feel free to use quick hacks if it makes it easier for you. Let me worry about making the changes work in a more generic way when I check in the changes. I always put in my own touches on the contributions I receive anyway.
Edited by Andreas Jonsson, 18 December 2013 - 11:50 AM.