aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--frontend/comparedefimp.icl2
-rw-r--r--frontend/explicitimports.icl10
-rw-r--r--frontend/parse.icl2
-rw-r--r--frontend/scanner.icl4
-rw-r--r--frontend/syntax.icl15
-rw-r--r--frontend/trans.icl3
-rw-r--r--frontend/typesupport.icl2
-rw-r--r--frontend/unitype.icl3
8 files changed, 16 insertions, 25 deletions
diff --git a/frontend/comparedefimp.icl b/frontend/comparedefimp.icl
index 5a9364e..2b90484 100644
--- a/frontend/comparedefimp.icl
+++ b/frontend/comparedefimp.icl
@@ -1,6 +1,6 @@
implementation module comparedefimp
-import syntax, checksupport, compare_constructor, utilities, StdCompare
+import syntax, checksupport, compare_constructor, utilities, StdCompare, compilerSwitches
:: TypesCorrespondState =
{ tc_type_vars
diff --git a/frontend/explicitimports.icl b/frontend/explicitimports.icl
index 0bbdbb7..9e52bba 100644
--- a/frontend/explicitimports.icl
+++ b/frontend/explicitimports.icl
@@ -3,14 +3,8 @@ implementation module explicitimports
import StdEnv
-:: FilterState =
- { fs_wanted_symbols :: ![Ident]
- , fs_modules :: !.{#DclModule}
- , fs_symbol_table :: !.SymbolTable
- , fs_error :: !.ErrorAdmin
- }
-
-import syntax, typesupport, parse, checksupport, utilities, checktypes, transform, predef, cheat//, RWSDebug
+import syntax, typesupport, parse, checksupport, utilities, checktypes, transform, predef, cheat,
+ compilerSwitches//, RWSDebug
cUndef :== (-1)
implies a b :== not a || b
diff --git a/frontend/parse.icl b/frontend/parse.icl
index ec54a7c..b16f142 100644
--- a/frontend/parse.icl
+++ b/frontend/parse.icl
@@ -1,7 +1,7 @@
implementation module parse
import StdEnv
-import scanner, syntax, hashtable, utilities, predef
+import scanner, syntax, hashtable, utilities, predef, compilerSwitches
ParseOnly :== False
diff --git a/frontend/scanner.icl b/frontend/scanner.icl
index 9ff470f..78c8c32 100644
--- a/frontend/scanner.icl
+++ b/frontend/scanner.icl
@@ -1,6 +1,6 @@
implementation module scanner
-import StdEnv, compare_constructor, StdCompare, general
+import StdEnv, compare_constructor, StdCompare, general, compilerSwitches
from utilities import revCharListToString, isSpecialChar
@@ -1990,8 +1990,6 @@ where
//--------------------//
-SwitchPreprocessor preprocessor no_preprocessor :== preprocessor
-
freadPreprocessedLine :: !*File -> (!.{#Char},!*File)
freadPreprocessedLine file
#! (line, file) = freadline file
diff --git a/frontend/syntax.icl b/frontend/syntax.icl
index 5118121..c13fd98 100644
--- a/frontend/syntax.icl
+++ b/frontend/syntax.icl
@@ -2,13 +2,7 @@ implementation module syntax
import StdEnv, compare_constructor // ,RWSDebug
-import scanner, general, Heap, typeproperties, utilities
-
-SupportGenerics :== False
-PA_BUG on off :== on
-
-switch_import_syntax one_point_three two_point_zero :== one_point_three
-SwitchFusion fuse dont_fuse :== dont_fuse
+import scanner, general, Heap, typeproperties, utilities, compilerSwitches
:: Ident =
{ id_name :: !String
@@ -843,6 +837,7 @@ cNotVarNumber :== -1
| TVI_TypeCode !TypeCodeExpression
| TVI_CPSLocalTypeVar !Int /* MdM - the index of the variable as generated by the theorem prover */
| TVI_Kinds ![TypeKind] // AA: used to collect kinds during checking
+ | TVI_Kind !TypeKind
| TVI_ConsInstance !DefinedSymbol //AA: generic cons instance function
| TVI_Normalized !Int /* MV - position of type variable in its definition */
@@ -1252,11 +1247,13 @@ where
instance <<< TypeVar
where
- (<<<) file varid = file <<< varid.tv_name
+// (<<<) file varid = file <<< varid.tv_name
+ (<<<) file varid = file <<< varid.tv_name <<< "<" <<< ptrToInt (varid.tv_info_ptr) <<< ">"
instance <<< AttributeVar
where
- (<<<) file {av_name,av_info_ptr} = file <<< av_name
+// (<<<) file {av_name,av_info_ptr} = file <<< av_name <<< "[" <<< ptrToInt av_info_ptr <<< "]"
+ (<<<) file {av_name,av_info_ptr} = file <<< av_name
instance toString AttributeVar
where
diff --git a/frontend/trans.icl b/frontend/trans.icl
index 7cb372a..829532d 100644
--- a/frontend/trans.icl
+++ b/frontend/trans.icl
@@ -2,7 +2,8 @@ implementation module trans
import StdEnv
-import syntax, transform, checksupport, StdCompare, check, utilities, unitype, typesupport, type
+import syntax, transform, checksupport, StdCompare, check, utilities, unitype, typesupport, type,
+ compilerSwitches
:: PartitioningInfo =
{ pi_marks :: !.{# Int}
diff --git a/frontend/typesupport.icl b/frontend/typesupport.icl
index 22c9ed5..e9b8b9d 100644
--- a/frontend/typesupport.icl
+++ b/frontend/typesupport.icl
@@ -1,7 +1,7 @@
implementation module typesupport
import StdEnv, StdCompare
-import syntax, parse, check, unitype, utilities, checktypes, RWSDebug
+import syntax, parse, check, unitype, utilities, checktypes, compilerSwitches
:: Store :== Int
diff --git a/frontend/unitype.icl b/frontend/unitype.icl
index 418d2fc..cfb0088 100644
--- a/frontend/unitype.icl
+++ b/frontend/unitype.icl
@@ -2,7 +2,8 @@ implementation module unitype
import StdEnv
-import syntax, analunitypes, type, utilities, checktypes //, RWSDebug
+import syntax, analunitypes, type, utilities, checktypes,
+ compilerSwitches //, RWSDebug
import cheat