diff --git a/src/json.hpp b/src/json.hpp
index df162274..3cda3f1e 100644
--- a/src/json.hpp
+++ b/src/json.hpp
@@ -3281,6 +3281,7 @@ class parser
                 while (true)
                 {
                     // parse value
+                    value = value_t::discarded;
                     parse_internal(keep, value);
                     if (keep and not value.is_discarded())
                     {