Changeset 3811 for applications


Ignore:
Timestamp:
Jun 13, 2008, 5:01:50 AM (12 years ago)
Author:
orlov
Message:
  • UNDEFINED can't be concatenated with anything.
Location:
applications/trunk/LFC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • applications/trunk/LFC/lfc.ag

    r3809 r3811  
    5252  (IDENTIFIER)
    5353exp ->
    54   (IDENTIFIER | IF | LPAR | STRING | UNDEFINED)
     54  (IDENTIFIER | IF | LPAR | STRING)
    5555exp_with_where ->
     56  (IDENTIFIER | IF | LPAR | STRING)
     57exp_with_where_or_undef ->
    5658  (IDENTIFIER | IF | LPAR | STRING | UNDEFINED)
    5759exp_var_or_func ->
    5860  (LPAR)
    5961arg_list ->
    60   (IDENTIFIER | IF | LPAR | STRING | UNDEFINED)
     62  (IDENTIFIER | IF | LPAR | STRING)
    6163arg_list_rest ->
    6264  (COMMA)
     
    164166equation
    165167: (IDENTIFIER)
    166      funname LPAR pattern_list RPAR EQ exp_with_where SC
     168     funname LPAR pattern_list RPAR EQ exp_with_where_or_undef SC
    167169;
    168170
     
    230232: (STRING)
    231233     STRING #exp_concat
    232 | (UNDEFINED)
    233      UNDEFINED #exp_concat
    234234| (IDENTIFIER)
    235235     IDENTIFIER #exp_var_or_func #exp_concat
     
    243243: (STRING)
    244244     STRING #exp_concat_or_where
    245 | (UNDEFINED)
    246      UNDEFINED #exp_concat_or_where
    247245| (IDENTIFIER)
    248246     IDENTIFIER #exp_var_or_func #exp_concat_or_where
     
    253251;
    254252
     253exp_with_where_or_undef
     254: (UNDEFINED)
     255     UNDEFINED
     256| (IDENTIFIER | IF | LPAR | STRING)
     257     exp_with_where
     258;
     259
    255260#exp_var_or_func
    256261: (COMMA | CONCAT | ELSE | RPAR | SC |
     
    264269: (RPAR)
    265270     /* empty */
    266 | (IDENTIFIER | IF | LPAR | STRING | UNDEFINED)
     271| (IDENTIFIER | IF | LPAR | STRING)
    267272     exp #arg_list_rest
    268273;
  • applications/trunk/LFC/lfc.grammar

    r3809 r3811  
    4343definition : DEF equation equation_rest ;
    4444
    45 equation : funname LPAR pattern_list RPAR EQ exp_with_where SC ;
     45equation : funname LPAR pattern_list RPAR EQ exp_with_where_or_undef SC ;
    4646
    4747equation_rest : /*empty*/
     
    7474
    7575exp : STRING exp_concat
    76     | UNDEFINED exp_concat
    7776    | IDENTIFIER exp_var_or_func exp_concat
    7877    | LPAR exp_with_where RPAR exp_concat
     
    8180
    8281exp_with_where : STRING exp_concat_or_where
    83                | UNDEFINED exp_concat_or_where
    8482               | IDENTIFIER exp_var_or_func exp_concat_or_where
    8583               | LPAR exp_with_where RPAR exp_concat_or_where
    8684               | IF exp_with_where THEN exp_with_where ELSE exp_with_where
    8785               ;
     86
     87exp_with_where_or_undef : UNDEFINED
     88                        | exp_with_where
     89                        ;
    8890
    8991exp_var_or_func : /*empty*/
Note: See TracChangeset for help on using the changeset viewer.