aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorronny2000-02-16 23:02:39 +0000
committerronny2000-02-16 23:02:39 +0000
commit0377b6fbc80c607b1dac5799f9b181c4b20792e1 (patch)
treefb16724bad5d456cf954273ddf5d980c1ceb840b
parentbuf fix (dictionary types in dcl modules) (diff)
removed PE_Array from syntax tree
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@92 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
-rw-r--r--frontend/postparse.icl5
-rw-r--r--frontend/syntax.dcl1
-rw-r--r--frontend/syntax.icl1
3 files changed, 2 insertions, 5 deletions
diff --git a/frontend/postparse.icl b/frontend/postparse.icl
index 24bffa0..a8e7a93 100644
--- a/frontend/postparse.icl
+++ b/frontend/postparse.icl
@@ -149,8 +149,6 @@ where
# (compr, ca)
= transformComprehension gen_kind expr qualifiers ca
= collectFunctions compr ca
- collectFunctions (PE_Array expr assignments) ca=:{ca_predefs}
- = collectFunctions (transformArrayUpdate expr assignments ca_predefs) ca
collectFunctions (PE_UpdateComprehension expr updateExpr identExpr qualifiers) ca
# (compr, ca)
= transformUpdateComprehension expr updateExpr identExpr qualifiers ca
@@ -625,9 +623,10 @@ transformArrayUpdate expr updates pi
transformArrayDenot :: [ParsedExpr] PredefinedIdents -> ParsedExpr
transformArrayDenot exprs pi
- = PE_Array
+ = transformArrayUpdate
((predef PD__CreateArrayFun ` length exprs) pi)
[{bind_dst=toParsedExpr i pi, bind_src=expr} \\ expr <- exprs & i <- [0..]]
+ pi
scanModules :: [ParsedImport] [ScannedModule] Int *HashTable *File SearchPaths *PredefinedSymbols *Files -> (Bool, [ScannedModule],[FunDef],Int, *HashTable, *File, *PredefinedSymbols, *Files)
scanModules [] parsed_modules fun_count hash_table err_file searchPaths predefs files
diff --git a/frontend/syntax.dcl b/frontend/syntax.dcl
index e7d853c..b9c9f02 100644
--- a/frontend/syntax.dcl
+++ b/frontend/syntax.dcl
@@ -914,7 +914,6 @@ cNonUniqueSelection :== False
| PE_Lambda !Ident ![ParsedExpr] !ParsedExpr
| PE_Tuple ![ParsedExpr]
| PE_Record !ParsedExpr !(Optional Ident) ![FieldAssignment]
- | PE_Array !ParsedExpr ![ElemAssignment] // RWS +++ remove PE_Array (not really used anymore) ![Qualifier]
| PE_UpdateComprehension !ParsedExpr !ParsedExpr !ParsedExpr ![Qualifier]
| PE_ArrayDenot ![ParsedExpr]
| PE_Selection !Bool !ParsedExpr ![ParsedSelection]
diff --git a/frontend/syntax.icl b/frontend/syntax.icl
index d14a525..ee3893e 100644
--- a/frontend/syntax.icl
+++ b/frontend/syntax.icl
@@ -857,7 +857,6 @@ cNonUniqueSelection :== False
| PE_Lambda !Ident ![ParsedExpr] !ParsedExpr
| PE_Tuple ![ParsedExpr]
| PE_Record !ParsedExpr !(Optional Ident) ![FieldAssignment]
- | PE_Array !ParsedExpr ![ElemAssignment] // RWS +++ remove PE_Array (not really used anymore) ![Qualifier]
| PE_UpdateComprehension !ParsedExpr !ParsedExpr !ParsedExpr ![Qualifier]
| PE_ArrayDenot ![ParsedExpr]
| PE_Selection !Bool !ParsedExpr ![ParsedSelection]