searching for reviewer(jwalden)
1d9e6a4506c4cf6d372fa5de43c9ed1c8912e766: Bug 1560412 - A jit-test for setImmutablePrototype with scripted proxies. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Wed, 26 Jun 2019 05:20:40 +0000 - rev 480130
Push 36203 by shindli@mozilla.com at Wed, 26 Jun 2019 09:36:33 +0000
Bug 1560412 - A jit-test for setImmutablePrototype with scripted proxies. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D35478
075075cb0b88cebae30bdc4f950c7d03747e9906: Bug 1549578: Cache most recently used UDateTimePatternGenerator in SharedIntlData. r=jwalden
André Bargull <andre.bargull@gmail.com> - Fri, 14 Jun 2019 03:34:33 +0000 - rev 478827
Push 36152 by btara@mozilla.com at Fri, 14 Jun 2019 10:00:22 +0000
Bug 1549578: Cache most recently used UDateTimePatternGenerator in SharedIntlData. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D30114
b7340dfe4325f8beb09a1a4cbfeae383f69d14bf: Bug 1548908: Verify during JS_Init that the hardware NaN is sane r=jwalden
Iain Ireland <iireland@mozilla.com> - Tue, 11 Jun 2019 00:23:41 +0000 - rev 478529
Push 36145 by aciure@mozilla.com at Thu, 13 Jun 2019 03:50:31 +0000
Bug 1548908: Verify during JS_Init that the hardware NaN is sane r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D33504
2ad263987c3927d4a1ff977183de5d8102a1e0ad: Bug 1401624: Part 8: Convert C-style macros to JS::detail constexprs r=jwalden
Iain Ireland <iireland@mozilla.com> - Wed, 12 Jun 2019 17:49:52 +0000 - rev 478528
Push 36145 by aciure@mozilla.com at Thu, 13 Jun 2019 03:50:31 +0000
Bug 1401624: Part 8: Convert C-style macros to JS::detail constexprs r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D33503
f42ce0774d43f0361b30b255bbffdf63e940bcd6: Bug 1548908: Add InfinityBits to FloatingPoint.h r=jwalden
Iain Ireland <iireland@mozilla.com> - Mon, 03 Jun 2019 15:59:21 +0000 - rev 478525
Push 36145 by aciure@mozilla.com at Thu, 13 Jun 2019 03:50:31 +0000
Bug 1548908: Add InfinityBits to FloatingPoint.h r=jwalden We can't generate a constexpr uint64_t containing the bits for positive/negative infinity, because of a (very sensible) static_assert in SpecificNaNBits. This patch adds support to FloatingPoint.h for infinity. The next patch will use it to make JS::InfinityValue constexpr (to match JS::NaNValue). Differential Revision: https://phabricator.services.mozilla.com/D29869
b82660f5a787496e23c17b50c1d3f6ae836293cc: Bug 1401624: Part 5: Change Value representation r=tcampbell,jwalden
Iain Ireland <iireland@mozilla.com> - Wed, 12 Jun 2019 17:51:06 +0000 - rev 478512
Push 36145 by aciure@mozilla.com at Thu, 13 Jun 2019 03:50:31 +0000
Bug 1401624: Part 5: Change Value representation r=tcampbell,jwalden This patch is where the actual changes to our value representation happens. A few notes: 1. We did some weird macro tricks to work around a GCC bug with enums in bitfields. Those bitfields were only useful for poking at values in gdb, and the trick no longer worked with object-biased nanboxing, so I removed it. I also got rid of asDouble_, because it's no longer possible to read the double value right out of the enum without unboxing. 2. In the previous boxing scheme, there was a mechanical conversion between a JSValueType and a JSValueTag. That's no longer true, which is why the big conversion switches exist. 3. Waldo, you were included as a reviewer specifically to look at Value.h and make sure that our gross bit twiddling is just gross and not undefined. Differential Revision: https://phabricator.services.mozilla.com/D29055
1a488ead5ac5aa0ab6efcaac1568a87ae0c59eb3: Bug 1401624: Part 5: Change Value representation r=tcampbell,jwalden
Iain Ireland <iireland@mozilla.com> - Wed, 12 Jun 2019 15:56:52 +0000 - rev 478468
Push 36143 by aciure@mozilla.com at Wed, 12 Jun 2019 21:41:19 +0000
Bug 1401624: Part 5: Change Value representation r=tcampbell,jwalden This patch is where the actual changes to our value representation happens. A few notes: 1. We did some weird macro tricks to work around a GCC bug with enums in bitfields. Those bitfields were only useful for poking at values in gdb, and the trick no longer worked with object-biased nanboxing, so I removed it. I also got rid of asDouble_, because it's no longer possible to read the double value right out of the enum without unboxing. 2. In the previous boxing scheme, there was a mechanical conversion between a JSValueType and a JSValueTag. That's no longer true, which is why the big conversion switches exist. 3. Waldo, you were included as a reviewer specifically to look at Value.h and make sure that our gross bit twiddling is just gross and not undefined. Differential Revision: https://phabricator.services.mozilla.com/D29055
cb05bf1bcc54d28e12587b8cf8d02b4b3b7f4a48: Bug 1557664 - Add AutoHoldPrincipals RAII class and use it to fix a leak in the JS shell. r=jwalden
Jan de Mooij <jdemooij@mozilla.com> - Tue, 11 Jun 2019 10:11:21 +0000 - rev 478250
Push 36138 by rgurzau@mozilla.com at Tue, 11 Jun 2019 21:33:19 +0000
Bug 1557664 - Add AutoHoldPrincipals RAII class and use it to fix a leak in the JS shell. r=jwalden Unfortunately JS_DropPrincipals wants the cx so it's hard to use RefPtr<>. Differential Revision: https://phabricator.services.mozilla.com/D34148
1f576eb69f814acf80658fc51e799aaac9c51e0f: Bug 1556136 - Fix misuse of readline() leading to a minor memory leak in the JS shell. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Fri, 07 Jun 2019 20:55:18 +0000 - rev 477905
Push 36127 by nbeleuzu@mozilla.com at Sat, 08 Jun 2019 09:39:25 +0000
Bug 1556136 - Fix misuse of readline() leading to a minor memory leak in the JS shell. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D33529
5f5575bb2b9359e325baacb38863de1524afdbf4: Bug 1536851 - Part 2: JS_NewObjectForConstructor should fail (not crash) if not constructing. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Thu, 30 May 2019 19:05:23 +0000 - rev 476263
Push 36090 by nbeleuzu@mozilla.com at Fri, 31 May 2019 03:59:09 +0000
Bug 1536851 - Part 2: JS_NewObjectForConstructor should fail (not crash) if not constructing. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D32536
459c574bd2d05e6943479108f22f88f3c65d418d: Bug 1536851 - Part 1: Change JS_NewObjectForConstructor to respect `new.target`, like non-derived JS classes. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Thu, 30 May 2019 19:05:09 +0000 - rev 476262
Push 36090 by nbeleuzu@mozilla.com at Fri, 31 May 2019 03:59:09 +0000
Bug 1536851 - Part 1: Change JS_NewObjectForConstructor to respect `new.target`, like non-derived JS classes. r=jwalden Classes defined in JS using the `class` keyword, without using `extends`, implicitly construct a new `this` object before running the body of the constructor, and they use `new.target.prototype` as the new object's [[Prototype]]. This is one of the ways that JS classes support subclassing. When the subclass calls the base class constructor, the subclass's `.prototype` is used. Until now, we did not do this for classes defined in C++ using JS_NewObjectForConstructor. But there's no reason it shouldn't work the same way. Changing this is a nicety for embedders -- there's nothing using it in Firefox or internally right now, except for testing. Differential Revision: https://phabricator.services.mozilla.com/D31490
efa9757078d03a4cd36e5ead44703e6184d64add: Bug 1554063 - Move decimal to mozglue. r=jwalden
Mike Hommey <mh+mozilla@glandium.org> - Wed, 29 May 2019 06:57:28 +0000 - rev 476169
Push 36087 by malexandru@mozilla.com at Thu, 30 May 2019 09:44:16 +0000
Bug 1554063 - Move decimal to mozglue. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D32435
3a06bc818bc45931a873aa90d7a80e93294e8f7f: Bug 1551939 - Try adding three more Proxy checks. r=jwalden
Tom Schuster <evilpies@gmail.com> - Wed, 29 May 2019 00:57:46 +0000 - rev 476026
Push 36083 by nerli@mozilla.com at Wed, 29 May 2019 15:58:28 +0000
Bug 1551939 - Try adding three more Proxy checks. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D32374
3edc5be703bef8ad5e78a0ec9b08e98c69cf026b: Bug 1554063 - Move decimal to mozglue. r=jwalden
Mike Hommey <mh+mozilla@glandium.org> - Wed, 29 May 2019 00:59:20 +0000 - rev 475996
Push 36080 by nerli@mozilla.com at Wed, 29 May 2019 09:48:47 +0000
Bug 1554063 - Move decimal to mozglue. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D32435
1e82c40506077c6d5864a658b3585b0b2f2d8631: Bug 1551128 - Limit result bit length in BigInt.asUintN on negative values r=jwalden
Andy Wingo <wingo@igalia.com> - Thu, 16 May 2019 07:39:14 +0000 - rev 474041
Push 36022 by ncsoregi@mozilla.com at Thu, 16 May 2019 21:55:16 +0000
Bug 1551128 - Limit result bit length in BigInt.asUintN on negative values r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D30874
6bfd3a158f0f5b221ecf73b2fbbef8bca8b52836: Bug 1543642 - Part 5: Update SpiderMonkey to Unicode 12.1. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 23 Apr 2019 16:46:07 +0200 - rev 472088
Push 35947 by apavel@mozilla.com at Wed, 01 May 2019 15:57:23 +0000
Bug 1543642 - Part 5: Update SpiderMonkey to Unicode 12.1. r=jwalden Differential Revision: https://phabricator.services.mozilla.com//D27354
e32ac71686c8942b43d2c7189c649c88b8145d10: Bug 1543642 - Part 4: Remove special-casing for Etc/UCT. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 23 Apr 2019 16:45:55 +0200 - rev 472087
Push 35947 by apavel@mozilla.com at Wed, 01 May 2019 15:57:23 +0000
Bug 1543642 - Part 4: Remove special-casing for Etc/UCT. r=jwalden Etc/UCT resp. UCT is a link to Etc/UTC starting with tzdata 2019a. Differential Revision: https://phabricator.services.mozilla.com//D27353
7375a89e0c85113ab3abbf23d7b028635b103195: Bug 1543642 - Part 3: Update tzdata in ICU data files to 2019a. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 23 Apr 2019 16:45:45 +0200 - rev 472086
Push 35947 by apavel@mozilla.com at Wed, 01 May 2019 15:57:23 +0000
Bug 1543642 - Part 3: Update tzdata in ICU data files to 2019a. r=jwalden Differential Revision: https://phabricator.services.mozilla.com//D27352
645264976a1b4d98333c6082e22e5bc5a036c4f2: Bug 1543642 - Part 2: Update in-tree ICU to release 64.2. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 23 Apr 2019 07:45:23 -0700 - rev 472085
Push 35947 by apavel@mozilla.com at Wed, 01 May 2019 15:57:23 +0000
Bug 1543642 - Part 2: Update in-tree ICU to release 64.2. r=jwalden
022d97621e5b0758fade155e697c48874f0d3b97: Bug 1543642 - Part 1: Update ICU patches to apply cleanly. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 23 Apr 2019 16:45:11 +0200 - rev 472084
Push 35947 by apavel@mozilla.com at Wed, 01 May 2019 15:57:23 +0000
Bug 1543642 - Part 1: Update ICU patches to apply cleanly. r=jwalden Differential Revision: https://phabricator.services.mozilla.com//D27351
4802b506ce335a362e535ce0baf5bbbbdf69bae0: Bug 1543644: Include RBNF data for Japanese to support Gannen year representation. r=jwalden
André Bargull <andre.bargull@gmail.com> - Fri, 26 Apr 2019 20:55:35 +0000 - rev 471741
Push 35934 by shindli@mozilla.com at Mon, 29 Apr 2019 21:53:38 +0000
Bug 1543644: Include RBNF data for Japanese to support Gannen year representation. r=jwalden ICU changes the numbering system of date formats which include an era marker to "jpanyear". "jpanyear" is a rule-based numbering system and therefore the RBNF data for the Japanese locale now need to be included. Differential Revision: https://phabricator.services.mozilla.com/D27340
d6f935d90da47f542743715481bdec6679b64f94: Bug 1538779 - Make `Rooted<MyContainer> c(cx)` the equivalent of `Rooted<MyContainer> c(cx, MyContainer(cx))` if possible r=jwalden
Steve Fink <sfink@mozilla.com> - Fri, 26 Apr 2019 16:54:43 +0000 - rev 471563
Push 35921 by nbeleuzu@mozilla.com at Sat, 27 Apr 2019 09:45:52 +0000
Bug 1538779 - Make `Rooted<MyContainer> c(cx)` the equivalent of `Rooted<MyContainer> c(cx, MyContainer(cx))` if possible r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D26797
bc11fcee57413b33a88ae49a9e89d0e842a09099: Bug 1543843 - Add constructors to JSPropertySpec and inner structs/unions. r=jwalden
Tooru Fujisawa <arai_a@mac.com> - Fri, 26 Apr 2019 01:01:15 +0000 - rev 471409
Push 35916 by rmaries@mozilla.com at Fri, 26 Apr 2019 09:46:15 +0000
Bug 1543843 - Add constructors to JSPropertySpec and inner structs/unions. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D27277
606bba3b09248942c5cdbfb44e119d40f9dd054c: Bug 1534593 part 1. Stop special-casing JS::Value initialization, since JS::Value now always initializes itself on construction. r=jwalden,qdot
Boris Zbarsky <bzbarsky@mit.edu> - Tue, 16 Apr 2019 19:11:40 +0000 - rev 469840
Push 35883 by btara@mozilla.com at Wed, 17 Apr 2019 21:47:29 +0000
Bug 1534593 part 1. Stop special-casing JS::Value initialization, since JS::Value now always initializes itself on construction. r=jwalden,qdot Differential Revision: https://phabricator.services.mozilla.com/D27560
27f0cd20a8b010d5753295df6246cde37fbada1e: Bug 1529772 - Part 4: Implement ASI for fields that don't have initializers. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Mon, 15 Apr 2019 20:55:25 +0000 - rev 469567
Push 35874 by ccoroiu@mozilla.com at Tue, 16 Apr 2019 04:04:58 +0000
Bug 1529772 - Part 4: Implement ASI for fields that don't have initializers. r=jwalden The only reason this wasn't already working is that propertyOrMethodName() relied on a Semi token to help it recognize a FieldDeclaration without an Initializer. This obviously can't work if the semicolon isn't there, so this patch makes Field the default case. That means the caller, classMember(), must be prepared for propertyOrMethodName() to succeed with PropertyType::Field when in fact maybe there's nothing but gibberish coming up; but we already handle that. Differential Revision: https://phabricator.services.mozilla.com/D26038
e771e63200c6235057da4a0241ab0b346d8619eb: Bug 1529772 - Part 3: Implement ASI for fields that have initializers. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Mon, 15 Apr 2019 20:55:05 +0000 - rev 469566
Push 35874 by ccoroiu@mozilla.com at Tue, 16 Apr 2019 04:04:58 +0000
Bug 1529772 - Part 3: Implement ASI for fields that have initializers. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D26037
9d97f970cbeb6d6b0e0eb052550ab66865fe4527: Bug 1529772 - Part 4: Implement ASI for fields that don't have initializers. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Fri, 12 Apr 2019 23:33:57 +0000 - rev 469366
Push 35865 by apavel@mozilla.com at Sat, 13 Apr 2019 21:44:49 +0000
Bug 1529772 - Part 4: Implement ASI for fields that don't have initializers. r=jwalden The only reason this wasn't already working is that propertyOrMethodName() relied on a Semi token to help it recognize a FieldDeclaration without an Initializer. This obviously can't work if the semicolon isn't there, so this patch makes Field the default case. That means the caller, classMember(), must be prepared for propertyOrMethodName() to succeed with PropertyType::Field when in fact maybe there's nothing but gibberish coming up; but we already handle that. Differential Revision: https://phabricator.services.mozilla.com/D26038
12f5ca654613f554e8de650ad84d8b4a6548a113: Bug 1529772 - Part 3: Implement ASI for fields that have initializers. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Fri, 12 Apr 2019 22:23:22 +0000 - rev 469365
Push 35865 by apavel@mozilla.com at Sat, 13 Apr 2019 21:44:49 +0000
Bug 1529772 - Part 3: Implement ASI for fields that have initializers. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D26037
27abf0e843c3122eb5318774f1a069c8606665b7: Bug 1542736 - Part 10: Remove unnecessary includes for ctype.h. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:37:30 +0000 - rev 469061
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 10: Remove unnecessary includes for ctype.h. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D26513
e28d3c25f82c2246bcd3edf3a73f5fb1d0899a20: Bug 1542736 - Part 9: Replace std::isspace with js::unicode::IsSpace. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:37:26 +0000 - rev 469060
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 9: Replace std::isspace with js::unicode::IsSpace. r=jwalden Remove the last remaining call to ctype functions. Differential Revision: https://phabricator.services.mozilla.com/D26512
ad9ff91000a99f6f12ea5338776aa883659c2986: Bug 1542736 - Part 8: Replace std::isalpha with mozilla::IsAsciiAlpha. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:37:22 +0000 - rev 469059
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 8: Replace std::isalpha with mozilla::IsAsciiAlpha. r=jwalden More removal of ctype functions. Differential Revision: https://phabricator.services.mozilla.com/D26511
ed1ef97375801e123d5edf8bbe569f8411852004: Bug 1542736 - Part 7: Replace std::tolower with js::unicode::ToLowerCase. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:37:18 +0000 - rev 469058
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 7: Replace std::tolower with js::unicode::ToLowerCase. r=jwalden std::tolower can be safely replaced with js::unicode::ToLowerCase in both contexts. Differential Revision: https://phabricator.services.mozilla.com/D26510
e130d82fa361173eb53c78c030e705170c6a8e0d: Bug 1542736 - Part 6: Replace std::isprint with js::IsAsciiPrintable. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:58:17 +0000 - rev 469057
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 6: Replace std::isprint with js::IsAsciiPrintable. r=jwalden Provide js::IsAsciiPrintable as a safe alternative to std::isprint, which doesn't lead to UB for inputs not representable as `unsigned char` and which also doesn't depend on the current locale. Differential Revision: https://phabricator.services.mozilla.com/D26509
21497aef0046d257fbaeec2e88e9e625b2d55c01: Bug 1542736 - Part 5: Replace std::isdigit with mozilla::IsAsciiDigit. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:35:26 +0000 - rev 469056
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 5: Replace std::isdigit with mozilla::IsAsciiDigit. r=jwalden mozilla::IsAsciiDigit is equivalent to std::isdigit, except it's not necessary to worry about UB when calling it with an input which can't be represented as `unsigned char`. Differential Revision: https://phabricator.services.mozilla.com/D26508
544ee6df501b898955b11055eedeca824ca2605d: Bug 1542736 - Part 4: Replace JS_UNDEC with js::AsciiDigitToNumber. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:35:06 +0000 - rev 469055
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 4: Replace JS_UNDEC with js::AsciiDigitToNumber. r=jwalden js::AsciiDigitToNumber is an optimised version of mozilla::AsciiAlphanumericToNumber for known ASCII digit-only cases, which avoids the extra comparisons for ASCII alphabetical characters. This ensures replacing JS_UNDEC with js::AsciiDigitToNumber still emits the same assembly. Differential Revision: https://phabricator.services.mozilla.com/D26507
ae1ac8554873f1e9b4a574a5110aedb19f99c0c3: Bug 1542736 - Part 3: Replace JS7_ISOCT and JS7_UNOCT macros with proper functions. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:34:41 +0000 - rev 469054
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 3: Replace JS7_ISOCT and JS7_UNOCT macros with proper functions. r=jwalden JS7_ISOCT and JS7_UNOCT were only used in TokenStream, so the new functions were directly moved into that file instead of adding them to util/Text.h. Differential Revision: https://phabricator.services.mozilla.com/D26506
bac7b9ec895ca1b8da43d3f2b8e1c9f191dac508: Bug 1542736 - Part 2: Replace JS7_ISHEX with mozilla::IsAsciiHexDigit. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:34:16 +0000 - rev 469053
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 2: Replace JS7_ISHEX with mozilla::IsAsciiHexDigit. r=jwalden Clang and GCC generate slightly better assembly when IsAsciiHexDigit is called, because the `cmp` instruction for the `< 127` check in JS7_ISHEX is no longer emitted. Differential Revision: https://phabricator.services.mozilla.com/D26505
5b6bf24882cee31b0d344a0fe1f5f7d5076d3cec: Bug 1542736 - Part 1: Replace JS7_UNHEX with mozilla::AsciiAlphanumericToNumber. r=jwalden
André Bargull <andre.bargull@gmail.com> - Thu, 11 Apr 2019 11:33:56 +0000 - rev 469052
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1542736 - Part 1: Replace JS7_UNHEX with mozilla::AsciiAlphanumericToNumber. r=jwalden This avoids a call to std::tolower, making hex-conversions slightly faster. Differential Revision: https://phabricator.services.mozilla.com/D26504
a7adb4cb7f66a2b98f8a674458b43f10a4d7bf14: Bug 1539877 - Remove Modifier::TemplateTail. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Thu, 11 Apr 2019 13:25:36 +0000 - rev 469000
Push 35856 by csabou@mozilla.com at Fri, 12 Apr 2019 03:19:48 +0000
Bug 1539877 - Remove Modifier::TemplateTail. r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D25330
4531b9532bd9a106f693f8749e8286b50edf8329: Bug 1539821 - Part 7: Remove ModifierException. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Wed, 10 Apr 2019 16:04:37 +0000 - rev 468874
Push 35852 by dvarga@mozilla.com at Thu, 11 Apr 2019 04:19:28 +0000
Bug 1539821 - Part 7: Remove ModifierException. r=jwalden This renames addModifierException -> allowGettingNextTokenWithAllowRegExp. The new name is clunky, but the code is simpler. Adding DoNotWant mode in condExpr() and classMember() is both what we actually meant all along and necessary. It is necessary because the new assertion scheme is actually pickier; calling matchToken with AllowDiv when we already called allowGettingNextTokenWithAllowRegExp now flunks the assertion. Differential Revision: https://phabricator.services.mozilla.com/D25311
06ad5997d16183b2aa313c071a85b9814b0fd737: Bug 1539821 - Part 6: Remove ModifierExceptions for propertyName(). r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Wed, 10 Apr 2019 14:42:53 +0000 - rev 468873
Push 35852 by dvarga@mozilla.com at Thu, 11 Apr 2019 04:19:28 +0000
Bug 1539821 - Part 6: Remove ModifierExceptions for propertyName(). r=jwalden propertyName() has three callers, corresponding to ObjectLiteral, ObjectBindingPattern, and ClassDeclaration. In each case the next token must be neither Div nor RegExp. Differential Revision: https://phabricator.services.mozilla.com/D25821
a0869df70525060e5346e8dbc062fbf47a284617: Bug 1539821 - Part 5: Remove modifier exceptions rendered unnecessary by using SlashIsInvalid mode in mustMatchToken(). r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Wed, 10 Apr 2019 14:42:41 +0000 - rev 468872
Push 35852 by dvarga@mozilla.com at Thu, 11 Apr 2019 04:19:28 +0000
Bug 1539821 - Part 5: Remove modifier exceptions rendered unnecessary by using SlashIsInvalid mode in mustMatchToken(). r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D25820
7abd8fbb2582cb871cfb3bfbb587bb4478cd19ae: Bug 1539821 - Part 4: Use Modifier::SlashIsInvalid in mustMatchToken(). r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Wed, 10 Apr 2019 14:42:31 +0000 - rev 468871
Push 35852 by dvarga@mozilla.com at Thu, 11 Apr 2019 04:19:28 +0000
Bug 1539821 - Part 4: Use Modifier::SlashIsInvalid in mustMatchToken(). r=jwalden Differential Revision: https://phabricator.services.mozilla.com/D25312
7e5d87cbcefe01b91b90b86a8e7ed112bc75fec4: Bug 1539821 - Part 3: Add Modifier::SlashIsInvalid. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Wed, 10 Apr 2019 17:10:46 +0000 - rev 468870
Push 35852 by dvarga@mozilla.com at Thu, 11 Apr 2019 04:19:28 +0000
Bug 1539821 - Part 3: Add Modifier::SlashIsInvalid. r=jwalden This helps us get rid of several uses of addModifierException, as the next few patches show. It will also be used to implement ASI for fields. (In most contexts, the next token after a missing semicolon needs to be scanned in SlashIsRegExp mode. In a ClassBody it's different; the next token must be neither Div nor RegExp in a syntactically valid program.) Differential Revision: https://phabricator.services.mozilla.com/D25819
b595a64f80d7ef5bb77a941d2786f1e63c6887cb: Bug 1539821 - Part 2: Rename TokenStream::Operand -> SlashIsRegExp and TokenStream::None -> SlashIsDiv. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Wed, 10 Apr 2019 14:42:21 +0000 - rev 468869
Push 35852 by dvarga@mozilla.com at Thu, 11 Apr 2019 04:19:28 +0000
Bug 1539821 - Part 2: Rename TokenStream::Operand -> SlashIsRegExp and TokenStream::None -> SlashIsDiv. r=jwalden Also renames ModifierException::OperandIsNone -> SlashIsRegExpOK, although it doesn't matter too much, as its days are numbered. Differential Revision: https://phabricator.services.mozilla.com/D25818
7114c39413db635e924e027a8d006ed6a0f2a451: Bug 1539821 - Part 1: Delete ModifierException::NoneIsOperand. r=jwalden
Jason Orendorff <jorendorff@mozilla.com> - Wed, 10 Apr 2019 14:42:17 +0000 - rev 468868
Push 35852 by dvarga@mozilla.com at Thu, 11 Apr 2019 04:19:28 +0000
Bug 1539821 - Part 1: Delete ModifierException::NoneIsOperand. r=jwalden It turns out to be vestigial. The comment being deleted here says, "Comma/semicolon cases are also gotten as operators (None)", but this is no longer true. Both are scanned as Operand now; and so are RightCurly, RightParen, and the various other tokens listed in yieldExpression(), for which an exception was once necessary. Differential Revision: https://phabricator.services.mozilla.com/D25310
1245a50cc3a0f1ef77e9b38c7c618415434207f8: Bug 1522070 - Part 6: Add strict parsing of Unicode and transform extension sequences. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 09 Apr 2019 09:17:04 +0000 - rev 468518
Push 35841 by csabou@mozilla.com at Tue, 09 Apr 2019 16:23:02 +0000
Bug 1522070 - Part 6: Add strict parsing of Unicode and transform extension sequences. r=jwalden Unicode BCP 47 locale identifiers have stricter requirements for the Unicode ("-u-") and tranformed content ("-t-") extension sequences. - Keys in Unicode extensions must be of the form "alphanum alpha". - Transformed content extensions need to be parsed following the `transformed_extensions` syntax from UTS 35. Differential Revision: https://phabricator.services.mozilla.com/D23542
7b0c2144242cbaadc9ce80e0f5bfe804bf58ff6a: Bug 1522070 - Part 5: Update comments to refer to Unicode BCP 47 locale identifiers. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 09 Apr 2019 09:16:44 +0000 - rev 468517
Push 35841 by csabou@mozilla.com at Tue, 09 Apr 2019 16:23:02 +0000
Bug 1522070 - Part 5: Update comments to refer to Unicode BCP 47 locale identifiers. r=jwalden - Strict parsing for "u" and "t" extensions is not yet implemented. - Canonicalisation per UTS 35 is also not yet implemented, so it still refers to BCP 47 tags. Differential Revision: https://phabricator.services.mozilla.com/D23540
c5a97d3424310716d3a849dfb95f1ec86f7eb783: Bug 1522070 - Part 4: Remove support for four letter language subtags. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 09 Apr 2019 09:16:34 +0000 - rev 468516
Push 35841 by csabou@mozilla.com at Tue, 09 Apr 2019 16:23:02 +0000
Bug 1522070 - Part 4: Remove support for four letter language subtags. r=jwalden Unicode BCP 47 locale identifiers don't support four letter language subtags. Differential Revision: https://phabricator.services.mozilla.com/D23539
b215b68fbccce1f1297b79ae471341bbe1cc7164: Bug 1522070 - Part 3: Remove support for privateuse-only language tags. r=jwalden
André Bargull <andre.bargull@gmail.com> - Tue, 09 Apr 2019 09:16:25 +0000 - rev 468515
Push 35841 by csabou@mozilla.com at Tue, 09 Apr 2019 16:23:02 +0000
Bug 1522070 - Part 3: Remove support for privateuse-only language tags. r=jwalden Language tags only consisting of a private-use subtags are not allowed in Unicode BCP 47 locale identifiers. Differential Revision: https://phabricator.services.mozilla.com/D23538