diff options
Diffstat (limited to 'src/interp/compiler.boot')
-rw-r--r-- | src/interp/compiler.boot | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot index 10657288..1d9686bc 100644 --- a/src/interp/compiler.boot +++ b/src/interp/compiler.boot @@ -828,7 +828,11 @@ compConstruct(form is ["construct",:l],m,e) == (T:= compVector(l,["Vector",CADR y],e)) and (T':= convert(T,m)) => return T' -compQuote(expr,m,e) == [expr,m,e] +++ Compile a literal (quoted) symbol. +compQuote: (%Form,%Mode,%Env) -> %Maybe %Triple +compQuote(expr,m,e) == + expr is ["QUOTE",x] and SYMBOLP x => convert([expr,$Symbol,e],m) + stackAndThrow('"%1b is not a literal symbol.",[x]) compList: (%Form,%Mode,%Env) -> %Maybe %Triple compList(l,m is ["List",mUnder],e) == |