Changeset 5498

Show
Ignore:
Timestamp:
07/12/05 15:50:08 (3 years ago)
Author:
autrijus
svk:copy_cache_prev:
7501
Message:

* export.t -- putting out the fire (I think)

Location:
src/Pugs
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/Eval.hs

    r5491 r5498  
    660660    when (str `elem` words "MY OUR OUTER CALLER") $ do 
    661661        fail $ "Cannot use " ++ str ++ " as a namespace" 
    662     writeVar "$*PACKAGE" val 
    663     enterPackage str $ evalExp body 
     662    tempVar "$*PACKAGE" val $ do 
     663        enterPackage str $ evalExp body 
    664664 
    665665reduceSyn "inline" [langExp, _] = do 
  • src/Pugs/Monads.hs

    r5456 r5498  
    275275headVal (v:_) = return v 
    276276 
     277tempVar :: String -> Val -> Eval a -> Eval a 
     278tempVar var val action = do 
     279    old <- readVar var 
     280    writeVar var val 
     281    rv  <- action 
     282    writeVar var old 
     283    return rv 
     284