diff options
author | Eduardo Julian | 2015-11-30 22:57:31 -0400 |
---|---|---|
committer | Eduardo Julian | 2015-11-30 22:57:31 -0400 |
commit | 46193822d7b6948697594284e79601f9dd236afc (patch) | |
tree | 38b32c7d0cfb03c2e44739a072ee695f63a17b74 | |
parent | 0839750d8df2ab05e12dd5fb92ce2eb6d59cbf87 (diff) |
- Fixed a bug wherein some error messages were being swallowed-up and getting replaced with "Unknown syntax".
-rw-r--r-- | src/lux/analyser.clj | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/src/lux/analyser.clj b/src/lux/analyser.clj index eb9bd29cc..0f1f2ae37 100644 --- a/src/lux/analyser.clj +++ b/src/lux/analyser.clj @@ -672,13 +672,19 @@ (analyse-variant+ (partial analyse-ast eval! compile-module compile-token) exo-type ?ident ?values) [meta (&/$FormS (&/$Cons ?fn ?args))] - (fn [state] - (|case ((just-analyse (partial analyse-ast eval! compile-module compile-token) ?fn) state) - (&/$Right state* =fn) - ((&&lux/analyse-apply (partial analyse-ast eval! compile-module compile-token) exo-type meta =fn ?args) state*) - - _ - ((analyse-basic-ast (partial analyse-ast eval! compile-module compile-token) eval! compile-module compile-token exo-type token) state))) + (|case ?fn + [_ (&/$SymbolS _)] + (fn [state] + (|case ((just-analyse (partial analyse-ast eval! compile-module compile-token) ?fn) state) + (&/$Right state* =fn) + ((&&lux/analyse-apply (partial analyse-ast eval! compile-module compile-token) exo-type meta =fn ?args) state*) + + _ + ((analyse-basic-ast (partial analyse-ast eval! compile-module compile-token) eval! compile-module compile-token exo-type token) state))) + + _ + (|do [=fn (just-analyse (partial analyse-ast eval! compile-module compile-token) ?fn)] + (&&lux/analyse-apply (partial analyse-ast eval! compile-module compile-token) exo-type meta =fn ?args))) _ (analyse-basic-ast (partial analyse-ast eval! compile-module compile-token) eval! compile-module compile-token exo-type token)))))) |