diff --git a/src/bindings/lua/hammer.lua b/src/bindings/lua/hammer.lua
index 011f5c3596179b63d74ec0a5e7ebcdfe627a4185..29bc8699124582df5a40f940f89d8e13f2d12b46 100644
--- a/src/bindings/lua/hammer.lua
+++ b/src/bindings/lua/hammer.lua
@@ -226,6 +226,7 @@ local byte_string = ffi.metatype("HBytes", bytes_mt)
 
 local result_mt = {
    __call = function(self)
+      if self == nil then return nil end
       return self.ast()
    end
 }