Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000779Core InformListspublic2011-10-15 10:112014-05-07 07:34
Reportermattweiner 
Assigned Tograham 
PrioritynormalSeveritycosmeticReproducibilityalways
StatusclosedResolutionfixed 
Platformx86OSMac OS XOS Version10.5
Product Version6G60 
Target VersionFixed in Version6L02 
Summary0000779: Error message for using temporary variables in description does not cover all possible cases
DescriptionThe source text yields the following error:

Problem. You wrote 'let held-list be the list of things held by the actor' : but descriptions used as values are not allowed to contain references to temporary variables defined by 'let' or by loops, because they may very well not exist any more when the description needs to be used, in another time and another place.

But the problematic variable, "the actor," is not created by "let" or a loop.
Minimal Source Text To Reproduce
Lab is a room. The player carries a test tube.

Instead of someone singing:
	let held-list be the list of things held by the actor;
	say "Held: [held-list]."
Additional InformationI suggest changing the text to "temporary variables *such as those* defined by 'let' or by loops," and also having the error message state which variable caused the problem.

Also perhaps worth noting is that "the player" isn't actually a temporary variable but a rulebook variable.

More discussion at http://www.intfiction.org/forum/viewtopic.php?p=24167#p24167 [^] and following posts.
TagsNo tags attached.
Effect(cosmetic) Error message is badly worded
Attached Files

- Relationships
has duplicate 0000879closedEmacsUser spurious problem message on allocating, constructing, and returning a List 

-  Notes
(0001403)
graham (administrator)
2011-10-16 14:51

I'm inclined to agree that this problem message isn't very good. I've reworded it thus:

Problem. You wrote 'let held-list be the list of things held by the actor', but descriptions used as values are not allowed to contain references to temporary values (defined by 'let', or by loops, or existing only in certain rulebooks or actions, say) - unfortunately 'actor' is just such a temporary value. The problem is that it may well not exist any more when the description needs to be used, in another time and another place.

- Issue History
Date Modified Username Field Change
2011-10-15 10:11 mattweiner New Issue
2011-10-16 14:51 graham Note Added: 0001403
2011-10-16 14:51 graham Status new => resolved
2011-10-16 14:51 graham Resolution open => fixed
2011-10-16 14:51 graham Assigned To => graham
2012-03-09 10:35 EmacsUser Relationship added has duplicate 0000879
2014-05-07 07:34 jmcgrew Fixed in Version => 6L02
2014-05-07 07:34 jmcgrew Status resolved => closed


Copyright © 2000 - 2010 MantisBT Group
Powered by Mantis Bugtracker