|Anonymous | Login | Signup for a new account||2018-07-18 03:46 PDT|
|Main | My View | View Issues | Change Log | Roadmap|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000861||Core Inform||Source text and punctuation||public||2012-02-04 13:07||2014-05-07 07:33|
|Platform||x86||OS||Mac OS X||OS Version||10.6|
|Target Version||Fixed in Version||6L02|
|Summary||0000861: Spurious errors when declaring either/or properties on the inside direction|
|Description||The source text provided generates an error for the second block (the first is fine and is included only for comparison):|
"You wrote 'Up, down, inside, outside are not planar' : but this seems to refer to something whose name begins with a comma, which is forbidden. Perhaps you used a comma in punctuating a sentence? Inform generally doesn't like this because it reserves commas for specific purposes such as dividing rules or 'if' phrases."
Replace the last comma in the offending line with an "and", and a new error, equally mystifying, is generated:
"You wrote 'Up, down, inside and outside are not planar' : but this seems to give a worldly relationship to something intangible, like saying that 'in the box is a text'. Perhaps it came to this because you gave something physical a name which was accidentally something meaningful to me in another context? If so, you may be able to get around it by rewording ('In the box is a medieval text') or in extremis by using 'called' ('In the box is a thing called text')."
|Minimal Source Text To Reproduce|
A direction can be cardinal. A direction is usually not cardinal. North, south, east, west are cardinal. A direction can be planar. A direction is usually planar. Up, down, inside, outside are not planar. Test is a room.
|Additional Information||The shortest declaration pattern that succeeds is:|
Up, down, outside are not planar.
Inside is not planar.
Seems that "inside," and "inside and" are being too eagerly interpreted by the I7 compiler.
|Tags||No tags attached.|
|Effect||(serious) Compiler rejects valid code|
As a workaround, you could use Definition lines instead. I believe that they are more efficient than defining new properties as you did; new properties may be overkill if they aren't going to vary during play, when Definitions often aren't possible.
Definition: a direction is planar
unless it is up
or it is down
or it is inside
or it is outside.
Definition: a direction is cardinal
if it is west
or it is east
or it is north
or it is south.
Confirmed. ``The inside'' is another workaround.
|This and a number of similar cases are now correctly resolved.|
|2012-02-04 13:07||ektemple||New Issue|
|2012-02-06 08:29||ChrisC||Note Added: 0001578|
|2012-02-06 11:30||EmacsUser||Note Added: 0001579|
|2012-02-06 11:30||EmacsUser||Reproducibility||have not tried => always|
|2012-02-06 11:30||EmacsUser||Status||new => confirmed|
|2012-02-06 11:30||EmacsUser||Category||Assertions and creations => Source text and punctuation|
|2012-02-06 11:33||EmacsUser||Relationship added||related to 0000686|
|2012-04-02 12:01||EmacsUser||Relationship replaced||child of 0000686|
|2014-03-09 10:29||graham||Note Added: 0002540|
|2014-03-09 10:29||graham||Status||confirmed => resolved|
|2014-03-09 10:29||graham||Resolution||open => fixed|
|2014-03-09 10:29||graham||Assigned To||=> graham|
|2014-05-07 07:32||jmcgrew||Fixed in Version||=> 6L02|
|2014-05-07 07:33||jmcgrew||Status||resolved => closed|
|Copyright © 2000 - 2010 MantisBT Group|