Skip to content

Commit c8f4cbb

Browse files
committed
classdec syntax added in stmt-syntax
1 parent 1a0d00f commit c8f4cbb

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed

src/common/core-sorts.k

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -224,16 +224,16 @@ syntax LocMetadata ::= "LocalLocMetadata" [latex(\terminal{Local})]
224224

225225
//todo: why does this pure syntax definition affect krun?
226226
//PackageName, AmbName and PackageorTypeName syntax doesn't cause problems
227-
syntax PackageName ::= List{Id,"."} [seqstrict, klabel('PackageName)]
227+
// syntax PackageName ::= List{Id,"."} [seqstrict, klabel('PackageName)]
228228
// syntax ExprName::= Id [strict, klabel('ExprName)]
229229
// |AmbName "." Id [strict, klabel('ExprName)]
230230
//breaks if any other syntax is added
231231
// syntax TypeName ::= Id [strict, klabel('TypeName)]
232232
// |PackageOrTypeName "." Id [strict, klabel('TypeName)]
233-
syntax AmbName ::= Id [strict, klabel('AmbName)]
234-
|AmbName "." Id [strict, klabel('AmbName)]
233+
// syntax AmbName ::= Id [strict, klabel('AmbName)]
234+
// |AmbName "." Id [strict, klabel('AmbName)]
235235
// syntax MethodName ::= Id [strict,klabel('MethodName)]
236236
// |AmbName "." Id [strict,klabel('MethodName)]
237-
syntax PackageOrTypeName ::= Id [strict,klabel('PackageOrTypeName)]
238-
|PackageOrTypeName "." Id [strict,klabel('PackageOrTypeName)]
237+
// syntax PackageOrTypeName ::= Id [strict,klabel('PackageOrTypeName)]
238+
// |PackageOrTypeName "." Id [strict,klabel('PackageOrTypeName)]
239239
endmodule

src/common/stmt-syntax.k

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,8 @@ syntax SynchronizedStmt ::= "synchronized" "(" Exp ")" Block [strict(1),klabel('
6363
//todo: replace Exp with StmtExp when all StmtExp are defined
6464
syntax ExprStmt ::= Exp ";" [strict, klabel('ExprStm)]
6565

66+
syntax ClassBody ::= "{" KListWrap "}" [klabel('ClassBody)]
67+
syntax ClassDecHead ::= KListWrap "class" Id K K K [klabel('ClassDecHead)]
68+
syntax ClassDec ::= ClassDecHead ClassBody [klabel('ClassDec)]
6669
endmodule
6770

src/exec/new-instance.k

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ The last two terms bring computation to the state required to continue execution
147147
*/
148148
rule [qualified-new-instance]:
149149
<k>
150-
Qual:KResult . new Class:ClassType( Args:TypedVals )
150+
(Qual:KResult . new Class:ClassType( Args:TypedVals ))
151151
=> staticInit(Class)
152152
~> create(Class)
153153
~> setEncloser(typedLookup(L), Class, Qual)

0 commit comments

Comments
 (0)