aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2010-12-30 22:55:52 +0000
committerDavid Robillard <d@drobilla.net>2010-12-30 22:55:52 +0000
commit03b9284e4b451ba748b196657d2d21c463421627 (patch)
treeb11a2eae859456422071c44919ea912cc5922ad5 /src
parent766a688d8235bb69d1133496d6c70d5d40db9bdd (diff)
downloadresp-03b9284e4b451ba748b196657d2d21c463421627.tar.gz
resp-03b9284e4b451ba748b196657d2d21c463421627.tar.bz2
resp-03b9284e4b451ba748b196657d2d21c463421627.zip
Fix calling inline fn expressions (don't allocate closure twice).
git-svn-id: http://svn.drobilla.net/resp/resp@380 ad02d1e2-f140-0410-9f75-f8b11f17cedd
Diffstat (limited to 'src')
-rw-r--r--src/lift.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lift.cpp b/src/lift.cpp
index 3e785b9..0792333 100644
--- a/src/lift.cpp
+++ b/src/lift.cpp
@@ -200,7 +200,7 @@ lift_call(CEnv& cenv, Code& code, const ATuple* call) throw()
*/
copy.push_front(cenv.penv.sym(cenv.liftStack.top().implName));
cenv.setTypeSameAs(copy, call);
- } else if (is_form(call, "fn")) {
+ } else if (is_form(call->fst(), "fn")) {
/* Special case: ((fn ...) ...)
* Lifting (fn ...) yields: (Fn _impl ...).
* We don't want ((Fn _impl ...) (Fn _impl ...) ...),