Fully optional comma.
As a side effect, return now must end with "!".
This commit is contained in:
parent
ab0cd1f1de
commit
4cdde5025a
13
Monicelli.y
13
Monicelli.y
|
@ -66,14 +66,11 @@ main:
|
||||||
MAIN statements
|
MAIN statements
|
||||||
;
|
;
|
||||||
statements:
|
statements:
|
||||||
/* epsilon */ |
|
/* epsilon */ | statement statements
|
||||||
nonending_statement COMMA statements | ending_statement statements
|
|
||||||
;
|
;
|
||||||
ending_statement:
|
statement:
|
||||||
assert_stmt | fun_call | print_stmt | input_stmt | abort_stmt | branch_stmt
|
assert_stmt | fun_call | print_stmt | input_stmt | abort_stmt |
|
||||||
;
|
branch_stmt | var_decl | assign_stmt | loop_stmt | return_stmt | COMMA
|
||||||
nonending_statement:
|
|
||||||
var_decl | assign_stmt | return_stmt | loop_stmt | /* epsilon */
|
|
||||||
;
|
;
|
||||||
var_decl:
|
var_decl:
|
||||||
VARDECL variable COMMA pointer TYPENAME var_init
|
VARDECL variable COMMA pointer TYPENAME var_init
|
||||||
|
@ -100,7 +97,7 @@ input_stmt:
|
||||||
INPUT variable
|
INPUT variable
|
||||||
;
|
;
|
||||||
return_stmt:
|
return_stmt:
|
||||||
RETURN | RETURN expression
|
RETURN ASSERT_END | RETURN expression ASSERT_END
|
||||||
;
|
;
|
||||||
loop_stmt:
|
loop_stmt:
|
||||||
LOOP_BEGIN statements LOOP_CONDITION expression
|
LOOP_BEGIN statements LOOP_CONDITION expression
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
bituma per caso una piccola prova?
|
bituma per caso una piccola prova?
|
||||||
|
|
||||||
Lei ha clacsonato,
|
Lei ha clacsonato
|
||||||
voglio il dito, conte Mascetti,
|
voglio il dito, conte Mascetti
|
||||||
voglio antani, Necchi come fosse 2,
|
voglio antani, Necchi come fosse 2
|
||||||
voglio troppo, Melandri,
|
voglio troppo, Melandri
|
||||||
|
|
||||||
stuzzica
|
stuzzica
|
||||||
il dito come fosse antani,
|
il dito come fosse antani,
|
||||||
|
@ -35,9 +35,9 @@ Lei ha clacsonato,
|
||||||
ho visto la signora!
|
ho visto la signora!
|
||||||
|
|
||||||
vicesindaco come se fosse brematurata la supercazzola avanti con il vicesindaco o scherziamo,
|
vicesindaco come se fosse brematurata la supercazzola avanti con il vicesindaco o scherziamo,
|
||||||
vaffanzum,
|
vaffanzum!
|
||||||
|
|
||||||
blinda la supercazzola antanizzata con alfio o scherziamo?
|
blinda la supercazzola antanizzata con alfio o scherziamo?
|
||||||
vaffanzum alfio meno 2,
|
vaffanzum alfio meno 2!
|
||||||
|
|
||||||
bituma al finale?
|
bituma al finale?
|
||||||
|
|
|
@ -10,5 +10,5 @@ o tarapia tapioco: mi porga il cappello, e velocità di esecuzione,
|
||||||
vicesindaco a posterdati, mi porga il vicesindaco, brematurata la supercazzola
|
vicesindaco a posterdati, mi porga il vicesindaco, brematurata la supercazzola
|
||||||
tombale con alfio, serio o scherziamo? avvertite don ulrico, ho visto la signora!
|
tombale con alfio, serio o scherziamo? avvertite don ulrico, ho visto la signora!
|
||||||
vicesindaco come se fosse brematurata la supercazzola avanti con il vicesindaco
|
vicesindaco come se fosse brematurata la supercazzola avanti con il vicesindaco
|
||||||
o scherziamo, vaffanzum, blinda la supercazzola antanizzata con alfio o scherziamo?
|
o scherziamo, vaffanzum! blinda la supercazzola antanizzata con alfio o scherziamo?
|
||||||
vaffanzum alfio meno 2, bituma al finale?
|
vaffanzum alfio meno 2! bituma al finale?
|
||||||
|
|
Reference in New Issue
Block a user