Skip to content

Commit

Permalink
Fix for Mantis bug 1891
Browse files Browse the repository at this point in the history
  • Loading branch information
ganelson committed Apr 13, 2022
1 parent 9f2a6da commit cf2eaaf
Show file tree
Hide file tree
Showing 9 changed files with 233 additions and 27 deletions.
2 changes: 1 addition & 1 deletion README.md
@@ -1,6 +1,6 @@
# Inform 7

v10.1.0-alpha.1+6U81 'Krypton' (12 April 2022)
v10.1.0-alpha.1+6U82 'Krypton' (13 April 2022)

## About Inform 7

Expand Down
4 changes: 2 additions & 2 deletions build.txt
@@ -1,3 +1,3 @@
Prerelease: alpha.1
Build Date: 12 April 2022
Build Number: 6U81
Build Date: 13 April 2022
Build Number: 6U82
20 changes: 10 additions & 10 deletions inform7/Figures/memory-diagnostics.txt
@@ -1,9 +1,9 @@
Total memory consumption was 126294K = 123 MB
Total memory consumption was 126310K = 123 MB

---- was used for 2009238 objects, in 361118 frames in 0 x 800K = 0K = 0 MB:
---- was used for 2009539 objects, in 361122 frames in 0 x 800K = 0K = 0 MB:

32.3% inter_tree_node_array 58 x 8192 = 475136 objects, 41813824 bytes
18.9% text_stream_array 4346 x 100 = 434600 objects, 24476672 bytes
18.9% text_stream_array 4348 x 100 = 434800 objects, 24487936 bytes
18.7% linked_list 43320 objects, 24259200 bytes
10.8% inter_symbol_array 132 x 1024 = 135168 objects, 14061696 bytes
10.2% inter_error_stash_array 101 x 1024 = 103424 objects, 13241504 bytes
Expand All @@ -21,7 +21,7 @@ Total memory consumption was 126294K = 123 MB
1.1% inter_symbols_table 26586 objects, 1488816 bytes
1.0% i6_schema_array 23 x 100 = 2300 objects, 1380736 bytes
0.9% inter_package 26586 objects, 1276128 bytes
0.9% dict_entry_array 386 x 100 = 38600 objects, 1247552 bytes
0.9% dict_entry_array 387 x 100 = 38700 objects, 1250784 bytes
0.8% map_data 670 objects, 1125600 bytes
0.8% id_body 942 objects, 1077648 bytes
0.7% adjective_meaning 202 objects, 1000304 bytes
Expand All @@ -37,7 +37,7 @@ Total memory consumption was 126294K = 123 MB
0.3% verb_usage 1128 objects, 388032 bytes
0.2% rule 470 objects, 368480 bytes
0.2% verb_form 386 objects, 348944 bytes
0.2% dictionary 6626 objects, 318048 bytes
0.2% dictionary 6627 objects, 318096 bytes
0.2% noun 2381 objects, 285720 bytes
0.2% compilation_subtask 3349 objects, 267920 bytes
0.2% inter_annotation_array 2 x 8192 = 16384 objects, 262208 bytes
Expand Down Expand Up @@ -237,16 +237,16 @@ Total memory consumption was 126294K = 123 MB

100.0% was used for memory not allocated for objects:

59.2% text stream storage 76602800 bytes in 452575 claims
3.5% dictionary storage 4549632 bytes in 6626 claims
59.2% text stream storage 76619156 bytes in 452740 claims
3.5% dictionary storage 4550144 bytes in 6627 claims
---- sorting 744 bytes in 3 claims
5.5% source text 7200000 bytes in 3 claims
8.3% source text details 10800000 bytes in 2 claims
0.2% documentation fragments 262144 bytes in 1 claim
---- linguistic stock array 81920 bytes in 2 claims
---- small word set array 105600 bytes in 22 claims
3.5% inter symbols storage 4526448 bytes in 27942 claims
12.9% inter bytecode storage 16767632 bytes in 14 claims
3.4% inter symbols storage 4526448 bytes in 27942 claims
12.9% inter bytecode storage 16767656 bytes in 14 claims
4.8% inter links storage 6222976 bytes in 11 claims
0.1% inter tree location list storage 191232 bytes in 32 claims
1.3% instance-of-kind counting 1695204 bytes in 1 claim
Expand All @@ -255,5 +255,5 @@ Total memory consumption was 126294K = 123 MB
---- code generation workspace for objects 1336 bytes in 4 claims
0.2% emitter array storage 280032 bytes in 1997 claims

-140.-6% was overhead - -181936520 bytes = -177672K = -173 MB
-140.-6% was overhead - -181951064 bytes = -177686K = -173 MB

24 changes: 12 additions & 12 deletions inform7/Figures/timings-diagnostics.txt
@@ -1,29 +1,29 @@
100.0% in inform7 run
68.2% in compilation to Inter
47.9% in //Sequence::undertake_queued_tasks//
4.6% in //MajorNodes::pre_pass//
3.1% in //MajorNodes::pass_1//
2.3% in //RTPhrasebook::compile_entries//
68.5% in compilation to Inter
48.1% in //Sequence::undertake_queued_tasks//
4.5% in //MajorNodes::pre_pass//
3.2% in //MajorNodes::pass_1//
2.4% in //RTPhrasebook::compile_entries//
1.8% in //ImperativeDefinitions::assess_all//
1.5% in //RTKindConstructors::compile//
1.0% in //Sequence::lint_inter//
0.5% in //MajorNodes::pass_2//
0.5% in //Sequence::undertake_queued_tasks//
0.5% in //World::stage_V//
0.4% in //ImperativeDefinitions::compile_first_block//
0.4% in //Sequence::undertake_queued_tasks//
0.4% in //Sequence::undertake_queued_tasks//
0.2% in //CompletionModule::compile//
0.2% in //RTKindConstructors::compile_permissions//
0.1% in //InferenceSubjects::emit_all//
0.1% in //Task::make_built_in_kind_constructors//
0.1% in //Understand::traverse//
0.1% in //World::stages_II_and_III//
2.0% not specifically accounted for
29.1% in running Inter pipeline
10.1% in step 14/15: generate inform6 -> auto.inf
7.6% in step 5/15: load-binary-kits
2.1% not specifically accounted for
28.8% in running Inter pipeline
10.2% in step 14/15: generate inform6 -> auto.inf
7.5% in step 5/15: load-binary-kits
6.6% in step 6/15: make-synoptic-module
1.6% in step 9/15: make-identifiers-unique
1.5% in step 9/15: make-identifiers-unique
0.4% in step 12/15: eliminate-redundant-operations
0.4% in step 4/15: compile-splats
0.4% in step 7/15: shorten-wiring
Expand All @@ -32,6 +32,6 @@
0.1% in step 10/15: reconcile-verbs
0.1% in step 2/15: parse-insertions
0.1% in step 3/15: resolve-conditional-compilation
0.5% not specifically accounted for
0.4% not specifically accounted for
2.2% in supervisor
0.4% not specifically accounted for
86 changes: 86 additions & 0 deletions inform7/Tests/Test Cases/_Results_Ideal/ManyActions-G.txt
Expand Up @@ -16,10 +16,13 @@ Actions listing on.
>[2] rules
Rules tracing now switched on. Type "rules off" to switch it off again, or "rules all" to include even rules which do not apply.

[Rule "parse command rule" applies.]
>[3] trace 2
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "generate action rule" applies.]
[Parser tracing set to level 2.]

[Rule "parse command rule" applies.]
>[4] x20
[ "x20" x20 ]
[Parsing for the verb 'x20' (1 lines)]
Expand All @@ -28,11 +31,19 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[line 0 token 1 word 2 : END]
[Line successfully parsed]
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "generate action rule" applies.]
[action20ing]
[Rule "announce items from multiple object lists rule" applies.]
[Rule "set pronouns from items from multiple object lists rule" applies.]
[Rule "before stage rule" applies.]
[Rule "basic visibility rule" applies.]
[Rule "basic accessibility rule" applies.]
[Rule "carrying requirements rule" applies.]
[Rule "instead stage rule" applies.]
[Rule "requested actions require persuasion rule" applies.]
[Rule "carry out requested actions rule" applies.]
[Rule "descend to specific action-processing rule" applies.]
[Rule "work out details of specific action rule" applies.]
[Rule "investigate player's awareness before action rule" applies.]
[Rule "player aware of his own actions rule" applies.]
[Rule "check stage rule" applies.]
Expand All @@ -45,9 +56,17 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[action20ing - succeeded]

[Rule "A first turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "every turn stage rule" applies.]
[Rule "timed events rule" applies.]
[Rule "advance time rule" applies.]
[Rule "update chronological records rule" applies.]
[Rule "A last turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "adjust light rule" applies.]
[Rule "note object acquisitions rule" applies.]
[Rule "notify score changes rule" applies.]
[Rule "parse command rule" applies.]
>[5] x110
[ "x110" x110 ]
[Parsing for the verb 'x110' (1 lines)]
Expand All @@ -56,11 +75,19 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[line 0 token 1 word 2 : END]
[Line successfully parsed]
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "generate action rule" applies.]
[action110ing]
[Rule "announce items from multiple object lists rule" applies.]
[Rule "set pronouns from items from multiple object lists rule" applies.]
[Rule "before stage rule" applies.]
[Rule "basic visibility rule" applies.]
[Rule "basic accessibility rule" applies.]
[Rule "carrying requirements rule" applies.]
[Rule "instead stage rule" applies.]
[Rule "requested actions require persuasion rule" applies.]
[Rule "carry out requested actions rule" applies.]
[Rule "descend to specific action-processing rule" applies.]
[Rule "work out details of specific action rule" applies.]
[Rule "investigate player's awareness before action rule" applies.]
[Rule "player aware of his own actions rule" applies.]
[Rule "check stage rule" applies.]
Expand All @@ -73,9 +100,17 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[action110ing - succeeded]

[Rule "A first turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "every turn stage rule" applies.]
[Rule "timed events rule" applies.]
[Rule "advance time rule" applies.]
[Rule "update chronological records rule" applies.]
[Rule "A last turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "adjust light rule" applies.]
[Rule "note object acquisitions rule" applies.]
[Rule "notify score changes rule" applies.]
[Rule "parse command rule" applies.]
>[6] x220
[ "x220" x220 ]
[Parsing for the verb 'x220' (1 lines)]
Expand All @@ -84,11 +119,19 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[line 0 token 1 word 2 : END]
[Line successfully parsed]
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "generate action rule" applies.]
[action220ing]
[Rule "announce items from multiple object lists rule" applies.]
[Rule "set pronouns from items from multiple object lists rule" applies.]
[Rule "before stage rule" applies.]
[Rule "basic visibility rule" applies.]
[Rule "basic accessibility rule" applies.]
[Rule "carrying requirements rule" applies.]
[Rule "instead stage rule" applies.]
[Rule "requested actions require persuasion rule" applies.]
[Rule "carry out requested actions rule" applies.]
[Rule "descend to specific action-processing rule" applies.]
[Rule "work out details of specific action rule" applies.]
[Rule "investigate player's awareness before action rule" applies.]
[Rule "player aware of his own actions rule" applies.]
[Rule "check stage rule" applies.]
Expand All @@ -101,9 +144,17 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[action220ing - succeeded]

[Rule "A first turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "every turn stage rule" applies.]
[Rule "timed events rule" applies.]
[Rule "advance time rule" applies.]
[Rule "update chronological records rule" applies.]
[Rule "A last turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "adjust light rule" applies.]
[Rule "note object acquisitions rule" applies.]
[Rule "notify score changes rule" applies.]
[Rule "parse command rule" applies.]
>[7] x230
[ "x230" x230 ]
[Parsing for the verb 'x230' (1 lines)]
Expand All @@ -112,11 +163,19 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[line 0 token 1 word 2 : END]
[Line successfully parsed]
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "generate action rule" applies.]
[action230ing]
[Rule "announce items from multiple object lists rule" applies.]
[Rule "set pronouns from items from multiple object lists rule" applies.]
[Rule "before stage rule" applies.]
[Rule "basic visibility rule" applies.]
[Rule "basic accessibility rule" applies.]
[Rule "carrying requirements rule" applies.]
[Rule "instead stage rule" applies.]
[Rule "requested actions require persuasion rule" applies.]
[Rule "carry out requested actions rule" applies.]
[Rule "descend to specific action-processing rule" applies.]
[Rule "work out details of specific action rule" applies.]
[Rule "investigate player's awareness before action rule" applies.]
[Rule "player aware of his own actions rule" applies.]
[Rule "check stage rule" applies.]
Expand All @@ -129,9 +188,17 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[action230ing - succeeded]

[Rule "A first turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "every turn stage rule" applies.]
[Rule "timed events rule" applies.]
[Rule "advance time rule" applies.]
[Rule "update chronological records rule" applies.]
[Rule "A last turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "adjust light rule" applies.]
[Rule "note object acquisitions rule" applies.]
[Rule "notify score changes rule" applies.]
[Rule "parse command rule" applies.]
>[8] x240
[ "x240" x240 ]
[Parsing for the verb 'x240' (1 lines)]
Expand All @@ -140,11 +207,19 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[line 0 token 1 word 2 : END]
[Line successfully parsed]
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "generate action rule" applies.]
[action240ing]
[Rule "announce items from multiple object lists rule" applies.]
[Rule "set pronouns from items from multiple object lists rule" applies.]
[Rule "before stage rule" applies.]
[Rule "basic visibility rule" applies.]
[Rule "basic accessibility rule" applies.]
[Rule "carrying requirements rule" applies.]
[Rule "instead stage rule" applies.]
[Rule "requested actions require persuasion rule" applies.]
[Rule "carry out requested actions rule" applies.]
[Rule "descend to specific action-processing rule" applies.]
[Rule "work out details of specific action rule" applies.]
[Rule "investigate player's awareness before action rule" applies.]
[Rule "player aware of his own actions rule" applies.]
[Rule "check stage rule" applies.]
Expand All @@ -157,19 +232,30 @@ Rules tracing now switched on. Type "rules off" to switch it off again, or "rule
[action240ing - succeeded]

[Rule "A first turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "every turn stage rule" applies.]
[Rule "timed events rule" applies.]
[Rule "advance time rule" applies.]
[Rule "update chronological records rule" applies.]
[Rule "A last turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "adjust light rule" applies.]
[Rule "note object acquisitions rule" applies.]
[Rule "notify score changes rule" applies.]
[Rule "parse command rule" applies.]
>[ "quit" quit ]
[Parsing for the verb 'quit' (1 lines)]

[line 0 * -> Quit]
[line 0 token 1 word 2 : END]
[Line successfully parsed]
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "generate action rule" applies.]
[quitting the game]
[Rule "work out details of specific action rule" applies.]
[Rule "investigate player's awareness before action rule" applies.]
[Rule "player aware of his own actions rule" applies.]
[Rule "check stage rule" applies.]
[Rule "carry out stage rule" applies.]
[Rule "quit the game rule" applies.]
Are you sure you want to quit?
@@ -1,7 +1,7 @@
Parlor
Welcome
An Interactive Fiction
Release 1 / Serial number 150512 / Inform 7 build 6M22 (I6/v6.33 lib 6/12N) SD
Release 1 / Serial number 160428 / Inform 7 v10.1.0 / D

Parlor
A sparsely furnished room.
Expand All @@ -27,20 +27,33 @@
>[4] rules all
Rules tracing now switched to "all". Type "rules off" to switch it off again.

[Rule "parse command rule" applies.]
>[5] point at middle half
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "generate action rule" applies.]
[pointing at the center coconut half]
[Rule "announce items from multiple object lists rule" applies.]
[Rule "set pronouns from items from multiple object lists rule" applies.]
[Rule "before stage rule" applies.]
[Rule "basic visibility rule" applies.]
[Rule "can't act in the dark rule" applies.]
[Rule "basic accessibility rule" applies.]
[Rule "carrying requirements rule" applies.]
[Rule "instead stage rule" applies.]
[Rule "Instead of pointing at a coconut half ( called the nut )" applies.]
You have pointed gloriously at the center coconut half.
[pointing at the center coconut half - ended without result]

[Rule "A first turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "every turn stage rule" applies.]
[Rule "timed events rule" applies.]
[Rule "advance time rule" applies.]
[Rule "update chronological records rule" applies.]
[Rule "A last turn sequence rule" applies.]
[Rule "scene change machinery rule" applies.]
[Rule "adjust light rule" applies.]
[Rule "note object acquisitions rule" applies.]
[Rule "notify score changes rule" applies.]
[Rule "parse command rule" applies.]
> >

0 comments on commit cf2eaaf

Please sign in to comment.