diff --git a/LANGUAGE b/LANGUAGE index 3603ea1..20d6968 100644 --- a/LANGUAGE +++ b/LANGUAGE @@ -16,6 +16,8 @@ Intrinsics: - SQRT - DSQRT +CHAN for CHAN OF, and PLACE for PLACE AT. + PLACE IN WORKSPACE and PLACE IN VECSPACE, both currently ignored. INITIAL variables. diff --git a/frontends/ParseOccam.hs b/frontends/ParseOccam.hs index 96f2436..5b30a08 100644 --- a/frontends/ParseOccam.hs +++ b/frontends/ParseOccam.hs @@ -1258,8 +1258,7 @@ allocation placement :: OccParser A.Placement placement - = do sAT - e <- intExpr + = do e <- tryXV (optional sAT) intExpr return $ A.PlaceAt e <|> do tryXX sIN sWORKSPACE return $ A.PlaceInWorkspace diff --git a/testcases/place.occ b/testcases/place.occ index c853e16..ea27163 100644 --- a/testcases/place.occ +++ b/testcases/place.occ @@ -7,5 +7,7 @@ PROC P () PLACE w IN WORKSPACE: INT v: PLACE v IN VECSPACE: + INT new: + PLACE new #123456: SKIP :