pakmanaged.js
function destructuringAssignOrJsonValue() {
        // lookup for the assignment (esnext only)
        // if it has semicolons, it is a block, so go parse it as a block
        // or it's not a block, but there are assignments, check for undeclared variables
    
        var block = lookupBlockType();
        if (block.notJson) {
          if (!state.inESNext() && block.isDestAssign) {
            warning("W104", state.tokens.curr, "destructuring assignment");
          }
          statements();
        // otherwise parse json value
        } else {
          state.option.laxbreak = true;
          state.jsonMode = true;
          jsonValue();
        }
      }
function destructuringAssignOrJsonValue() {
        // lookup for the assignment (esnext only)
        // if it has semicolons, it is a block, so go parse it as a block
        // or it's not a block, but there are assignments, check for undeclared variables
    
        var block = lookupBlockType();
        if (block.notJson) {
          if (!state.inESNext() && block.isDestAssign) {
            warning("W104", state.tokens.curr, "destructuring assignment");
          }
          statements();
        // otherwise parse json value
        } else {
          state.option.laxbreak = true;
          state.jsonMode = true;
          jsonValue();
        }
      }
Check whether this function has been reached for a destructuring assign with undeclared values