diff options
author | Eduardo Julian | 2019-09-18 21:33:23 -0400 |
---|---|---|
committer | Eduardo Julian | 2019-09-18 21:33:23 -0400 |
commit | 343c16f6f960eb1e7c75804ee83d4d8dba8a11e7 (patch) | |
tree | c87cd84d7b657eb596c15c29e088669f471523be | |
parent | 5d9fe393959c4c9c9bcbd04cef3115f7f834612f (diff) |
Fixed a bug wherein definitions created while processing module referrals did not make it into the generation buffer.
Diffstat (limited to '')
-rw-r--r-- | stdlib/source/lux/tool/compiler/default/init.lux | 5 | ||||
-rw-r--r-- | stdlib/source/lux/tool/compiler/phase/generation.lux | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/stdlib/source/lux/tool/compiler/default/init.lux b/stdlib/source/lux/tool/compiler/default/init.lux index fc9a805f7..40549f8d0 100644 --- a/stdlib/source/lux/tool/compiler/default/init.lux +++ b/stdlib/source/lux/tool/compiler/default/init.lux @@ -237,7 +237,10 @@ ///directive.lift-analysis extension.lift macro.current-module) - _ (monad.map @ execute! (get@ #///directive.referrals requirements))] + _ (///directive.lift-generation + (generation.set-buffer buffer)) + _ (monad.map @ execute! (get@ #///directive.referrals requirements)) + buffer (..get-current-buffer buffer)] (..iterate expander module source buffer (..module-aliases analysis-module))))))})]) )))))})))) diff --git a/stdlib/source/lux/tool/compiler/phase/generation.lux b/stdlib/source/lux/tool/compiler/phase/generation.lux index cbd0bba9b..198ca4bb4 100644 --- a/stdlib/source/lux/tool/compiler/phase/generation.lux +++ b/stdlib/source/lux/tool/compiler/phase/generation.lux @@ -233,7 +233,7 @@ (case ?buffer (#.Some buffer) (if (row.any? (|>> product.left (name@= name)) buffer) - (//.throw cannot-overwrite-output name) + (//.throw ..cannot-overwrite-output name) (extension.update (set@ #buffer (#.Some (row.add [name code] buffer))))) #.None |