aboutsummaryrefslogtreecommitdiff
path: root/backend
diff options
context:
space:
mode:
authorjohnvg2007-04-13 12:52:09 +0000
committerjohnvg2007-04-13 12:52:09 +0000
commit8b95d94db8d559a1ace7d74188e8b3c0239fc2c8 (patch)
tree0c6f4aeeb407bcfea394c662119703d72722b0b5 /backend
parentexpand types if NO error has occurred, instead of if an error has occurred (diff)
implement newtype
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1674 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'backend')
-rw-r--r--backend/backendconvert.icl7
1 files changed, 6 insertions, 1 deletions
diff --git a/backend/backendconvert.icl b/backend/backendconvert.icl
index 9197cea..8867253 100644
--- a/backend/backendconvert.icl
+++ b/backend/backendconvert.icl
@@ -2081,7 +2081,7 @@ foldStateWithIndex function n
markExports :: DclModule {#ClassDef} {#CheckedTypeDef} {#ClassDef} {#CheckedTypeDef} -> BackEnder
markExports {dcl_functions,dcl_common={com_type_defs,com_cons_defs,com_selector_defs,com_class_defs}} dclClasses dclTypes iclClasses iclTypes
= foldStateWithIndex (beExportType False) (size com_type_defs)
- o foldStateWithIndex beExportConstructor (size com_cons_defs)
+ o foldStateWithIndex export_constructor (size com_cons_defs)
o foldStateWithIndex (beExportField False) (size com_selector_defs)
o foldStateWithIndex (exportDictionary iclClasses iclTypes) (size com_class_defs)
o foldStateWithIndex beExportFunction (size dcl_functions)
@@ -2101,3 +2101,8 @@ markExports {dcl_functions,dcl_common={com_type_defs,com_cons_defs,com_selector_
exportDictionaryField :: FieldSymbol -> BackEnder
exportDictionaryField {fs_index}
= beExportField True fs_index
+
+ export_constructor constructor_index
+ | com_cons_defs.[constructor_index].cons_number <> -2
+ = beExportConstructor constructor_index
+ = \ bs=:{bes_backEnd} -> bs