Skip to content

Commit 0960b7d

Browse files
committed
pr-4667 - checking Srikanth's PR from my machine
1 parent e03b6a4 commit 0960b7d

28 files changed

+423
-386
lines changed

org.eclipse.jdt.core.compiler.batch/grammar/java.g

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1751,7 +1751,6 @@ PrimaryNoNewArray -> ArrayAccess
17511751
-- Start of rules for JSR 335
17521752
-----------------------------------------------------------------------
17531753

1754-
PrimaryNoNewArray -> LambdaExpression
17551754
PrimaryNoNewArray -> ReferenceExpression
17561755
/:$readableName Expression:/
17571756

@@ -2083,6 +2082,17 @@ CastExpression ::= BeginIntersectionCast PushLPAREN CastNameAndBounds PushRPARE
20832082
/.$putCase consumeCastExpressionLL1WithBounds(); $break ./
20842083
CastExpression ::= PushLPAREN Name Dims AdditionalBoundsListOpt PushRPAREN InsideCastExpression UnaryExpressionNotPlusMinus
20852084
/.$putCase consumeCastExpressionWithNameArray(); $break ./
2085+
--------
2086+
CastExpression ::= PushLPAREN Name OnlyTypeArgumentsForCastExpression Dimsopt AdditionalBoundsListOpt PushRPAREN InsideCastExpression LambdaExpression
2087+
/.$putCase consumeCastExpressionWithGenericsArray(); $break ./
2088+
CastExpression ::= PushLPAREN Name OnlyTypeArgumentsForCastExpression '.' ClassOrInterfaceType Dimsopt AdditionalBoundsListOpt PushRPAREN InsideCastExpressionWithQualifiedGenerics LambdaExpression
2089+
/.$putCase consumeCastExpressionWithQualifiedGenericsArray(); $break ./
2090+
CastExpression ::= PushLPAREN Name PushRPAREN InsideCastExpressionLL1 LambdaExpression
2091+
/.$putCase consumeCastExpressionLL1(); $break ./
2092+
CastExpression ::= BeginIntersectionCast PushLPAREN CastNameAndBounds PushRPAREN InsideCastExpressionLL1WithBounds LambdaExpression
2093+
/.$putCase consumeCastExpressionLL1WithBounds(); $break ./
2094+
CastExpression ::= PushLPAREN Name Dims AdditionalBoundsListOpt PushRPAREN InsideCastExpression LambdaExpression
2095+
/.$putCase consumeCastExpressionWithNameArray(); $break ./
20862096
/:$readableName CastExpression:/
20872097

20882098
AdditionalBoundsListOpt ::= $empty
@@ -2188,14 +2198,16 @@ ConditionalOrExpression ::= ConditionalOrExpression '||' ConditionalAndExpressio
21882198
ConditionalExpression -> ConditionalOrExpression
21892199
ConditionalExpression ::= ConditionalOrExpression '?' Expression ':' ConditionalExpression
21902200
/.$putCase consumeConditionalExpression(OperatorIds.QUESTIONCOLON) ; $break ./
2201+
ConditionalExpression ::= ConditionalOrExpression '?' Expression ':' LambdaExpression
2202+
/.$putCase consumeConditionalExpression(OperatorIds.QUESTIONCOLON) ; $break ./
21912203
/:$readableName Expression:/
21922204

21932205
AssignmentExpression -> ConditionalExpression
21942206
AssignmentExpression -> Assignment
21952207
/:$readableName Expression:/
21962208
/:$recovery_template Identifier:/
21972209

2198-
Assignment ::= PostfixExpression AssignmentOperator AssignmentExpression
2210+
Assignment ::= PostfixExpression AssignmentOperator Expression
21992211
/.$putCase consumeAssignment(); $break ./
22002212
/:$readableName Assignment:/
22012213

@@ -2238,6 +2250,8 @@ AssignmentOperator ::= '|='
22382250
-- has been reduced.
22392251
Expression ::= AssignmentExpression
22402252
/.$putCase consumeExpression(); $break ./
2253+
Expression ::= LambdaExpression
2254+
/.$putCase consumeExpression(); $break ./
22412255
/:$readableName Expression:/
22422256
/:$recovery_template Identifier:/
22432257

@@ -2843,6 +2857,7 @@ AssignmentExpression_NotName -> Assignment
28432857
/:$readableName Expression:/
28442858

28452859
Expression_NotName -> AssignmentExpression_NotName
2860+
Expression_NotName -> LambdaExpression
28462861
/:$readableName Expression:/
28472862
-----------------------------------------------
28482863
-- 1.5 features : end of generics
@@ -3119,3 +3134,4 @@ UNDERSCORE ::= '_'
31193134

31203135
$end
31213136
-- need a carriage return after the $end
3137+

org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/Parser.java

Lines changed: 309 additions & 288 deletions
Large diffs are not rendered by default.

org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,20 @@ public interface ParserBasicInformation {
2222

2323
ERROR_SYMBOL = 138,
2424
MAX_NAME_LENGTH = 41,
25-
NUM_STATES = 1223,
25+
NUM_STATES = 1194,
2626

2727
NT_OFFSET = 138,
28-
SCOPE_UBOUND = 310,
29-
SCOPE_SIZE = 311,
30-
LA_STATE_OFFSET = 17648,
28+
SCOPE_UBOUND = 320,
29+
SCOPE_SIZE = 321,
30+
LA_STATE_OFFSET = 17560,
3131
MAX_LA = 1,
32-
NUM_RULES = 926,
32+
NUM_RULES = 933,
3333
NUM_TERMINALS = 138,
3434
NUM_NON_TERMINALS = 425,
3535
NUM_SYMBOLS = 563,
36-
START_STATE = 1015,
37-
EOFT_SYMBOL = 39,
38-
EOLT_SYMBOL = 39,
39-
ACCEPT_ACTION = 17647,
40-
ERROR_ACTION = 17648;
36+
START_STATE = 1486,
37+
EOFT_SYMBOL = 63,
38+
EOLT_SYMBOL = 63,
39+
ACCEPT_ACTION = 17559,
40+
ERROR_ACTION = 17560;
4141
}

org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/TerminalToken.java

Lines changed: 86 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -44,87 +44,87 @@ public enum TerminalToken {
4444
TokenNameCOMMENT_MARKDOWN(1005),
4545

4646
// BEGIN_AUTOGENERATED_REGION
47-
TokenNameIdentifier(22),
48-
TokenNameabstract(43),
49-
TokenNameassert(81),
47+
TokenNameIdentifier(12),
48+
TokenNameabstract(41),
49+
TokenNameassert(79),
5050
TokenNameboolean(104),
51-
TokenNamebreak(82),
51+
TokenNamebreak(80),
5252
TokenNamebyte(105),
5353
TokenNamecase(106),
5454
TokenNamecatch(107),
5555
TokenNamechar(108),
56-
TokenNameclass(71),
57-
TokenNamecontinue(83),
56+
TokenNameclass(68),
57+
TokenNamecontinue(81),
5858
TokenNameconst(136),
59-
TokenNamedefault(77),
60-
TokenNamedo(84),
59+
TokenNamedefault(74),
60+
TokenNamedo(82),
6161
TokenNamedouble(109),
62-
TokenNameelse(119),
63-
TokenNameenum(75),
62+
TokenNameelse(118),
63+
TokenNameenum(71),
6464
TokenNameextends(92),
65-
TokenNamefalse(53),
66-
TokenNamefinal(44),
65+
TokenNamefalse(51),
66+
TokenNamefinal(42),
6767
TokenNamefinally(117),
6868
TokenNamefloat(110),
69-
TokenNamefor(85),
69+
TokenNamefor(83),
7070
TokenNamegoto(137),
71-
TokenNameif(86),
71+
TokenNameif(84),
7272
TokenNameimplements(132),
7373
TokenNameimport(111),
74-
TokenNameinstanceof(17),
74+
TokenNameinstanceof(18),
7575
TokenNameint(112),
76-
TokenNameinterface(72),
76+
TokenNameinterface(69),
7777
TokenNamelong(113),
78-
TokenNamenative(45),
79-
TokenNamenew(38),
80-
TokenNamenon_sealed(46),
81-
TokenNamenull(54),
78+
TokenNamenative(43),
79+
TokenNamenew(37),
80+
TokenNamenon_sealed(44),
81+
TokenNamenull(52),
8282
TokenNamepackage(91),
83-
TokenNameprivate(47),
84-
TokenNameprotected(48),
85-
TokenNamepublic(49),
86-
TokenNamereturn(87),
83+
TokenNameprivate(45),
84+
TokenNameprotected(46),
85+
TokenNamepublic(47),
86+
TokenNamereturn(85),
8787
TokenNameshort(114),
88-
TokenNamestatic(40),
89-
TokenNamestrictfp(50),
90-
TokenNamesuper(35),
91-
TokenNameswitch(65),
92-
TokenNamesynchronized(41),
93-
TokenNamethis(36),
94-
TokenNamethrow(79),
95-
TokenNamethrows(120),
96-
TokenNametransient(51),
97-
TokenNametrue(55),
98-
TokenNametry(88),
88+
TokenNamestatic(38),
89+
TokenNamestrictfp(48),
90+
TokenNamesuper(33),
91+
TokenNameswitch(62),
92+
TokenNamesynchronized(39),
93+
TokenNamethis(34),
94+
TokenNamethrow(77),
95+
TokenNamethrows(119),
96+
TokenNametransient(49),
97+
TokenNametrue(53),
98+
TokenNametry(86),
9999
TokenNamevoid(115),
100-
TokenNamevolatile(52),
101-
TokenNamewhile(80),
100+
TokenNamevolatile(50),
101+
TokenNamewhile(78),
102102
TokenNamemodule(116),
103-
TokenNameopen(121),
104-
TokenNamerequires(122),
103+
TokenNameopen(120),
104+
TokenNamerequires(121),
105105
TokenNametransitive(127),
106-
TokenNameexports(123),
107-
TokenNameopens(124),
106+
TokenNameexports(122),
107+
TokenNameopens(123),
108108
TokenNameto(133),
109-
TokenNameuses(125),
110-
TokenNameprovides(126),
109+
TokenNameuses(124),
110+
TokenNameprovides(125),
111111
TokenNamewith(134),
112-
TokenNameIntegerLiteral(56),
113-
TokenNameLongLiteral(57),
114-
TokenNameFloatingPointLiteral(58),
115-
TokenNameDoubleLiteral(59),
116-
TokenNameCharacterLiteral(60),
117-
TokenNameStringLiteral(61),
118-
TokenNameTextBlock(62),
112+
TokenNameIntegerLiteral(54),
113+
TokenNameLongLiteral(55),
114+
TokenNameFloatingPointLiteral(56),
115+
TokenNameDoubleLiteral(57),
116+
TokenNameCharacterLiteral(58),
117+
TokenNameStringLiteral(59),
118+
TokenNameTextBlock(60),
119119
TokenNamePLUS_PLUS(2),
120120
TokenNameMINUS_MINUS(3),
121-
TokenNameEQUAL_EQUAL(19),
122-
TokenNameLESS_EQUAL(12),
123-
TokenNameGREATER_EQUAL(13),
124-
TokenNameNOT_EQUAL(20),
125-
TokenNameLEFT_SHIFT(18),
126-
TokenNameRIGHT_SHIFT(14),
127-
TokenNameUNSIGNED_RIGHT_SHIFT(16),
121+
TokenNameEQUAL_EQUAL(21),
122+
TokenNameLESS_EQUAL(14),
123+
TokenNameGREATER_EQUAL(15),
124+
TokenNameNOT_EQUAL(22),
125+
TokenNameLEFT_SHIFT(19),
126+
TokenNameRIGHT_SHIFT(13),
127+
TokenNameUNSIGNED_RIGHT_SHIFT(17),
128128
TokenNamePLUS_EQUAL(93),
129129
TokenNameMINUS_EQUAL(94),
130130
TokenNameMULTIPLY_EQUAL(95),
@@ -140,47 +140,47 @@ public enum TerminalToken {
140140
TokenNameAND_AND(30),
141141
TokenNamePLUS(4),
142142
TokenNameMINUS(5),
143-
TokenNameNOT(67),
144-
TokenNameREMAINDER(9),
145-
TokenNameXOR(25),
146-
TokenNameAND(21),
147-
TokenNameMULTIPLY(8),
143+
TokenNameNOT(64),
144+
TokenNameREMAINDER(10),
145+
TokenNameXOR(27),
146+
TokenNameAND(23),
147+
TokenNameMULTIPLY(9),
148148
TokenNameOR(28),
149-
TokenNameTWIDDLE(68),
150-
TokenNameDIVIDE(10),
151-
TokenNameGREATER(15),
152-
TokenNameLESS(11),
153-
TokenNameLPAREN(23),
154-
TokenNameRPAREN(24),
155-
TokenNameLBRACE(63),
156-
TokenNameRBRACE(33),
149+
TokenNameTWIDDLE(65),
150+
TokenNameDIVIDE(11),
151+
TokenNameGREATER(16),
152+
TokenNameLESS(7),
153+
TokenNameLPAREN(20),
154+
TokenNameRPAREN(25),
155+
TokenNameLBRACE(61),
156+
TokenNameRBRACE(35),
157157
TokenNameLBRACKET(6),
158-
TokenNameRBRACKET(70),
158+
TokenNameRBRACKET(73),
159159
TokenNameSEMICOLON(26),
160160
TokenNameQUESTION(29),
161-
TokenNameCOLON(66),
161+
TokenNameCOLON(70),
162162
TokenNameCOMMA(32),
163163
TokenNameDOT(1),
164-
TokenNameEQUAL(78),
165-
TokenNameAT(37),
164+
TokenNameEQUAL(76),
165+
TokenNameAT(36),
166166
TokenNameELLIPSIS(128),
167-
TokenNameARROW(118),
168-
TokenNameCOLON_COLON(7),
169-
TokenNameBeginLambda(64),
170-
TokenNameBeginIntersectionCast(69),
171-
TokenNameBeginTypeArguments(89),
172-
TokenNameElidedSemicolonAndRightBrace(73),
173-
TokenNameAT308(27),
167+
TokenNameARROW(126),
168+
TokenNameCOLON_COLON(8),
169+
TokenNameBeginLambda(75),
170+
TokenNameBeginIntersectionCast(67),
171+
TokenNameBeginTypeArguments(87),
172+
TokenNameElidedSemicolonAndRightBrace(88),
173+
TokenNameAT308(24),
174174
TokenNameAT308DOTDOTDOT(135),
175-
TokenNameCaseArrow(74),
175+
TokenNameCaseArrow(89),
176176
TokenNameRestrictedIdentifierYield(90),
177-
TokenNameRestrictedIdentifierrecord(76),
178-
TokenNameRestrictedIdentifiersealed(42),
177+
TokenNameRestrictedIdentifierrecord(72),
178+
TokenNameRestrictedIdentifiersealed(40),
179179
TokenNameRestrictedIdentifierpermits(129),
180180
TokenNameBeginCasePattern(130),
181181
TokenNameRestrictedIdentifierWhen(131),
182-
TokenNameUNDERSCORE(34),
183-
TokenNameEOF(39),
182+
TokenNameUNDERSCORE(66),
183+
TokenNameEOF(63),
184184
TokenNameERROR(138);
185185

186186
// END_AUTOGENERATED_REGION
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)