From e9d77320d373864a19ba1155395a3e4d2a9469cc Mon Sep 17 00:00:00 2001 From: ronny Date: Thu, 12 Jul 2001 15:27:32 +0000 Subject: uniqueness attributes in backend git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@542 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d --- main/compile.icl | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'main') diff --git a/main/compile.icl b/main/compile.icl index c4fdd8a..8c55e26 100644 --- a/main/compile.icl +++ b/main/compile.icl @@ -214,7 +214,9 @@ compileModule options commandLineArgs {dcl_modules,functions_and_macros,predef_s | not closed = abort ("couldn't close out file \"" +++ options.outPath +++ "\"\n") # var_heap=heaps.hp_var_heap - # (success,dcl_modules,functions_and_macros,n_functions_and_macros_in_dcl_modules,var_heap,error, files) + hp_type_heaps=heaps.hp_type_heaps + attrHeap=hp_type_heaps.th_attrs + # (success,dcl_modules,functions_and_macros,n_functions_and_macros_in_dcl_modules,var_heap,attrHeap,error, files) = case optionalSyntaxTree of Yes syntaxTree # dcl_modules=syntaxTree.fe_dcls @@ -231,9 +233,9 @@ compileModule options commandLineArgs {dcl_modules,functions_and_macros,predef_s -> error <<< "Error: couldn't write ported versions of module " <<< options.moduleName <<< '\n') error - # (success,var_heap,error, files) - = backEndInterface outputPath (map appendRedirection commandLineArgs) predef_symbols syntaxTree main_dcl_module_n var_heap error files - -> (success,dcl_modules,functions_and_macros,n_functions_and_macros_in_dcl_modules,var_heap,error, files) + # (success, var_heap, attrHeap, error, files) + = backEndInterface outputPath (map appendRedirection commandLineArgs) predef_symbols syntaxTree main_dcl_module_n var_heap attrHeap error files + -> (success,dcl_modules,functions_and_macros,n_functions_and_macros_in_dcl_modules,var_heap,attrHeap, error, files) with appendRedirection arg = case arg of @@ -244,12 +246,12 @@ compileModule options commandLineArgs {dcl_modules,functions_and_macros,predef_s arg -> arg No - -> (False,{},{},0,var_heap,error, files) + -> (False,{},{},0,var_heap,attrHeap,error, files) with outputPath // = /* directoryName options.pathName +++ "Clean System Files" +++ {DirectorySeparator} +++ */ baseName options.pathName = baseName options.pathName - # heaps = {heaps & hp_var_heap=var_heap} + # heaps = {heaps & hp_var_heap=var_heap, hp_type_heaps = {hp_type_heaps & th_attrs = attrHeap}} # (closed, files) = fclose error files | not closed -- cgit v1.2.3