@@ -4181,6 +4181,7 @@ _* |-->false
41814181
41824182
41834183statement::
4184+ ; |-->
41844185break ; |--> break
41854186break _1 ; |--> break
41864187continue ; |--> continue
@@ -4197,7 +4198,7 @@ _1 : _2 ; |-->_2
41974198while _1 _2 |--> _1`preSideEffect while _1 do (_1`updateForm ; _2 ; _1`preSideEffect ) ; <when> _1 hasSideEffect
41984199while _1 _2 |--> while _1 do _2 ;
41994200
4200-
4201+ if _1 _2 else _3 |--> if _1 then _2`noSemiStatement else _3 ; <when> _2 statement
42014202if _1 _2 else _3 |--> if _1 then _2 else _3 ;
42024203
42034204if _1 _2 |--> if _1 then _2 else skip ;
@@ -4227,14 +4228,71 @@ _1 ; |-->_1
42274228_1 |-->_1
42284229
42294230
4231+ noSemiStatement::
4232+ ; |-->
4233+ break ; |--> break
4234+ break _1 ; |--> break
4235+ continue ; |--> continue
4236+ continue _1 ; |--> continue
4237+
4238+ throw _1 ; |--> error _1
4239+ throw ; |--> error null
4240+
4241+ synchronized _1 _2 |-->_2
4242+
4243+ _1 : _2 |-->_2
4244+ _1 : _2 ; |-->_2
4245+
4246+ while _1 _2 |--> _1`preSideEffect while _1 do (_1`updateForm ; _2 ; _1`preSideEffect )<when> _1 hasSideEffect
4247+ while _1 _2 |--> while _1 do _2
4248+
4249+
4250+ if _1 _2 else _3 |--> if _1 then _2 else _3
4251+
4252+ if _1 _2 |--> if _1 then _2 else skip
4253+
4254+ for ( _1 ) _2 |--> _1 _2 _1`forIncrement )
4255+
4256+ switch _1 { _2 _* } |-->\n for _x : Integer.subrange(1,1) do\n ( var _switchval : _1`type ;\n _switchval := _1 ; \n_2\n_* )\n
4257+ switch _1 { _2 } |-->\n for _x : Integer.subrange(1,1) do\n ( var _switchval : _1`type ;\n _switchval := _1 ; \n_2\n )\n
4258+
4259+ return _1 ; |--> return _1
4260+ return ; |--> return
4261+
4262+ assert _1 : _2 ; |--> assert _1 do _2
4263+ assert _1 ; |--> assert _1
4264+
4265+ try _1 _2 _* |--> try (_1 _2) _* <when> _1 resourceSpecification
4266+ try _1 _2 |--> try (_1 _2) <when> _1 resourceSpecification
4267+ try _1 _2 _* |--> try _1 _2 _*
4268+ try _1 _2 |--> try _1 _2
4269+
4270+ do _1 while _2 ; |--> while true do (_1 ;\n if _2 then\n _2`updateForm else break)<when> _2 hasSideEffect
4271+
4272+ do _1 while _2 ; |--> while true do (_1 ;\n if _2 then skip else break)
4273+
4274+ _1 ; |-->_1`updateForm<when> _1 expression
4275+ _1 ; |-->_1
4276+ _1 |-->_1`noSemiStatement<when> _1 statement
4277+ _1 |-->_1
4278+
4279+
42304280blockStatement::
42314281_1 ; |-->_1 ;\n
42324282_1 |-->_1 \n
42334283
42344284
42354285block::
4236- { _1 _* } |-->( _1 _* )
4286+ { _1 } |-->( _1`noSemiStatement )<when> _1 blockStatement
42374287{ _1 } |-->( _1 )
4288+ { _1 _2 } |-->( _1 _2`noSemiStatement )<when> _2 blockStatement
4289+ { _1 _2 } |-->( _1 _2 )
4290+ { _1 _2 _3 } |-->( _1 _2 _3`noSemiStatement )<when> _3 blockStatement
4291+ { _1 _2 _3 } |-->( _1 _2 _3 )
4292+ { _1 _2 _3 _4 } |-->( _1 _2 _3 _4`noSemiStatement )<when> _4 blockStatement
4293+ { _1 _2 _3 _4 } |-->( _1 _2 _3 _4 )
4294+
4295+ { _1 _* } |-->( _1 _* )
42384296{ } |-->skip
42394297
42404298_1 |-->_1
0 commit comments