Skip to content

Commit 56782bf

Browse files
fix: reserved field inside group blocks fail parsing (#2058)
* fix: reserved field inside group blocks fail parsing * Add test case from issue --------- Co-authored-by: Mike Kruskal <[email protected]>
1 parent 1dbcfe3 commit 56782bf

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

src/parse.js

+4
Original file line numberDiff line numberDiff line change
@@ -523,6 +523,10 @@ function parse(source, root, options) {
523523
parseEnum(type, token);
524524
break;
525525

526+
case "reserved":
527+
readRanges(type.reserved || (type.reserved = []), true);
528+
break;
529+
526530
/* istanbul ignore next */
527531
default:
528532
throw illegal(token); // there are no groups with proto3 semantics

tests/data/uncommon.proto

+8
Original file line numberDiff line numberDiff line change
@@ -93,3 +93,11 @@ service Test6 { option (custom).bar = "";
9393
rpc DoSomethingElse( stream DoSomethingRequest ) returns (DoSomethingResponse); /// post
9494
rpc DoSomethingEntirelyDifferent(DoSomethingRequest ) returns ( stream DoSomethingResponse ); /// post
9595
};
96+
97+
message Test7 {
98+
repeated group RepeatedGroup = 1 {
99+
optional string id = 2;
100+
reserved 3;
101+
optional string info = 4;
102+
}
103+
}

0 commit comments

Comments
 (0)