diff options
author | johnvg | 2013-05-28 09:27:59 +0000 |
---|---|---|
committer | johnvg | 2013-05-28 09:27:59 +0000 |
commit | 5943ca2f388834c0b588a64fee943fea1d848fca (patch) | |
tree | 99d2b854f5249f4e5d660cbf56325b9d9cd1b1d9 /frontend | |
parent | fix renumbering of extensible algebraic types (diff) |
prevent crash when writing .tcl file with extensible algebraic types (not yet implement in the dynamic linker)
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2246 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'frontend')
-rw-r--r-- | frontend/type_io.icl | 40 |
1 files changed, 16 insertions, 24 deletions
diff --git a/frontend/type_io.icl b/frontend/type_io.icl index 249b863..3cf3fc8 100644 --- a/frontend/type_io.icl +++ b/frontend/type_io.icl @@ -110,39 +110,31 @@ where instance WriteTypeInfo TypeRhs where write_type_info (AlgType defined_symbols) tcl_file wtis - # tcl_file - = fwritec AlgTypeCode tcl_file - # defined_symbols - = (sortBy (\{ds_ident={id_name=id_name1}} {ds_ident={id_name=id_name2}} -> id_name1 < id_name2) defined_symbols) - # (tcl_file,wtis) - = write_type_info defined_symbols tcl_file wtis - = (tcl_file,wtis) - + # tcl_file = fwritec AlgTypeCode tcl_file + # defined_symbols = sortBy (\{ds_ident={id_name=id_name1}} {ds_ident={id_name=id_name2}} -> id_name1 < id_name2) defined_symbols + = write_type_info defined_symbols tcl_file wtis write_type_info (SynType _) tcl_file wtis - # tcl_file - = fwritec SynTypeCode tcl_file; - = (tcl_file,wtis) - + # tcl_file = fwritec SynTypeCode tcl_file; + = (tcl_file,wtis) write_type_info (RecordType {rt_constructor,rt_fields}) tcl_file wtis - #! tcl_file - = fwritec RecordTypeCode tcl_file; - #! (tcl_file,wtis) - = write_type_info rt_constructor tcl_file wtis - #! (tcl_file,wtis) - = write_type_info rt_fields tcl_file wtis - = (tcl_file,wtis) - + #! tcl_file = fwritec RecordTypeCode tcl_file; + #! (tcl_file,wtis) = write_type_info rt_constructor tcl_file wtis + = write_type_info rt_fields tcl_file wtis write_type_info (AbstractType _) tcl_file wtis - #! tcl_file - = fwritec AbstractTypeCode tcl_file; + #! tcl_file = fwritec AbstractTypeCode tcl_file; // unimplemented = (tcl_file,wtis) - write_type_info (AbstractSynType _ _) tcl_file wtis #! tcl_file = fwritec AbstractTypeCode tcl_file; // unimplemented = (tcl_file,wtis) - + write_type_info (ExtensibleAlgType _) tcl_file wtis + // unimplemented + = (tcl_file,wtis) + write_type_info (AlgConses _ _) tcl_file wtis + // unimplemented + = (tcl_file,wtis) + instance WriteTypeInfo DefinedSymbol where write_type_info {ds_ident,ds_arity,ds_index} tcl_file wtis |