|Anonymous | Login | Signup for a new account||2018-09-24 13:05 PDT|
|Main | My View | View Issues | Change Log | Roadmap|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0001128||Core Inform||Spacing and printing||public||2013-07-30 13:05||2014-05-07 07:33|
|Target Version||Fixed in Version||6L02|
|Summary||0001128: "[The X]" on proper-named assembly with owning object having a printed name property results in "Programming error"|
|Description||A privately-named object has a printed name routine and the proper-named property. An assembly creates another object as part of the privately-named object. Trying to say "[The X]" for the second object results in "[** Programming error: tried to read (something) **]". (Only the capitalized form of "[The X]" is affected).|
|Minimal Source Text To Reproduce|
"Bugtesting" by Shadow Wolf Testing is a room. Dog is a privately-named animal in Testing. The printed name of the dog is "Fido". Understand "Fido" as the dog. The dog is proper-named. A muzzle is a kind of thing. A muzzle is part of every animal. Instead of examining a muzzle, say "[The noun] looks normal." Instead of touching a muzzle, say "You touch [the noun] without any errors." Test me with "x fido/touch muzzle/x muzzle"
You can see Fido here.
> x fido
You see nothing special about Fido.
> touch muzzle
You touch Fido's muzzle without any errors.
> x muzzle
[** Programming error: tried to read (something) **]
's muzzle looks normal.
|Tags||No tags attached.|
|Effect||(serious/mild) Game compiles but misbehaves|
The Kitchen is a room.
Dog is an animal in Kitchen.
The printed name of the dog is "Fido".
A muzzle is a kind of thing. A muzzle is part of every animal.
When play begins:
let M be a random thing part of the dog;
say "[The M] is [the m]."
I think what happens is that the muzzle cap_short_name() method is called, which tries to invoke the dog's cap_short_name() method, but there isn't one.
(Both the dog and the muzzle are proper-named.)
|In Z-code, we get a more explicit run-time error: [** Programming error: (object number 46) has no property cap_short_name to read **]|
|I just spent a frustrating hour trying to figure out why the Glulx programming error is so vague. Obvious in retrospect: I7 enables Glulx acceleration by default these days. So low-level property reads are handled by the interpreter (rather than veneer code) -- faster, but with weaker error reporting.|
|2013-07-30 13:05||Shadow Wolf||New Issue|
|2013-07-30 13:14||zarf||Note Added: 0002107|
|2013-07-30 13:15||zarf||Note Added: 0002108|
|2013-07-30 13:15||zarf||Status||new => confirmed|
|2013-12-29 12:05||zarf||Note Added: 0002222|
|2013-12-29 12:15||zarf||Relationship added||has duplicate 0001169|
|2013-12-29 13:11||zarf||Note Added: 0002225|
|2014-01-28 13:04||graham||Status||confirmed => resolved|
|2014-01-28 13:04||graham||Resolution||open => fixed|
|2014-01-28 13:04||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|