Limit of CONSTRAINT_NUM_PROPS exceeded for this object...

Hi all, I worked on an IF game waaaay back in 2005 or so, and I’m dusting it off now, trying to get it to compile using inform.exe - I’m sure this is something I’m doing wrong, but I’m just not sure what as I’ve been out of the game for basically a decade now. I have all the same libraries etc. as I did then, so it’s possible that I’m just using the wrong switches, etc. Here is the command line command I’m using to do the compile:

C:\AYSF2>inform aysf c:\AYSF2\aysf.ulx $huge $MAX_CLASSES=100 $MAX_PROP_TABLE_SIZE=800000 $MAX_OBJECTS=3000 $MAX_VERBS=1000 $MAX_DICT_ENTRIES=2400 -F1 -dexs -v8

However, it ends up choking on one particular class (the one that keeps track of the player’s state):

Linux Inform 6.21(G0.36) (11th May 2000)
::##############################################################################
########################################################
[Including ]
#########################################
“YOU.h”, line 49: Error: Limit of CONSTRAINT_NUM_PROPS property entries exceeded for this object

daemon
“YOU.h”, line 49: Error: Expected ‘with’, ‘has’ or ‘class’ in object/class definition but found “[”
daemon [
“YOU.h”, line 115: Error: Expected directive, ‘[’ or class name but found warn
daemon [ warn
“YOU.h”, line 119: Error: Expected directive, ‘[’ or class name but found if
if
“YOU.h”, line 119: Error: Expected directive, ‘[’ or class name but found memory
if (self_remembers_face == 1 && self.srf == 0) { print "^You look …etc
“YOU.h”, line 119: Error: Expected directive, ‘[’ or class name but found self
if (self_remembers_face == 1 && self.srf == 0) { print "^You look …etc
“YOU.h”, line 119: Error: Expected directive, ‘[’ or class name but found }
if (self_remembers_face == 1 && self.srf == 0) { print "^You look …etc
“YOU.h”, line 120: Error: Expected directive, ‘[’ or class name but found memory

this goes on for a bit, then:

if (ship_remembered == 1 && self.shr == 0) { print "^You remember …etc
“YOU.h”, line 157: Fatal error: Too many errors: giving up

…does anyone have any idea what I might be doing wrong?

Thanks!

James

6.21g is an old version of the compiler, and it looks like CONSTRAINT_NUM_PROPS is fixed at 64 in that version. You must have made an object with more properties than that.

You should grab the latest version (6.33). It should compile the same code, except possibly for added warnings. You will not run into that limit there. In 6.33, $huge bumps the property limit to 128 (and you can raise it if necessary).

Oh, change the -v8 argument to -G.

That got it to compile - thanks! I am seeing errors that I didn’t see back when I first wrote this…when I launch inside of Glulxe, I see these errors:

i
You are carrying nothing.

[** Programming error: tried to write outside memory using → **]

[** Programming error: tried to write outside memory using → **]

[** Programming error: tried to write outside memory using → **]

[** Programming error: tried to write outside memory using → **]

…are there any utilities to try and track down what might be causing them?