aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Dylan Conway <35280289+dylan-conway@users.noreply.github.com> 2023-04-17 15:26:18 -0700
committerGravatar GitHub <noreply@github.com> 2023-04-17 15:26:18 -0700
commit1ce60275d083665ce0988969c2e97c5fae8daa95 (patch)
treeecd1887548bb59d0da39e58ba5dc9c7bd325a024 /src
parent93a43c8fc1864e8460839fc952763a31115fae20 (diff)
downloadbun-1ce60275d083665ce0988969c2e97c5fae8daa95.tar.gz
bun-1ce60275d083665ce0988969c2e97c5fae8daa95.tar.zst
bun-1ce60275d083665ce0988969c2e97c5fae8daa95.zip
fix typescript decorators with index and number keys (#2677)
* handle index property key case * non-method number property * tests for property keys
Diffstat (limited to 'src')
-rw-r--r--src/js_parser.zig5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/js_parser.zig b/src/js_parser.zig
index afa91a48a..f596c2dcd 100644
--- a/src/js_parser.zig
+++ b/src/js_parser.zig
@@ -19001,7 +19001,8 @@ fn NewParser_(
.e_identifier => |k| p.newExpr(E.Identifier{ .ref = k.ref }, loc),
.e_number => |k| p.newExpr(E.Number{ .value = k.value }, loc),
.e_string => |k| p.newExpr(E.String{ .data = k.data }, loc),
- else => undefined,
+ .e_index => |k| p.newExpr(E.Index{ .target = k.target, .index = k.index }, loc),
+ else => unreachable,
};
const descriptor_kind: f64 = if (!prop.flags.contains(.is_method)) 2 else 1;
@@ -19042,7 +19043,7 @@ fn NewParser_(
target = p.newExpr(E.This{}, prop.key.?.loc);
}
- if (prop.flags.contains(.is_computed)) {
+ if (prop.flags.contains(.is_computed) or prop.key.?.data == .e_number) {
target = p.newExpr(E.Index{
.target = target,
.index = prop.key.?,
s/unsafe.test.js?h=dylan/github-api-option&id=b633573ad0904c1caaea4d867174695e7bd5fd19&follow=1'>[bun.js] Bun.unsafe test should check the gcGravatar Jarred Sumner 1-4/+14 2022-03-16Update work_pool.zigGravatar Jarred Sumner 1-21/+28 2022-03-16Add a way to run serial tasks on a different threadGravatar Jarred Sumner 1-3/+65 2022-03-16fix crash when SyntaxError is thrown and we did not receive an ErrorInstance?Gravatar Jarred Sumner 1-18/+25 2022-03-16[bun.js] Fix release-mode test failures in HeadersGravatar Jarred Sumner 1-47/+42 2022-03-16Update ref_count.zigGravatar Jarred Sumner 1-2/+0 2022-03-15file is too bigjarred/replGravatar Jarred Sumner 1-113827/+0 2022-03-15Update Dockerfile.baseGravatar Jarred Sumner 1-1/+1 2022-03-15Add rust and lolhtml to dockerfileGravatar Jarred Sumner 2-0/+20 2022-03-15bump webkitGravatar Jarred Sumner 1-1/+1 2022-03-15Update WebKitGravatar Jarred Sumner 1-0/+0 2022-03-15:camera:Gravatar Jarred Sumner 60-799/+859 2022-03-15Fix test failureGravatar Jarred Sumner 1-15/+17 2022-03-15[bun:error] handle errors without a name or messageGravatar Jarred Sumner 1-6/+11 2022-03-15Update pool.zigGravatar Jarred Sumner 1-0/+1 2022-03-15Load .env by defaultGravatar Jarred Sumner 2-0/+8 2022-03-15mimalloc interpose is buggyGravatar Jarred Sumner 1-2/+25 2022-03-15higher max http requests for bun.jsGravatar Jarred Sumner 1-0/+29 2022-03-15zero copyGravatar Jarred Sumner 1-21/+15 2022-03-15Update javascript.zigGravatar Jarred Sumner 1-2/+0 2022-03-15[bun.js] utf8 console.{time, count, timeEnd, profile, profileEnd, count, cou...Gravatar Jarred Sumner 1-16/+16