diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/GetCallerFrameNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/GetCallerFrameNode.java
index ea961908d810f53a2dd32ec8910d85111818a850..fde5609e43395c48c0144a55ba92c565903a6f87 100644
--- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/GetCallerFrameNode.java
+++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/GetCallerFrameNode.java
@@ -61,9 +61,8 @@ public final class GetCallerFrameNode extends RBaseNode {
             if (slowPathFrame != null) {
                 return slowPathFrame;
             }
-            callerFrameObject = null;
         }
-        assert callerFrameObject == null;
+        assert callerFrameObject instanceof CallerFrameClosure || callerFrameObject == null;
 
         // S3 method can be dispatched from top-level where there is no caller frame
         // Since RArguments does not allow to create arguments with a 'null' caller frame, this