summaryrefslogtreecommitdiff
path: root/web/funnelAC/answers/pr06.lis
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /web/funnelAC/answers/pr06.lis
Initial commit
Diffstat (limited to 'web/funnelAC/answers/pr06.lis')
-rw-r--r--web/funnelAC/answers/pr06.lis698
1 files changed, 698 insertions, 0 deletions
diff --git a/web/funnelAC/answers/pr06.lis b/web/funnelAC/answers/pr06.lis
new file mode 100644
index 0000000000..2a7d80d8d9
--- /dev/null
+++ b/web/funnelAC/answers/pr06.lis
@@ -0,0 +1,698 @@
+FUNNELWEB LISTING FILE
+======================
+
+Dump of mapped file "<<Suppressed>>".
+
+MEMORY DUMP OF MAPPED FILE
+==========================
+
++-------------------------------------------------+------------------+
+| 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | 0123456789ABCDEF |
++-------------------------------------------------+------------------+
+| 50 52 30 36 3A 20 54 65 73 74 20 74 68 65 20 70 | PR06: Test the p |
+| 61 72 73 69 6E 67 20 6F 6E 20 69 6E 76 6F 63 61 | arsing on invoca |
+| 74 69 6F 6E 20 6E 75 6D 62 65 72 20 63 6F 6E 73 | tion number cons |
+| 74 72 61 69 6E 74 73 2E 0A 0A 54 72 69 70 20 74 | traints...Trip t |
+| 68 65 20 70 61 72 73 65 72 20 73 6F 20 77 65 20 | he parser so we |
+| 64 6F 6E 27 74 20 67 65 74 20 70 61 73 74 20 69 | don't get past i |
+| 74 2E 0A 40 3E 0A 0A 31 2E 20 54 65 73 74 20 77 | t..@>..1. Test w |
+| 69 74 68 20 6E 6F 20 7A 65 72 6F 20 61 6E 64 20 | ith no zero and |
+| 6E 6F 20 6D 61 6E 79 2E 0A 40 24 40 3C 53 6C 6F | no many..@$@<Slo |
+| 74 68 40 3E 40 7B 4E 6F 20 7A 65 72 6F 20 61 6E | th@>@{No zero an |
+| 64 20 6E 6F 20 6D 61 6E 79 20 69 6E 20 74 68 69 | d no many in thi |
+| 73 20 6D 61 63 72 6F 40 7D 0A 0A 32 2E 20 54 65 | s macro@}..2. Te |
+| 73 74 20 77 69 74 68 20 61 20 7A 65 72 6F 2E 0A | st with a zero.. |
+| 40 24 40 3C 53 6C 6F 74 68 20 7A 65 72 6F 40 3E | @$@<Sloth zero@> |
+| 40 5A 40 7B 43 61 6E 20 62 65 20 63 61 6C 6C 65 | @Z@{Can be calle |
+| 64 20 66 72 6F 6D 20 30 20 74 6F 20 31 20 74 69 | d from 0 to 1 ti |
+| 6D 65 73 2E 40 7D 0A 0A 33 2E 20 54 65 73 74 20 | mes.@}..3. Test |
+| 77 69 74 68 20 61 20 6D 61 6E 79 2E 0A 40 24 40 | with a many..@$@ |
+| 3C 53 6C 6F 74 68 20 6D 61 6E 79 40 3E 40 4D 40 | <Sloth many@>@M@ |
+| 7B 43 61 6E 20 62 65 20 63 61 6C 6C 65 64 20 66 | {Can be called f |
+| 72 6F 6D 20 31 20 74 6F 20 69 6E 66 69 6E 69 74 | rom 1 to infinit |
+| 79 20 74 69 6D 65 73 2E 40 7D 0A 0A 34 2E 20 54 | y times.@}..4. T |
+| 65 73 74 20 77 69 74 68 20 61 20 7A 65 72 6F 20 | est with a zero |
+| 61 6E 64 20 61 20 6D 61 6E 79 2E 0A 40 24 40 3C | and a many..@$@< |
+| 53 6C 6F 74 68 20 7A 65 72 6F 6D 61 6E 79 40 3E | Sloth zeromany@> |
+| 40 5A 40 4D 40 7B 43 61 6E 20 62 65 20 63 61 6C | @Z@M@{Can be cal |
+| 6C 65 64 20 66 72 6F 6D 20 30 20 74 6F 20 69 6E | led from 0 to in |
+| 66 69 6E 69 74 79 20 74 69 6D 65 73 2E 40 7D 0A | finity times.@}. |
+| 0A 35 2E 20 54 65 73 74 20 77 69 74 68 20 61 20 | .5. Test with a |
+| 7A 65 72 6F 20 61 6E 64 20 61 20 6D 61 6E 79 20 | zero and a many |
+| 62 75 74 20 6F 75 74 20 6F 66 20 6F 72 64 65 72 | but out of order |
+| 20 28 73 68 6F 75 6C 64 20 67 69 76 65 20 65 72 | (should give er |
+| 72 6F 72 29 2E 0A 40 24 40 3C 53 6C 6F 74 68 20 | ror)..@$@<Sloth |
+| 6D 61 6E 79 7A 65 72 6F 40 3E 40 4D 40 5A 40 7B | manyzero@>@M@Z@{ |
+| 4F 6F 70 73 2E 40 7D 0A 40 41 40 3C 45 72 72 6F | Oops.@}.@A@<Erro |
+| 72 20 72 65 63 6F 76 65 72 79 20 70 6F 69 6E 74 | r recovery point |
+| 40 3E 0A 0A 36 2E 20 54 65 73 74 20 77 69 74 68 | @>..6. Test with |
+| 20 73 79 6E 74 61 63 74 69 63 20 65 72 72 6F 72 | syntactic error |
+| 73 2E 0A 0A 40 24 40 3C 53 6C 6F 74 68 20 61 40 | s...@$@<Sloth a@ |
+| 3E 20 40 4D 20 40 5A 20 40 7B 4F 6F 70 73 2E 40 | > @M @Z @{Oops.@ |
+| 7D 0A 40 41 40 3C 45 72 72 6F 72 20 72 65 63 6F | }.@A@<Error reco |
+| 76 65 72 79 20 70 6F 69 6E 74 40 3E 0A 0A 40 24 | very point@>..@$ |
+| 40 3C 53 6C 6F 74 68 20 62 40 3E 40 5A 40 5A 40 | @<Sloth b@>@Z@Z@ |
+| 7B 4F 6F 70 73 2E 40 7D 0A 40 41 40 3C 45 72 72 | {Oops.@}.@A@<Err |
+| 6F 72 20 72 65 63 6F 76 65 72 79 20 70 6F 69 6E | or recovery poin |
+| 74 40 3E 0A 0A 40 24 40 3C 53 6C 6F 74 68 20 63 | t@>..@$@<Sloth c |
+| 40 5A 40 3E 40 7B 4F 6F 70 73 2E 40 7D 0A 40 41 | @Z@>@{Oops.@}.@A |
+| 40 3C 45 72 72 6F 72 20 72 65 63 6F 76 65 72 79 | @<Error recovery |
+| 20 70 6F 69 6E 74 40 3E 0A 0A 40 24 40 3C 53 6C | point@>..@$@<Sl |
+| 6F 74 68 20 64 40 3E 5A 40 7B 4F 6F 70 73 2E 40 | oth d@>Z@{Oops.@ |
+| 7D 0A 40 41 40 3C 45 72 72 6F 72 20 72 65 63 6F | }.@A@<Error reco |
+| 76 65 72 79 20 70 6F 69 6E 74 40 3E 0A 0A 40 24 | very point@>..@$ |
+| 40 3C 53 6C 6F 74 68 20 64 40 3E 40 5A 4D 40 7B | @<Sloth d@>@ZM@{ |
+| 4F 6F 70 73 2E 40 7D 0A 40 41 40 3C 45 72 72 6F | Oops.@}.@A@<Erro |
+| 72 20 72 65 63 6F 76 65 72 79 20 70 6F 69 6E 74 | r recovery point |
+| 40 3E 0A 0A 0A | @>... |
++-------------------------------------------------+------------------+
+
+
+=========================== Start of LINE LIST DUMP ============================
+
+Globl Local| Text
+-----------+--------------------------------------------------------------------
+00001 00001| PR06: Test the parsing on invocation number constraints.<010>
+00002 00002| <010>
+00003 00003| Trip the parser so we don't get past it.<010>
+00004 00004| @><010>
+00005 00005| <010>
+00006 00006| 1. Test with no zero and no many.<010>
+00007 00007| @$@<Sloth@>@{No zero and no many in this macro@}<010>
+00008 00008| <010>
+00009 00009| 2. Test with a zero.<010>
+00010 00010| @$@<Sloth zero@>@Z@{Can be called from 0 to 1 times.@}<010>
+00011 00011| <010>
+00012 00012| 3. Test with a many.<010>
+00013 00013| @$@<Sloth many@>@M@{Can be called from 1 to infinity times.@}<010>
+00014 00014| <010>
+00015 00015| 4. Test with a zero and a many.<010>
+00016 00016| @$@<Sloth zeromany@>@Z@M@{Can be called from 0 to infinity times.@}<010>
+00017 00017| <010>
+00018 00018| 5. Test with a zero and a many but out of order (should give error).<010>
+00019 00019| @$@<Sloth manyzero@>@M@Z@{Oops.@}<010>
+00020 00020| @A@<Error recovery point@><010>
+00021 00021| <010>
+00022 00022| 6. Test with syntactic errors.<010>
+00023 00023| <010>
+00024 00024| @$@<Sloth a@> @M @Z @{Oops.@}<010>
+00025 00025| @A@<Error recovery point@><010>
+00026 00026| <010>
+00027 00027| @$@<Sloth b@>@Z@Z@{Oops.@}<010>
+00028 00028| @A@<Error recovery point@><010>
+00029 00029| <010>
+00030 00030| @$@<Sloth c@Z@>@{Oops.@}<010>
+00031 00031| @A@<Error recovery point@><010>
+00032 00032| <010>
+00033 00033| @$@<Sloth d@>Z@{Oops.@}<010>
+00034 00034| @A@<Error recovery point@><010>
+00035 00035| <010>
+00036 00036| @$@<Sloth d@>@ZM@{Oops.@}<010>
+00037 00037| @A@<Error recovery point@><010>
+00038 00038| <010>
+00039 00039| <010>
+00040 00040| <End-Of-File><010>
+-----------+--------------------------------------------------------------------
+Globl Local| Text
+
+============================ End of LINE LIST DUMP =============================
+
+
+=========================== Start of TOKEN LIST DUMP ===========================
+
+Summary: There are 131 tokens in the token list.
+
+Line[Column]: Token Description
+-------------------------------
+
+0001[01]: Text. Text scrap[Grey]="PR06: Test the parsing on invocation number constraints.<010>
+<010>
+Trip the parser so we don't get past it.<010>
+"
+0004[01]: @> Close name.
+0004[03]: Text. Text scrap[Grey]="<010>
+<010>
+1. Test with no zero and no many.<010>
+"
+0007[01]: @$ Macro defn.
+0007[03]: @< Open name.
+0007[05]: Text. Text scrap[Grey]="Sloth"
+0007[10]: @> Close name.
+0007[12]: @{ Open defn.
+0007[14]: Text. Text scrap[Grey]="No zero and no many in this macro"
+0007[47]: @} Close defn.
+0007[49]: Text. Text scrap[Grey]="<010>
+<010>
+2. Test with a zero.<010>
+"
+0010[01]: @$ Macro defn.
+0010[03]: @< Open name.
+0010[05]: Text. Text scrap[Grey]="Sloth zero"
+0010[15]: @> Close name.
+0010[17]: @Z Zero calls.
+0010[19]: @{ Open defn.
+0010[21]: Text. Text scrap[Grey]="Can be called from 0 to 1 times."
+0010[53]: @} Close defn.
+0010[55]: Text. Text scrap[Grey]="<010>
+<010>
+3. Test with a many.<010>
+"
+0013[01]: @$ Macro defn.
+0013[03]: @< Open name.
+0013[05]: Text. Text scrap[Grey]="Sloth many"
+0013[15]: @> Close name.
+0013[17]: @M Many calls.
+0013[19]: @{ Open defn.
+0013[21]: Text. Text scrap[Grey]="Can be called from 1 to infinity times."
+0013[60]: @} Close defn.
+0013[62]: Text. Text scrap[Grey]="<010>
+<010>
+4. Test with a zero and a many.<010>
+"
+0016[01]: @$ Macro defn.
+0016[03]: @< Open name.
+0016[05]: Text. Text scrap[Grey]="Sloth zeromany"
+0016[19]: @> Close name.
+0016[21]: @Z Zero calls.
+0016[23]: @M Many calls.
+0016[25]: @{ Open defn.
+0016[27]: Text. Text scrap[Grey]="Can be called from 0 to infinity times."
+0016[66]: @} Close defn.
+0016[68]: Text. Text scrap[Grey]="<010>
+<010>
+5. Test with a zero and a many but out of order (should give error).<010>
+"
+0019[01]: @$ Macro defn.
+0019[03]: @< Open name.
+0019[05]: Text. Text scrap[Grey]="Sloth manyzero"
+0019[19]: @> Close name.
+0019[21]: @M Many calls.
+0019[23]: @Z Zero calls.
+0019[25]: @{ Open defn.
+0019[27]: Text. Text scrap[Grey]="Oops."
+0019[32]: @} Close defn.
+0019[34]: Text. Text scrap[White]="<010>
+"
+0020[01]: @A New section (Level 1).
+0020[03]: @< Open name.
+0020[05]: Text. Text scrap[Grey]="Error recovery point"
+0020[25]: @> Close name.
+0020[27]: Text. Text scrap[Grey]="<010>
+<010>
+6. Test with syntactic errors.<010>
+<010>
+"
+0024[01]: @$ Macro defn.
+0024[03]: @< Open name.
+0024[05]: Text. Text scrap[Grey]="Sloth a"
+0024[12]: @> Close name.
+0024[14]: Text. Text scrap[White]=" "
+0024[15]: @M Many calls.
+0024[17]: Text. Text scrap[White]=" "
+0024[18]: @Z Zero calls.
+0024[20]: Text. Text scrap[White]=" "
+0024[21]: @{ Open defn.
+0024[23]: Text. Text scrap[Grey]="Oops."
+0024[28]: @} Close defn.
+0024[30]: Text. Text scrap[White]="<010>
+"
+0025[01]: @A New section (Level 1).
+0025[03]: @< Open name.
+0025[05]: Text. Text scrap[Grey]="Error recovery point"
+0025[25]: @> Close name.
+0025[27]: Text. Text scrap[White]="<010>
+<010>
+"
+0027[01]: @$ Macro defn.
+0027[03]: @< Open name.
+0027[05]: Text. Text scrap[Grey]="Sloth b"
+0027[12]: @> Close name.
+0027[14]: @Z Zero calls.
+0027[16]: @Z Zero calls.
+0027[18]: @{ Open defn.
+0027[20]: Text. Text scrap[Grey]="Oops."
+0027[25]: @} Close defn.
+0027[27]: Text. Text scrap[White]="<010>
+"
+0028[01]: @A New section (Level 1).
+0028[03]: @< Open name.
+0028[05]: Text. Text scrap[Grey]="Error recovery point"
+0028[25]: @> Close name.
+0028[27]: Text. Text scrap[White]="<010>
+<010>
+"
+0030[01]: @$ Macro defn.
+0030[03]: @< Open name.
+0030[05]: Text. Text scrap[Grey]="Sloth c"
+0030[12]: @Z Zero calls.
+0030[14]: @> Close name.
+0030[16]: @{ Open defn.
+0030[18]: Text. Text scrap[Grey]="Oops."
+0030[23]: @} Close defn.
+0030[25]: Text. Text scrap[White]="<010>
+"
+0031[01]: @A New section (Level 1).
+0031[03]: @< Open name.
+0031[05]: Text. Text scrap[Grey]="Error recovery point"
+0031[25]: @> Close name.
+0031[27]: Text. Text scrap[White]="<010>
+<010>
+"
+0033[01]: @$ Macro defn.
+0033[03]: @< Open name.
+0033[05]: Text. Text scrap[Grey]="Sloth d"
+0033[12]: @> Close name.
+0033[14]: Text. Text scrap[Grey]="Z"
+0033[15]: @{ Open defn.
+0033[17]: Text. Text scrap[Grey]="Oops."
+0033[22]: @} Close defn.
+0033[24]: Text. Text scrap[White]="<010>
+"
+0034[01]: @A New section (Level 1).
+0034[03]: @< Open name.
+0034[05]: Text. Text scrap[Grey]="Error recovery point"
+0034[25]: @> Close name.
+0034[27]: Text. Text scrap[White]="<010>
+<010>
+"
+0036[01]: @$ Macro defn.
+0036[03]: @< Open name.
+0036[05]: Text. Text scrap[Grey]="Sloth d"
+0036[12]: @> Close name.
+0036[14]: @Z Zero calls.
+0036[16]: Text. Text scrap[Grey]="M"
+0036[17]: @{ Open defn.
+0036[19]: Text. Text scrap[Grey]="Oops."
+0036[24]: @} Close defn.
+0036[26]: Text. Text scrap[White]="<010>
+"
+0037[01]: @A New section (Level 1).
+0037[03]: @< Open name.
+0037[05]: Text. Text scrap[Grey]="Error recovery point"
+0037[25]: @> Close name.
+0037[27]: Text. Text scrap[White]="<010>
+<010>
+<010>
+"
+0040[01]: End Of File.
+============================ End of TOKEN LIST DUMP ============================
+
+
+========================== Start of MACRO TABLE DUMP ===========================
+
+
+------------------- Start of Macro Dump --------------------
+Macro Name : "Sloth"
+Defined? : Yes.
+Parameters : 0
+Additive? : No.
+Zero Calls? : No.
+Many Calls? : No.
+Output File?: No.
+Call list :
+Macro body :
+
+--Start of List of Body Parts--
+This macro has 1 body part.
+Body part 1: Seqnum=1, Pos(L,C)=(7,3), Expression follows:
+
+---- Start of Expression ----
+
+----- Start Text Element -----
+Text scrap[Grey]="No zero and no many in this macro"
+------ End Text Element ------
+
+----- End of Expression -----
+
+---End of List of Body Parts---
+
+-------------------- End of Macro Dump ---------------------
+
+
+
+------------------- Start of Macro Dump --------------------
+Macro Name : "Sloth a"
+Defined? : No.
+-------------------- End of Macro Dump ---------------------
+
+
+
+------------------- Start of Macro Dump --------------------
+Macro Name : "Sloth b"
+Defined? : Yes.
+Parameters : 0
+Additive? : No.
+Zero Calls? : Yes.
+Many Calls? : No.
+Output File?: No.
+Call list :
+Macro body :
+
+--Start of List of Body Parts--
+This macro has 0 body parts.
+---End of List of Body Parts---
+
+-------------------- End of Macro Dump ---------------------
+
+
+
+------------------- Start of Macro Dump --------------------
+Macro Name : "Sloth d"
+Defined? : No.
+-------------------- End of Macro Dump ---------------------
+
+
+
+------------------- Start of Macro Dump --------------------
+Macro Name : "Sloth many"
+Defined? : Yes.
+Parameters : 0
+Additive? : No.
+Zero Calls? : No.
+Many Calls? : Yes.
+Output File?: No.
+Call list :
+Macro body :
+
+--Start of List of Body Parts--
+This macro has 1 body part.
+Body part 1: Seqnum=3, Pos(L,C)=(13,3), Expression follows:
+
+---- Start of Expression ----
+
+----- Start Text Element -----
+Text scrap[Grey]="Can be called from 1 to infinity times."
+------ End Text Element ------
+
+----- End of Expression -----
+
+---End of List of Body Parts---
+
+-------------------- End of Macro Dump ---------------------
+
+
+
+------------------- Start of Macro Dump --------------------
+Macro Name : "Sloth manyzero"
+Defined? : Yes.
+Parameters : 0
+Additive? : No.
+Zero Calls? : No.
+Many Calls? : Yes.
+Output File?: No.
+Call list :
+Macro body :
+
+--Start of List of Body Parts--
+This macro has 0 body parts.
+---End of List of Body Parts---
+
+-------------------- End of Macro Dump ---------------------
+
+
+
+------------------- Start of Macro Dump --------------------
+Macro Name : "Sloth zero"
+Defined? : Yes.
+Parameters : 0
+Additive? : No.
+Zero Calls? : Yes.
+Many Calls? : No.
+Output File?: No.
+Call list :
+Macro body :
+
+--Start of List of Body Parts--
+This macro has 1 body part.
+Body part 1: Seqnum=2, Pos(L,C)=(10,3), Expression follows:
+
+---- Start of Expression ----
+
+----- Start Text Element -----
+Text scrap[Grey]="Can be called from 0 to 1 times."
+------ End Text Element ------
+
+----- End of Expression -----
+
+---End of List of Body Parts---
+
+-------------------- End of Macro Dump ---------------------
+
+
+
+------------------- Start of Macro Dump --------------------
+Macro Name : "Sloth zeromany"
+Defined? : Yes.
+Parameters : 0
+Additive? : No.
+Zero Calls? : Yes.
+Many Calls? : Yes.
+Output File?: No.
+Call list :
+Macro body :
+
+--Start of List of Body Parts--
+This macro has 1 body part.
+Body part 1: Seqnum=4, Pos(L,C)=(16,3), Expression follows:
+
+---- Start of Expression ----
+
+----- Start Text Element -----
+Text scrap[Grey]="Can be called from 0 to infinity times."
+------ End Text Element ------
+
+----- End of Expression -----
+
+---End of List of Body Parts---
+
+-------------------- End of Macro Dump ---------------------
+
+
+
+=========================== End of MACRO TABLE DUMP ============================
+
+
+========================= Start of DOCUMENT LIST DUMP ==========================
+
+
+TEXT COMPONENT: Pos(L,C)=(1,1).
+
+-- Start of Text Scrap List --
+Text scrap[Grey]="PR06: Test the parsing on invocation number constraints.<010>
+<010>
+Trip the parser so we don't get past it.<010>
+"
+--- End of Text Scrap List ---
+
+
+TEXT COMPONENT: Pos(L,C)=(4,3).
+
+-- Start of Text Scrap List --
+Text scrap[Grey]="<010>
+<010>
+1. Test with no zero and no many.<010>
+"
+--- End of Text Scrap List ---
+
+
+MACRO DEFINITION COMPONENT: Pos(L,C)=(7,1).
+Part 1 of macro @<Sloth@>.
+
+TEXT COMPONENT: Pos(L,C)=(7,49).
+
+-- Start of Text Scrap List --
+Text scrap[Grey]="<010>
+<010>
+2. Test with a zero.<010>
+"
+--- End of Text Scrap List ---
+
+
+MACRO DEFINITION COMPONENT: Pos(L,C)=(10,1).
+Part 1 of macro @<Sloth zero@>.
+
+TEXT COMPONENT: Pos(L,C)=(10,55).
+
+-- Start of Text Scrap List --
+Text scrap[Grey]="<010>
+<010>
+3. Test with a many.<010>
+"
+--- End of Text Scrap List ---
+
+
+MACRO DEFINITION COMPONENT: Pos(L,C)=(13,1).
+Part 1 of macro @<Sloth many@>.
+
+TEXT COMPONENT: Pos(L,C)=(13,62).
+
+-- Start of Text Scrap List --
+Text scrap[Grey]="<010>
+<010>
+4. Test with a zero and a many.<010>
+"
+--- End of Text Scrap List ---
+
+
+MACRO DEFINITION COMPONENT: Pos(L,C)=(16,1).
+Part 1 of macro @<Sloth zeromany@>.
+
+TEXT COMPONENT: Pos(L,C)=(16,68).
+
+-- Start of Text Scrap List --
+Text scrap[Grey]="<010>
+<010>
+5. Test with a zero and a many but out of order (should give error).<010>
+"
+--- End of Text Scrap List ---
+
+
+TYPESETTER DIRECTIVE COMPONENT:
+ Section "1", Section name="Error recovery point".
+
+TEXT COMPONENT: Pos(L,C)=(20,27).
+
+-- Start of Text Scrap List --
+Text scrap[Grey]="<010>
+<010>
+6. Test with syntactic errors.<010>
+<010>
+"
+--- End of Text Scrap List ---
+
+
+TYPESETTER DIRECTIVE COMPONENT:
+ Section "2", Section name="Error recovery point".
+
+TEXT COMPONENT: Pos(L,C)=(25,27).
+
+-- Start of Text Scrap List --
+Text scrap[White]="<010>
+<010>
+"
+--- End of Text Scrap List ---
+
+
+TYPESETTER DIRECTIVE COMPONENT:
+ Section "3", Section name="Error recovery point".
+
+TEXT COMPONENT: Pos(L,C)=(28,27).
+
+-- Start of Text Scrap List --
+Text scrap[White]="<010>
+<010>
+"
+--- End of Text Scrap List ---
+
+
+TYPESETTER DIRECTIVE COMPONENT:
+ Section "4", Section name="Error recovery point".
+
+TEXT COMPONENT: Pos(L,C)=(31,27).
+
+-- Start of Text Scrap List --
+Text scrap[White]="<010>
+<010>
+"
+--- End of Text Scrap List ---
+
+
+TYPESETTER DIRECTIVE COMPONENT:
+ Section "5", Section name="Error recovery point".
+
+TEXT COMPONENT: Pos(L,C)=(34,27).
+
+-- Start of Text Scrap List --
+Text scrap[White]="<010>
+<010>
+"
+--- End of Text Scrap List ---
+
+
+TYPESETTER DIRECTIVE COMPONENT:
+ Section "6", Section name="Error recovery point".
+
+TEXT COMPONENT: Pos(L,C)=(37,27).
+
+-- Start of Text Scrap List --
+Text scrap[White]="<010>
+<010>
+<010>
+"
+--- End of Text Scrap List ---
+
+
+========================== End of DOCUMENT LIST DUMP ===========================
+
+
+Global Local| Input File
+------------+-------------------------------------------------------------------
+ 1 1| PR06: Test the parsing on invocation number constraints.
+ 2 2|
+ 3 3| Trip the parser so we don't get past it.
+ 4 4| @>
+ Error|.^The parser was at the top level and was expecting
+ |.^one of: {Directive, Text, Macro definition, EOF}.
+ 5 5|
+ 6 6| 1. Test with no zero and no many.
+ 7 7| @$@<Sloth@>@{No zero and no many in this macro@}
+ 8 8|
+ 9 9| 2. Test with a zero.
+ 10 10| @$@<Sloth zero@>@Z@{Can be called from 0 to 1 times.@}
+ 11 11|
+ 12 12| 3. Test with a many.
+ 13 13| @$@<Sloth many@>@M@{Can be called from 1 to infinity times.@}
+ 14 14|
+ 15 15| 4. Test with a zero and a many.
+ 16 16| @$@<Sloth zeromany@>@Z@M@{Can be called from 0 to infinity times.@}
+ 17 17|
+ 18 18| 5. Test with a zero and a many but out of order (should give error).
+ 19 19| @$@<Sloth manyzero@>@M@Z@{Oops.@}
+ Error|.......................^Expecting '@{'.
+ |.......................^Skipping after error to the next major construct...
+ 20 20| @A@<Error recovery point@>
+ |.^...skipped to here after the error.
+ 21 21|
+ 22 22| 6. Test with syntactic errors.
+ 23 23|
+ 24 24| @$@<Sloth a@> @M @Z @{Oops.@}
+ Error|..............^Expecting "==@{" or "+=@{" or just "@{".
+ |..............^(or @Z or @M if they have not already appeared).
+ |..............^Note: FunnelWeb is intolerant of spaces at this point.
+ |...............^Skipping after error to the next major construct...
+ 25 25| @A@<Error recovery point@>
+ |.^...skipped to here after the error.
+ 26 26|
+ 27 27| @$@<Sloth b@>@Z@Z@{Oops.@}
+ Error|................^Expecting '@{'.
+ |................^Skipping after error to the next major construct...
+ 28 28| @A@<Error recovery point@>
+ |.^...skipped to here after the error.
+ 29 29|
+ 30 30| @$@<Sloth c@Z@>@{Oops.@}
+ Error|............^Illegal character or symbol in name.
+ |............^Skipping after error to the next major construct...
+ 31 31| @A@<Error recovery point@>
+ |.^...skipped to here after the error.
+ 32 32|
+ 33 33| @$@<Sloth d@>Z@{Oops.@}
+ Error|..............^Expecting "==@{" or "+=@{" or just "@{".
+ |..............^(or @Z or @M if they have not already appeared).
+ |..............^Note: FunnelWeb is intolerant of spaces at this point.
+ |...............^Skipping after error to the next major construct...
+ 34 34| @A@<Error recovery point@>
+ |.^...skipped to here after the error.
+ 35 35|
+ 36 36| @$@<Sloth d@>@ZM@{Oops.@}
+ Error|................^Expecting "==@{" or "+=@{" or just "@{".
+ |................^(or @Z or @M if they have not already appeared).
+ |................^Note: FunnelWeb is intolerant of spaces at this point.
+ |.................^Skipping after error to the next major construct...
+ 37 37| @A@<Error recovery point@>
+ |.^...skipped to here after the error.
+ 38 38|
+ 39 39|
+ | <End-Of-File>
+------------+-------------------------------------------------------------------
+
+There were 7 Errors.