'use strict'; // This file was procedurally generated from the following sources: // - src/function-forms/reassign-fn-name-in-body-in-arrow.case // - src/function-forms/expr-named/func-expr-named-strict-error.template /*--- description: Reassignment of function name is silently ignored in non-strict mode code. (named function expression in strict mode code) esid: sec-function-definitions-runtime-semantics-evaluation flags: [generated, onlyStrict] info: | FunctionExpression : function BindingIdentifier ( FormalParameters ) { FunctionBody } ---*/ // increment callCount in case "body" let callCount = 0; let ref = function BindingIdentifier() { callCount++; (() => { BindingIdentifier = 1; })(); return BindingIdentifier; }; assert.throws(TypeError, () => { ref(); }); assert.sameValue(callCount, 1, 'function invoked exactly once'); reportCompare(0, 0);