From 04c7225b78f327aa0645d0f468e7b6d2e20a4d1e Mon Sep 17 00:00:00 2001 From: matz Date: Wed, 10 Nov 1999 06:47:11 +0000 Subject: 19991110 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- parse.y | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'parse.y') diff --git a/parse.y b/parse.y index b971b21ac7..435221d8d8 100644 --- a/parse.y +++ b/parse.y @@ -156,6 +156,7 @@ static void top_local_setup(); kUNLESS_MOD kWHILE_MOD kUNTIL_MOD + kRESCUE_MOD kALIAS kDEFINED klBEGIN @@ -212,7 +213,7 @@ static void top_local_setup(); %nonassoc kDO %nonassoc kDO2 -%left kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD +%left kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD kRESCUE_MOD %left kOR kAND %right kNOT %nonassoc kDEFINED @@ -347,6 +348,10 @@ stmt : block_call $$ = NEW_UNTIL(cond($3), $1, 1); } } + | stmt kRESCUE_MOD expr + { + $$ = NEW_RESCUE($1, NEW_RESBODY(0,$3,0), 0); + } | klBEGIN { if (cur_mid || in_single) { @@ -607,7 +612,7 @@ reswords : k__LINE__ | k__FILE__ | klBEGIN | klEND | kFOR | kIF_MOD | kIN | kMODULE | kNEXT | kNIL | kNOT | kOR | kREDO | kRESCUE | kRETRY | kRETURN | kSELF | kSUPER | kTHEN | kTRUE | kUNDEF | kUNLESS_MOD | kUNTIL_MOD | kWHEN - | kWHILE_MOD | kYIELD + | kWHILE_MOD | kYIELD | kRESCUE_MOD arg : lhs '=' arg { -- cgit v1.2.3