aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux/tool/compiler
diff options
context:
space:
mode:
authorEduardo Julian2021-10-22 00:54:07 -0400
committerEduardo Julian2021-10-22 00:54:07 -0400
commit5b50e2ed51c37f959a06923c8d7dfd99f0c926e4 (patch)
tree288f71d7e41e17ba1e65085606bc2c0af30cab28 /stdlib/source/library/lux/tool/compiler
parentc9d6d6295db5c7a1cf1966cd194f1a045be5c6cb (diff)
FIXED analysis extensions got reset and new ones would be unavailable.
Diffstat (limited to 'stdlib/source/library/lux/tool/compiler')
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux7
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/version.lux2
2 files changed, 6 insertions, 3 deletions
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux
index 602aedfd0..a0ed6f3e6 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/phase/extension/directive/lux.lux
@@ -193,6 +193,7 @@
[directive directive' /////generation.learn_directive]
)
+... TODO: Get rid of this function ASAP.
(def: (refresh expander host_analysis)
(All (_ anchor expression directive)
(-> Expander /////analysis.Bundle (Operation anchor expression directive Any)))
@@ -201,12 +202,14 @@
.let [eval (/////analysis/evaluation.evaluator expander
(value@ [/////directive.#synthesis /////directive.#state] state)
(value@ [/////directive.#generation /////directive.#state] state)
- (value@ [/////directive.#generation /////directive.#phase] state))]]
+ (value@ [/////directive.#generation /////directive.#phase] state))
+ previous_analysis_extensions (value@ [/////directive.#analysis /////directive.#state ///.#bundle] state)]]
(phase.set_state [bundle
(revised@ [/////directive.#analysis /////directive.#state]
(: (-> /////analysis.State+ /////analysis.State+)
(|>> product.right
- [(///analysis.bundle eval host_analysis)]))
+ [(|> previous_analysis_extensions
+ (dictionary.merged (///analysis.bundle eval host_analysis)))]))
state)])))
(def: (announce_definition! short type)
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/version.lux b/stdlib/source/library/lux/tool/compiler/language/lux/version.lux
index 733188447..714ceb58a 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/version.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/version.lux
@@ -6,4 +6,4 @@
(def: .public version
Version
- 00,06,02)
+ 00,06,03)