summaryrefslogtreecommitdiff
path: root/src/GF/Compile
diff options
context:
space:
mode:
Diffstat (limited to 'src/GF/Compile')
-rw-r--r--src/GF/Compile/Optimize.hs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/GF/Compile/Optimize.hs b/src/GF/Compile/Optimize.hs
index 9278897d2..6cbd302f5 100644
--- a/src/GF/Compile/Optimize.hs
+++ b/src/GF/Compile/Optimize.hs
@@ -164,7 +164,11 @@ partEval opts gr (context, val) trm = errIn ("parteval" +++ prt_ trm) $ do
comp g t = {- refreshTerm t >>= -} computeTerm gr g t
- etaExpand su t = comp su t >>= recordExpand val >>= comp su
+ etaExpand su t = do
+ t' <- comp su t
+ case t' of
+ R _ -> comp su t' --- return t' wo noexpand...
+ _ -> recordExpand val t' >>= comp su
outCase subst t = do
pts <- getParams context