Project

General

Profile

parser_fix_branch_3293a_revision_11163.txt

Greg Shah, 08/17/2017 05:03 PM

Download (7.26 KB)

 
1
=== modified file 'src/com/goldencode/p2j/uast/progress.g'
2
--- src/com/goldencode/p2j/uast/progress.g	2017-08-06 14:01:55 +0000
3
+++ src/com/goldencode/p2j/uast/progress.g	2017-08-17 21:00:44 +0000
4
@@ -1679,11 +1679,11 @@
5
 **                           needed because the 2nd alternative will already match record_funcs.
6
 **                           It was causing problems when the input function was used for
7
 **                           attribute access (meaningless, but it works).
8
-**    GES 20170706           Refined the CARET in the IMPORT UNFORMATTED statement to make it a
9
+**     GES 20170706          Refined the CARET in the IMPORT UNFORMATTED statement to make it a
10
 **                           more generic result, after testing different forms that are
11
 **                           possible in the 4GL. Added some undocumented names to key_function.
12
 **                           Added the MESSAGE-DIGEST() built-in function.
13
-**    GES 20170707           Added the FIRST-OBJECT attribute. Modified key_function to support
14
+**     GES 20170707          Added the FIRST-OBJECT attribute. Modified key_function to support
15
 **                           an undocumented (but fully functional) STRING form. Changed
16
 **                           incorrect usage of lvalue to expr in lob_spec. Added KW_BREAK to
17
 **                           the open_query_stmt. Unified the list_items_clause and the
18
@@ -1691,7 +1691,7 @@
19
 **                           matches the same syntax for both. The pairs version will generate
20
 **                           a runtime warning 4041 when used but for definition purposes there
21
 **                           is no checking.
22
-**    GES 20170708           The triggers phrase (used in widget and variable definitions or
23
+**     GES 20170708          The triggers phrase (used in widget and variable definitions or
24
 **                           create statements) has an undocumented feature where it allows the
25
 **                           embedded END statement (or END TRIGGERS) to be closed with etiher
26
 **                           a DOT or a COLON.  Other uses of the END statement seem to only
27
@@ -1700,31 +1700,33 @@
28
 **                           This is tricky because the matching closes the containing language
29
 **                           statement since this is just a phrase. This is referered to as the
30
 **                           allowColon undocumented feature.
31
-**    GES 20170710           Added undocumented abbreviation for ICFPARAMETER. Added
32
+**     GES 20170710          Added undocumented abbreviation for ICFPARAMETER. Added
33
 **                           XML-NODE-NAME as an attribute.
34
-**    CA  20170710           column_spec (used by DEFINE BROWSE ... DISPLAY ... statement) must
35
+**     CA  20170710          column_spec (used by DEFINE BROWSE ... DISPLAY ... statement) must
36
 **                           check for isQualifiedFieldNameQuirk before deciding if LT is a 
37
 **                           record or not (as between the table, dot and field might be
38
 **                           whitespace or comments).
39
 **                           embedded_sql: a "CLOSE cursor" must be disambiguated from a 
40
 **                           "CLOSE()" function call.
41
-**    CA  20170711           Added parse for "STOP-AFTER expr" option at DO, FOR and REPEAT.
42
+**     CA  20170711          Added parse for "STOP-AFTER expr" option at DO, FOR and REPEAT.
43
 **                           Added undocumented LABEL option at DEFINE TEMP-TABLE/WORK-TABLE.
44
 **                           Fixed problems in pre_scan_class: non-method members were not 
45
 **                           included and also it was not differentiating properly the recursive
46
 **                           calls.
47
-**    GES 20170719           Added ADD-PARENT-ID-RELATION and TOP-NAV-QUERY.
48
-**    HC  20170725           "COMPILE" statement must be disambiguated from a "COMPILE()" function
49
+**     GES 20170719          Added ADD-PARENT-ID-RELATION and TOP-NAV-QUERY.
50
+**     HC  20170725          "COMPILE" statement must be disambiguated from a "COMPILE()" function
51
 **                           call.
52
-**    HC  20170726           Added number of errors counter.
53
-**    ECF 20170731           Fixed connect_stmt to make physical database name optional.
54
-**    GES 20170730           BUFFER-COMPARE is reserved and can be abbreviated. BUFFER-COPY is
55
+**     HC  20170726          Added number of errors counter.
56
+**     ECF 20170731          Fixed connect_stmt to make physical database name optional.
57
+**     GES 20170730          BUFFER-COMPARE is reserved and can be abbreviated. BUFFER-COPY is
58
 **                           reserved.  Both of these changes were undocumented.
59
-**    CA  20170804           IN SUPER or IN handle functions can be defined inside a class.
60
-**    HC  20170804           Added ROW-STATE built-in function handling to record_funcs to fix
61
+**     CA  20170804          IN SUPER or IN handle functions can be defined inside a class.
62
+**     HC  20170804          Added ROW-STATE built-in function handling to record_funcs to fix
63
 **                           parsing of ROW-STATE function call.
64
-**    GES 20170806           Added undocumented string option X which can be present in any
65
+**     GES 20170806          Added undocumented string option X which can be present in any
66
 **                           case where U would be present (but not together with U).
67
+** 326 GES 20170817          Added the TERM reserved keyword and removed the abbreviation for
68
+**                           TERMINAL (the 4GL docs are incorrect on this point).
69
 */                                
70
 
71
 /*
72
@@ -30858,7 +30860,8 @@
73
          new Keyword("temp-directory"                 ,  8, KW_TEMP_DIR, false),
74
          new Keyword("temp-table"                     ,  0, KW_TEMP_TAB, false),
75
          new Keyword("temp-table-prepare"             ,  0, KW_TT_PREP , false),
76
-         new Keyword("terminal"                       ,  4, KW_TERM    , true ),
77
+         new Keyword("term"                           ,  0, KW_TERM    , true ),  // non-abbreviated synonym for TERMINAL
78
+         new Keyword("terminal"                       ,  0, KW_TERM    , true ),  // the keyword index incorrectly states that TERMINAL can be abbreviatated down to a minimum TERM, this is not correct, there is no abbreviation possible (just the synonym TERM)
79
          new Keyword("terminate"                      ,  0, KW_TERMINAT, false),
80
          new Keyword("text"                           ,  0, KW_TEXT    , true ),
81
          new Keyword("text-cursor"                    ,  0, KW_TXT_CURS, true ),
82
@@ -30980,7 +30983,7 @@
83
          new Keyword("virtual-width-pixels"           , 15, KW_VIRT_WP , false),
84
          new Keyword("vms"                            ,  0, KW_VMS     , true ),  // undocumented
85
          new Keyword("void"                           ,  0, KW_VOID    , false),
86
-         new Keyword("wait"                           ,  0, KW_WAIT_FOR, false),
87
+         new Keyword("wait"                           ,  0, KW_WAIT_FOR, false),  // non-abbreviated synonym for WAIT-FOR
88
          new Keyword("wait-for"                       ,  0, KW_WAIT_FOR, true ),
89
          new Keyword("warning"                        ,  0, KW_WARN    , false),
90
          new Keyword("web"                            ,  0, KW_WEB     , false),  // missing in keyword index, found in WebSpeed reference
91