From 343c16f6f960eb1e7c75804ee83d4d8dba8a11e7 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Wed, 18 Sep 2019 21:33:23 -0400 Subject: Fixed a bug wherein definitions created while processing module referrals did not make it into the generation buffer. --- stdlib/source/lux/tool/compiler/default/init.lux | 5 ++++- stdlib/source/lux/tool/compiler/phase/generation.lux | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) (limited to 'stdlib/source') 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 -- cgit v1.2.3