diff options
author | Matthias Andreas Benkard <matthias@benkard.de> | 2008-06-27 23:53:25 +0200 |
---|---|---|
committer | Matthias Andreas Benkard <matthias@benkard.de> | 2008-06-27 23:53:25 +0200 |
commit | 05fc2a9fd9326bd059681b7684a74e1ad1de1ec6 (patch) | |
tree | d01fa6dbe3881f44ea6145cf79c007b12b585c8d /MLKInterpreter.m | |
parent | 7ad928e57d7ed8818040327a31b7dad5ec04ec10 (diff) |
MLKInterpreter: Fix macro support.
Diffstat (limited to 'MLKInterpreter.m')
-rw-r--r-- | MLKInterpreter.m | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/MLKInterpreter.m b/MLKInterpreter.m index 35ea2ad..f56e750 100644 --- a/MLKInterpreter.m +++ b/MLKInterpreter.m @@ -368,9 +368,12 @@ static MLKSymbol *_LAMBDA; else if ([context symbolNamesMacro:car]) { id macrofun = [context macroForSymbol:car]; - id expansion = [macrofun applyToArray: - [NSArray arrayWithObjects: - program, context, nil]]; + id expansion = denullify([[macrofun + applyToArray: + [NSArray arrayWithObjects: + program, context, nil]] + objectAtIndex:0]); +; return [self eval:expansion inLexicalContext:context withEnvironment:lexenv]; |