aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormartinw2000-06-16 11:25:06 +0000
committermartinw2000-06-16 11:25:06 +0000
commit8ca1f664a5df12e38884bed7f741b4deb5ebf504 (patch)
tree6966d795154b17e6bac6c9a1d081a432cf776c1f
parentsmall changes to reduce memory allocation (diff)
changes in to make compiler self compatible
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@168 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
-rw-r--r--backend/backendconvert.icl6
-rw-r--r--backend/backendpreprocess.icl5
-rw-r--r--backend/backendsupport.dcl5
-rw-r--r--backend/backendsupport.icl2
-rw-r--r--main/Windows/set_return_code.dcl2
-rw-r--r--main/Windows/set_return_code.icl2
6 files changed, 20 insertions, 2 deletions
diff --git a/backend/backendconvert.icl b/backend/backendconvert.icl
index 354413a..ff5a95c 100644
--- a/backend/backendconvert.icl
+++ b/backend/backendconvert.icl
@@ -482,8 +482,14 @@ instance declareVars BackendBody where
class declare a :: ModuleIndex !VarHeap a -> Backender
class declareWithIndex a :: Index ModuleIndex !VarHeap a -> Backender
+//1.3
instance declare {#a} | declareWithIndex a & ArrayElem a where
declare :: ModuleIndex VarHeap {#a} -> Backender | declareWithIndex a & ArrayElem a
+//3.1
+/*2.0
+instance declare {#a} | declareWithIndex a & Array {#} a where
+ declare :: ModuleIndex VarHeap {#a} -> Backender | declareWithIndex a & Array {#} a
+0.2*/
declare moduleIndex varHeap array
= foldStateWithIndexA (\i -> declareWithIndex i moduleIndex varHeap) array
diff --git a/backend/backendpreprocess.icl b/backend/backendpreprocess.icl
index 1278330..72242f0 100644
--- a/backend/backendpreprocess.icl
+++ b/backend/backendpreprocess.icl
@@ -17,7 +17,12 @@ class preprocess a :: a -> Preprocessor
:: PreprocessState
:== VarHeap
+//1.3
instance preprocess {#a} | preprocess a & ArrayElem a where
+//3.1
+/*2.0
+instance preprocess {#a} | preprocess a & Array {#} a where
+0.2*/
preprocess array
= foldStateA preprocess array
diff --git a/backend/backendsupport.dcl b/backend/backendsupport.dcl
index 8ca0091..74f1c55 100644
--- a/backend/backendsupport.dcl
+++ b/backend/backendsupport.dcl
@@ -1,6 +1,11 @@
definition module backendsupport
+//1.3
from StdArray import size, size_u
+//3.1
+/*2.0
+from StdArray import size, usize
+0.2*/
from StdFunc import `bind`
from StdInt import +, ==
diff --git a/backend/backendsupport.icl b/backend/backendsupport.icl
index ea92a7b..e92b786 100644
--- a/backend/backendsupport.icl
+++ b/backend/backendsupport.icl
@@ -1,6 +1,6 @@
implementation module backendsupport
-from StdArray import size, size_u
+import StdArray
from StdFunc import `bind`
from StdInt import +, ==
diff --git a/main/Windows/set_return_code.dcl b/main/Windows/set_return_code.dcl
index bcbde6f..e8ed7f8 100644
--- a/main/Windows/set_return_code.dcl
+++ b/main/Windows/set_return_code.dcl
@@ -1,6 +1,8 @@
definition module set_return_code;
+//1.3
from StdString import String;
+//3.1
:: *UniqueWorld :== World;
set_return_code :: !Int !UniqueWorld -> UniqueWorld;
diff --git a/main/Windows/set_return_code.icl b/main/Windows/set_return_code.icl
index 780fa84..4171e6a 100644
--- a/main/Windows/set_return_code.icl
+++ b/main/Windows/set_return_code.icl
@@ -2,7 +2,7 @@ implementation module set_return_code;
import code from "set_return_code.obj";
-from StdString import String;
+import StdString;
:: *UniqueWorld :== World;