MantisBT - Core Inform
View Issue Details
0000354Core InformRules and rulebookspublic2010-10-24 14:252010-10-28 00:31
jmcgrew 
graham 
normalcriticalalways
closedfixed 
x86Windows7
6E72 
6F95 
(critical) Inform 6 compiler reports errors for valid code
0000354: I6 error when using backslash in a rule condition
When a rule condition contains text with a backslash, the generated code causes Inform 6 errors.
Enter Two Numbers is a room.
 
After reading a command when the player's command matches the regular expression "^(\d+) +(\d+)$": do nothing.
The error is in RulePrintingRule:

auto.inf(23156): Error: Expected empty rest of line after '\' in string but found "d"
> if (R == R_739) { print "After reading a command when the player's ...etc
No tags attached.
Issue History
2010-10-24 14:25jmcgrewNew Issue
2010-10-24 14:35jmcgrewStatusnew => acknowledged
2010-10-24 15:05EmacsUserNote Added: 0000743
2010-10-24 15:05EmacsUserStatusacknowledged => confirmed
2010-10-25 01:37grahamNote Added: 0000745
2010-10-25 01:37grahamStatusconfirmed => resolved
2010-10-25 01:37grahamResolutionopen => fixed
2010-10-25 01:37grahamAssigned To => graham
2010-10-25 21:14jmcgrewFixed in Version => 6F95
2010-10-28 00:31jmcgrewStatusresolved => closed

Notes
(0000743)
EmacsUser   
2010-10-24 15:05   
Confirmed. The trouble is only in the part about printing the rule name. A workaround is to name the rule:

- - - -
After reading a command when the player's command matches the regular expression "^(\d+) +(\d+)$" (this is the rule that must have a name):
    do nothing.
- - - -
(0000745)
graham   
2010-10-25 01:37   
Fixed.