[Vm-dev] [Cog] Cannot generate code anymore

Igor Stasenko siguctua at gmail.com
Wed Dec 19 12:59:35 UTC 2012


Hello,

i am lost (again) what , where, and how things should be initialized,
and in what order
in order to generate code for Cog.

After Esteban merged VMMaker with latest , i ran into issue with
'isPushNilFunction' == nil.

The problem is that it is class instance variable..


Since i made own subclass of

StackToRegisterMappingCogit

and doing

'myclass initializeWithOptions: ... '

it initializes isPushNilFunction variable properly there.

Now at early stages of code generation a run into error, because
CCodeGenerator walks over superclasses and doing #addClass:
for each..

it breaks in
StackToRegisterMappingCogit class>>declareCVarsIn: aCodeGen

		>>	declareC: 'sqInt (*isPushNilFunction)(struct _BytecodeDescriptor
*,sqInt,sqInt,sqInt) = ', (aCodeGen cFunctionNameFor:
isPushNilFunction);

because, of course isPushNilFunction variable has separate value for
this class than in my subclass.




-- 
Best regards,
Igor Stasenko.


More information about the Vm-dev mailing list