diff options
author | ronny | 2003-12-11 13:06:37 +0000 |
---|---|---|
committer | ronny | 2003-12-11 13:06:37 +0000 |
commit | 9c6ed30ab5b2b41fb588e7dc5d4c12a106a15c84 (patch) | |
tree | 82c931e1f755276f1801ac4273e3a8227e2aeaf8 | |
parent | use 'Error: ' instead of '[Backend]' in the backend too old (diff) |
bug fix: use a new ptr in expanded dynamic
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1426 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
-rw-r--r-- | frontend/transform.icl | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/frontend/transform.icl b/frontend/transform.icl index 1fabc93..2ea348c 100644 --- a/frontend/transform.icl +++ b/frontend/transform.icl @@ -437,9 +437,11 @@ where instance unfold DynamicExpr where - unfold expr=:{dyn_expr} ui us - # (dyn_expr, us) = unfold dyn_expr ui us - = ({ expr & dyn_expr = dyn_expr }, us) + unfold expr=:{dyn_expr, dyn_info_ptr} ui us=:{us_symbol_heap} + # (dyn_info, us_symbol_heap) = readPtr dyn_info_ptr us_symbol_heap + # (new_dyn_info_ptr, us_symbol_heap) = newPtr dyn_info us_symbol_heap + # (dyn_expr, us) = unfold dyn_expr ui {us & us_symbol_heap=us_symbol_heap} + = ({ expr & dyn_expr = dyn_expr, dyn_info_ptr = new_dyn_info_ptr }, us) instance unfold Selection where |