[Vm-dev] How to think about cogit.c compile error that is consistent in both gnu an cmake builds

gettimothy gettimothy at zoho.com
Thu Jul 31 16:48:35 UTC 2014


Hi Eliot.



What/where sets the PRODUCTION and NoDbgRegParms  variables in the #if !PRODUCTION && defined(__GNUC__) && !defined(NoDbgRegParms) check ?


Are they set by 'somewhere' by various -D flags in the mvm? I have grepped to no avail. 


Here is my thinking at the moment. The compiler error is showing that the NoDbgRegParms is not being replaced. 



 /home/wm/usr/src/smalltalk/CMake.oscog/cogVMMaker/Contents/Resources/oscogvm/src/vm/cogit.c:1071:13: note: previous declaration of 'ssAllocateRequiredRegMaskupThrough' was here
 static void ssAllocateRequiredRegMaskupThrough(sqInt requiredRegsMask, sqInt stackPtr) NoDbgRegParms;
 ^
/home/wm/usr/src/smalltalk/CMake.oscog/cogVMMaker/Contents/Resources/oscogvm/src/vm/cogit.c:20947:1: error: conflicting types for 'ssAllocateRequiredReg'
 ssAllocateRequiredReg(sqInt requiredReg)

 

So the question becomes "why not".


Well, because the pre-processor (?) is not replacing them. Why? hmmmm....


thx for your time.


tty















-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20140731/95e5974f/attachment.htm


More information about the Vm-dev mailing list