diff options
author | Eduardo Julian | 2017-11-13 23:26:06 -0400 |
---|---|---|
committer | Eduardo Julian | 2017-11-13 23:26:06 -0400 |
commit | 70005a6dee1eba3e3f5694aa4903e95988dcaa3d (patch) | |
tree | 19141f900847092c3aa5032a62b6b97eb1ea9a33 /new-luxc/source/luxc/lang/translation.lux | |
parent | b08f7d83a591be770af64b4c9ccd59f3306689e8 (diff) |
- Refactoring.
- Now giving type checking/inference a higher priority.
- Better error messages.
Diffstat (limited to 'new-luxc/source/luxc/lang/translation.lux')
-rw-r--r-- | new-luxc/source/luxc/lang/translation.lux | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/new-luxc/source/luxc/lang/translation.lux b/new-luxc/source/luxc/lang/translation.lux index c4ebf3642..cf3137aff 100644 --- a/new-luxc/source/luxc/lang/translation.lux +++ b/new-luxc/source/luxc/lang/translation.lux @@ -32,6 +32,7 @@ (&;Analyser) (expressionA;analyser &eval;eval)) +(exception: #export Macro-Expansion-Failed) (exception: #export Unrecognized-Statement) (def: (translate code) @@ -79,7 +80,7 @@ (#e;Success [compiler' output]) (#e;Error error) - ((&;fail error) compiler))) + ((&;throw Macro-Expansion-Failed error) compiler))) _ (monad;map @ translate expansion)] (wrap [])) (&;throw Unrecognized-Statement (%code code)))) |