From 33eb9bb5097e3e9c16529fca87f5f12300cc21d7 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 28 Dec 2010 19:45:48 +0000 Subject: Fix crash when def name is not a symbol. git-svn-id: http://svn.drobilla.net/resp/resp@367 ad02d1e2-f140-0410-9f75-f8b11f17cedd --- src/expand.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/expand.cpp') diff --git a/src/expand.cpp b/src/expand.cpp index d10b64d..53a415c 100644 --- a/src/expand.cpp +++ b/src/expand.cpp @@ -56,9 +56,7 @@ expand_def(PEnv& penv, const AST* exp, void* arg) THROW_IF(i == tup->end(), tup->loc, "Unexpected end of `def' form"); const AST* arg1 = *(++i); THROW_IF(i == tup->end(), arg1->loc, "Unexpected end of `def' form"); - if (arg1->to_symbol()) { - return expand_list(penv, tup); - } else { + if (arg1->to_tuple()) { // (def (f x) y) => (def f (fn (x) y)) const ATuple* pat = arg1->to_tuple(); @@ -83,6 +81,8 @@ expand_def(PEnv& penv, const AST* exp, void* arg) ret.head->loc = exp->loc; return expand_list(penv, ret.head); + } else { + return expand_list(penv, tup); } } -- cgit v1.2.1