1
0
Fork 0
mirror of https://github.com/ganelson/inform.git synced 2024-06-28 21:14:57 +03:00

Fix for Mantis bug 1844

This commit is contained in:
Graham Nelson 2022-04-14 09:41:30 +01:00
parent 15976401ec
commit fcb3dbec7e
7 changed files with 61 additions and 29 deletions

View file

@ -1,6 +1,6 @@
# Inform 7
v10.1.0-alpha.1+6U82 'Krypton' (13 April 2022)
v10.1.0-alpha.1+6U83 'Krypton' (14 April 2022)
## About Inform 7

View file

@ -1,3 +1,3 @@
Prerelease: alpha.1
Build Date: 13 April 2022
Build Number: 6U82
Build Date: 14 April 2022
Build Number: 6U83

View file

@ -1,33 +1,37 @@
100.0% in inform7 run
68.7% in compilation to Inter
47.7% in //Sequence::undertake_queued_tasks//
4.7% in //MajorNodes::pre_pass//
3.4% in //MajorNodes::pass_1//
68.3% in compilation to Inter
47.8% in //Sequence::undertake_queued_tasks//
4.6% in //MajorNodes::pre_pass//
3.3% in //MajorNodes::pass_1//
2.4% in //RTPhrasebook::compile_entries//
1.7% in //ImperativeDefinitions::assess_all//
1.8% in //ImperativeDefinitions::assess_all//
1.5% in //RTKindConstructors::compile//
1.1% in //Sequence::lint_inter//
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.3% in //ImperativeDefinitions::compile_first_block//
0.3% in //Sequence::undertake_queued_tasks//
0.1% in //CompletionModule::compile//
0.4% in //ImperativeDefinitions::compile_first_block//
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 //RTKindConstructors::compile_permissions//
0.1% in //Task::make_built_in_kind_constructors//
0.1% in //Understand::traverse//
0.1% in //World::stages_II_and_III//
2.5% not specifically accounted for
28.7% in running Inter pipeline
10.3% in step 14/15: generate inform6 -> auto.inf
7.6% in step 5/15: load-binary-kits
6.3% in step 6/15: make-synoptic-module
2.0% not specifically accounted for
28.9% in running Inter pipeline
10.1% in step 14/15: generate inform6 -> auto.inf
7.4% in step 5/15: load-binary-kits
6.7% in step 6/15: make-synoptic-module
1.5% in step 9/15: make-identifiers-unique
0.3% in step 12/15: eliminate-redundant-operations
0.3% in step 4/15: compile-splats
0.3% in step 7/15: shorten-wiring
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
0.3% in step 8/15: detect-indirect-calls
0.1% in step 11/15: eliminate-redundant-labels
1.2% not specifically accounted for
2.2% in supervisor
0.2% not specifically accounted for
0.2% in step 11/15: eliminate-redundant-labels
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.7% not specifically accounted for
2.3% in supervisor
0.4% not specifically accounted for

View file

@ -189,10 +189,10 @@ The current S-grammar has the following verb and preposition usages:
{verb 'test' 3p s act IS_TENSE +ve}
{verb 'test' 3p p act IS_TENSE +ve}
{verb 'test' s/p 3p act WAS_TENSE +ve}
{verb '' 3p s act IS_TENSE +ve}
{verb '' 3p s act IS_TENSE +ve}
{verb '' 3p s act IS_TENSE +ve}
{verb '' 3p s act IS_TENSE +ve}
{verb '<null-assemblage>' 3p s act IS_TENSE +ve}
{verb '<null-assemblage>' 3p s act IS_TENSE +ve}
{verb '<null-assemblage>' 3p s act IS_TENSE +ve}
{verb '<null-assemblage>' 3p s act IS_TENSE +ve}
{verb 'be able to' 3p s act HASBEEN_TENSE -ve}
{verb 'be able to' 3p p act HASBEEN_TENSE -ve}
{verb 'be able to' s/p 3p act HADBEEN_TENSE -ve}

View file

@ -0,0 +1,5 @@
Foo is a room.
Table of Blah
blah
taking

View file

@ -0,0 +1,13 @@
Inform 7 v10.1.0 has started.
I've now read your source text, which is 9 words long.
I've also read Basic Inform by Graham Nelson, which is 7691 words long.
I've also read English Language by Graham Nelson, which is 2328 words long.
I've also read Standard Rules by Graham Nelson, which is 32132 words long.
Problem__ PM_APAsConstant
>--> You wrote 'taking' (source text, line 5): but this is a description of
an action which is too vague to be used as a constant value, and should
either be something like 'taking action' (for the action in the abstract)
or 'taking the beach ball' (for a definitely specific action), but not
something like 'taking' or 'taking a container' which refer to a whole
collection of possible actions.
Inform 7 has finished.

View file

@ -247,6 +247,16 @@ int CompileRvalues::action_kinds(value_holster *VH, kind *K, parse_node *value)
return TRUE;
}
if (Kinds::eq(K, K_description_of_action)) {
if (CompileValues::compiling_in_constant_mode()) {
StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_APAsConstant),
"this is a description of an action which is too vague to be used "
"as a constant value",
"and should either be something like 'taking action' (for the action "
"in the abstract) or 'taking the beach ball' (for a definitely "
"specific action), but not something like 'taking' or 'taking a "
"container' which refer to a whole collection of possible actions.");
return TRUE;
}
action_pattern *ap = Node::get_constant_action_pattern(value);
RTActionPatterns::compile_pattern_match(ap);
return TRUE;