The tests for the parsing of the `with` statement were expressed using
eval. This made the tests more complex than necessary and also prevented
the tests from providing value to ECMAScript parsers.
Remove the use of eval and instead express the expectations with literal
source text. Rename the files to make each test's purpose more clear.
These tests are syntactically equivalent to
`test/language/statements/with/12.10.1-7-s.js` and may therefore be
removed without degrading coverage.
While `test/language/statements/with/12.10.1-9-s.js` differs slightly in
the pattern used to enable strict mode, the relevant behavior of the
"use strict" directive prologue is expressly tested via
`test/language/directive-prologue/func-expr-inside-func-decl-parse.js`.
Per https://tc39.github.io/ecma402/#sec-canonicalizelanguagetag
6.2.3 CanonicalizeLanguageTag ( locale )
The CanonicalizeLanguageTag abstract operation returns the canonical and case-regularized form of the locale argument (which must be a String value that is a structurally valid Unicode BCP 47 Locale Identifier as verified by the IsStructurallyValidLanguageTag abstract operation). A conforming implementation shall take the steps specified in the “BCP 47 Language Tag to Unicode BCP 47 Locale Identifier” algorithm, from Unicode Technical Standard #35 LDML § 3.3.1 BCP 47 Language Tag Conversion.
And
http://unicode.org/reports/tr35/#BCP_47_Language_Tag_Conversion
"
2. If the BCP 47 primary language subtag matches the type attribute of a languageAlias element in Supplemental Data, replace the language subtag with the replacement value.
If there are additional subtags in the replacement value, add them to the result, but only if there is no corresponding subtag already in the tag.
"
and
https://www.unicode.org/repos/cldr/trunk/common/supplemental/supplementalMetadata.xml
...
<languageAlias type="aar" replacement="aa" reason="overlong"/>
<!-- [Afar] -->
...
<languageAlias type="ces" replacement="cs" reason="overlong"/>
<!-- [Czech] -->
...
<languageAlias type="heb" replacement="he" reason="overlong"/>
<!-- [Hebrew] -->