List of Actions (Compiler Bug?)

The old version of my Handbook included the following table:

Table of Restricted Movements
restraint movement
ball-and-chain {going action, jumping action, entering action, exiting action, getting off action, climbing action}
gag {eating action, kissing action, answering it that action, telling it about action, asking it about action, asking it for action, saying yes action, saying no action, tasting action, saying sorry action}
handcuffs {taking action, removing it from action, taking off action, dropping action, putting it on action, inserting it into action, searching action, touching action, waving action, pulling action, pushing action, turning action, squeezing action, eating action, consulting it about action, locking it with action, unlocking it with action, switching on action, switching off action, opening action, closing action, wearing action, attacking action, showing it to action, throwing it at action, cutting action, tying it to action, drinking action, swinging action, rubbing action, setting it to action}

The third row in the table crashes, or at least hangs, the compiler. The IDE stops during compilation with the progress bar about 1/4 of the way along. I’ve checked the index, and all of those actions are real. (I had to remove singing from the list after the gag object, as it no longer exists.)

If I comment out the third table entry, a test game compiles fine with only the first two. And indeed, p. 21.2 of WWI shows an example of lists in tables. Is the list just too long? Possibly so. I’m experimenting by commenting out less and less of it. Once I get past 12 actions, I see a little hesitation in the progress bar at exactly that point, and then compilation finishes. When there are 18 actions, the hesitation is about 2 seconds long, and the compilation finishes. When there are 20 actions in the list, the hesitation lasts for about 8 seconds, and then the compilation finishes.

Breaking up this long list into two separate lists would be enormously difficult in terms of rewriting the code. Suggestions would be welcome.

I’ll report this bug, but it might be useful to hear other people’s thoughts about what the problem might be, and whether there’s a neat workaround.

Another issue related to sheer length and size! Truly, these days are a real trial for Inform; users want the infinite power they’re promissed!

Indeed. Turns out I can easily fix this by breaking the table row up into three rows, all of which have handcuffs as the restraint entry. Compiles and runs nicely.