code: function enterFunction(node) {
  
              // `this` can be invalid only under strict mode.
              stack.push({
                  init: !context.getScope().isStrict,
                  node,
                  valid: true
              });
          }
docs: Pushs new checking context into the stack.
  
  The checking context is not initialized yet.
  Because most functions don't have `this` keyword.
  When `this` keyword was found, the checking context is initialized.
  
  @param {ASTNode} node - A function node that was entered.
  @returns {void}