Skip to content

Commit 459629d

Browse files
committed
Fixes.
1 parent d547a58 commit 459629d

File tree

14 files changed

+71
-81
lines changed

14 files changed

+71
-81
lines changed

semantics/c/language/common/conversion.k

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -358,8 +358,6 @@ module C-CONVERSION
358358
| implPointerToInt()
359359
rule lintCastingAwayQuals() => .K
360360
requires notBool hasLint
361-
rule implPointerToInt() => .K
362-
requires notBool hasLint
363361

364362
syntax UType ::= castTypes(UType, UType) [function]
365363
rule castTypes(ut(_, T'::SimpleUType), ut(Mods::Set, _)) => ut(Mods, T')

semantics/c/language/translation/typing/expr.k

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,6 @@ module C-TYPING-EXPR
4242
context typeof((HOLE:KItem => typeof(HOLE)) % _) [result(Type)]
4343
context typeof((HOLE:KItem => typeof(HOLE)) + _) [result(Type)]
4444
context typeof((HOLE:KItem => typeof(HOLE)) - _) [result(Type)]
45-
context typeof((HOLE:KItem => typeof(HOLE)) == _) [result(Type)]
46-
context typeof((HOLE:KItem => typeof(HOLE)) != _) [result(Type)]
4745
context typeof((HOLE:KItem => typeof(HOLE)) & _) [result(Type)]
4846
context typeof((HOLE:KItem => typeof(HOLE)) ^ _) [result(Type)]
4947
context typeof((HOLE:KItem => typeof(HOLE)) | _) [result(Type)]
@@ -70,13 +68,9 @@ module C-TYPING-EXPR
7068
context typeof(_ % (HOLE:KItem => typeof(HOLE))) [result(Type)]
7169
context typeof(_ + (HOLE:KItem => typeof(HOLE))) [result(Type)]
7270
context typeof(_ - (HOLE:KItem => typeof(HOLE))) [result(Type)]
73-
context typeof(_ == (HOLE:KItem => typeof(HOLE))) [result(Type)]
74-
context typeof(_ != (HOLE:KItem => typeof(HOLE))) [result(Type)]
7571
context typeof(_ & (HOLE:KItem => typeof(HOLE))) [result(Type)]
7672
context typeof(_ ^ (HOLE:KItem => typeof(HOLE))) [result(Type)]
7773
context typeof(_ | (HOLE:KItem => typeof(HOLE))) [result(Type)]
78-
context typeof(_ && (HOLE:KItem => typeof(HOLE))) [result(Type)]
79-
context typeof(_ || (HOLE:KItem => typeof(HOLE))) [result(Type)]
8074

8175
// primary expressions
8276
rule <k> typeof(X:CId => T:Type) ...</k>

semantics/c/library/stdio.k

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1659,7 +1659,7 @@ module LIBC-STDIO
16591659

16601660
syntax List ::= tail(List) [function]
16611661
rule tail(ListItem(_) L::List) => L
1662-
rule tail(_) => .List [owise]
1662+
rule tail(.List) => .List
16631663

16641664
syntax String ::= fst(ParseStrResult) [function, klabel(fstParseStr)]
16651665
rule fst(parseStrResult(S::String, _)) => S

semantics/cpp/language/common/class.k

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,6 @@ module CPP-CLASS-BASIC-SORTS
1010

1111
syntax LocalQualifier
1212

13-
syntax LocalClass
14-
15-
syntax InnerClass
16-
1713
syntax ClassSpecifier
1814

1915
endmodule // CPP-CLASS-BASIC-SORTS
@@ -39,15 +35,20 @@ module CPP-CLASS-BASIC-SYNTAX
3935

4036
syntax Class ::= ClassQualifier "::" ClassSpecifier [klabel(classId)]
4137

42-
syntax LocalClass ::= LocalQualifier "::" ClassSpecifier [klabel(classId)]
38+
// TODO(chathhorn): the stuff below causes parsing ambiguities with the Class production above. Need to resolve in
39+
// a better way.
40+
syntax InnerClass ::= Class // TODO(chathhorn): added as an interim fix.
41+
syntax LocalInnerClass ::= Class // TODO(chathhorn): added as an interim fix.
42+
43+
// syntax LocalClass ::= LocalQualifier "::" ClassSpecifier [klabel(classId)]
4344

44-
syntax Class ::= LocalClass
45-
syntax Class ::= InnerClass
45+
// syntax Class ::= LocalClass
46+
// syntax Class ::= InnerClass
4647

47-
syntax InnerClass ::= Class "::" ClassSpecifier [klabel(classId)]
48+
// syntax InnerClass ::= Class "::" ClassSpecifier [klabel(classId)]
4849

49-
syntax LocalInnerClass ::= LocalClass
50-
| LocalInnerClass "::" ClassSpecifier [klabel(classId)]
50+
// syntax LocalInnerClass ::= LocalClass
51+
// | LocalInnerClass "::" ClassSpecifier [klabel(classId)]
5152

5253
syntax ClassSpecifier ::= Class(Tag, CId, TemplateArgs) [klabel(classSpecifier)]
5354

semantics/cpp/language/common/dynamic.k

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@ module CPP-NAMESPACE-SORTS
88

99
syntax NamespaceSpecifier
1010

11-
syntax UnnamedNamespace
12-
1311
endmodule // CPP-NAMESPACE-SORTS
1412

1513
module CPP-NAMESPACE-SYNTAX
@@ -20,7 +18,6 @@ module CPP-NAMESPACE-SYNTAX
2018

2119
syntax Namespace ::= Namespace "::" NamespaceSpecifier
2220
| NoNamespace() // signifies a declaration at block scope
23-
| UnnamedNamespace
2421

2522
syntax NamespaceSpecifier ::= Namespace(CId)
2623

@@ -586,7 +583,7 @@ module CPP-DYNAMIC-OTHER-SYNTAX
586583

587584
syntax DefaultArguments ::= DefaultArgumentsResult
588585

589-
syntax DefaultArgumentsResult ::= defArgs(vals: StrictListResult, types: StrictListResult, cats: StrictListResult)
586+
syntax DefaultArgumentsResult ::= defArgsResult(vals: StrictListResult, types: StrictListResult, cats: StrictListResult)
590587

591588
endmodule // CPP-DYNAMIC-OTHER-SYNTAX
592589

semantics/cpp/language/common/syntax.k

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -193,19 +193,19 @@ module CPP-SYNTAX
193193
syntax Expr ::= ConvertType(CPPType, Expr)
194194
| ExprLoc
195195

196-
syntax ExprLoc ::= ExprLoc(CabsLoc, Expr)
196+
syntax ExprLoc ::= ExprLoc(CabsLoc, Expr) [symbol]
197197

198-
syntax Init ::= ExprLoc(CabsLoc, Init)
198+
syntax Init ::= InitLoc(CabsLoc, Init)
199199

200-
syntax BraceInit ::= ExprLoc(CabsLoc, BraceInit)
200+
syntax BraceInit ::= BraceInitLoc(CabsLoc, BraceInit)
201201

202202
syntax Block ::= BlockStmt(List)
203203
| BlockStmt(Int, List)
204204

205205
syntax Decl
206206

207-
syntax Stmt ::= LabelStmt(CId, List)
208-
| GotoStmt(CId)
207+
syntax Stmt ::= LabelStmt(CId, List) [symbol]
208+
| GotoStmt(CId) [symbol]
209209
| ExpressionStmt(Expr) [strict(c)]
210210
| PRValExpressionStmt(Expr) [strict(c)]
211211
| BreakStmt()

semantics/cpp/language/common/typing.k

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -78,35 +78,35 @@ module CPP-TYPING-SYNTAX
7878
| CPPSimpleDependentType
7979
| CPPSimpleAutoType
8080

81-
syntax CPPSimpleSignedType ::= bitfieldType(CPPSimpleSignedType, Int) [klabel(bitfieldTypeCpp)]
81+
// syntax CPPSimpleSignedType ::= bitfieldType(CPPSimpleSignedType, Int) [klabel(bitfieldTypeCpp)]
8282

83-
syntax CPPSimpleUnsignedType ::= bitfieldType(CPPSimpleUnsignedType, Int) [klabel(bitfieldTypeCpp)]
83+
// syntax CPPSimpleUnsignedType ::= bitfieldType(CPPSimpleUnsignedType, Int) [klabel(bitfieldTypeCpp)]
8484

85-
syntax CPPSimpleSignedCharType ::= bitfieldType(CPPSimpleSignedCharType, Int) [klabel(bitfieldTypeCpp)]
85+
// syntax CPPSimpleSignedCharType ::= bitfieldType(CPPSimpleSignedCharType, Int) [klabel(bitfieldTypeCpp)]
8686

87-
syntax CPPSimpleUnsignedCharType ::= bitfieldType(CPPSimpleUnsignedCharType, Int) [klabel(bitfieldTypeCpp)]
87+
// syntax CPPSimpleUnsignedCharType ::= bitfieldType(CPPSimpleUnsignedCharType, Int) [klabel(bitfieldTypeCpp)]
8888

89-
syntax CPPSimpleBoolType ::= bitfieldType(CPPSimpleBoolType, Int) [klabel(bitfieldTypeCpp)]
89+
// syntax CPPSimpleBoolType ::= bitfieldType(CPPSimpleBoolType, Int) [klabel(bitfieldTypeCpp)]
9090

91-
syntax CPPSimpleWideCharType ::= bitfieldType(CPPSimpleWideCharType, Int) [klabel(bitfieldTypeCpp)]
91+
// syntax CPPSimpleWideCharType ::= bitfieldType(CPPSimpleWideCharType, Int) [klabel(bitfieldTypeCpp)]
9292

93-
syntax CPPSimpleScopedEnumType ::= bitfieldType(CPPSimpleScopedEnumType, Int) [klabel(bitfieldTypeCpp)]
93+
// syntax CPPSimpleScopedEnumType ::= bitfieldType(CPPSimpleScopedEnumType, Int) [klabel(bitfieldTypeCpp)]
9494

95-
syntax CPPSimpleUnscopedEnumType ::= bitfieldType(CPPSimpleUnscopedEnumType, Int) [klabel(bitfieldTypeCpp)]
95+
// syntax CPPSimpleUnscopedEnumType ::= bitfieldType(CPPSimpleUnscopedEnumType, Int) [klabel(bitfieldTypeCpp)]
9696

9797
syntax CPPSimpleBitfieldType ::= bitfieldType(CPPSimpleType, Int) [klabel(bitfieldTypeCpp)]
9898

99-
syntax CPPSimpleSignedType ::= CPPSimpleBottomType
100-
syntax CPPSimpleUnsignedType ::= CPPSimpleBottomType
101-
syntax CPPSimpleSignedCharType ::= CPPSimpleBottomType
102-
syntax CPPSimpleUnsignedCharType ::= CPPSimpleBottomType
103-
syntax CPPSimpleBoolType ::= CPPSimpleBottomType
104-
syntax CPPSimpleWideCharType ::= CPPSimpleBottomType
105-
syntax CPPSimpleScopedEnumType ::= CPPSimpleBottomType
106-
syntax CPPSimpleUnscopedEnumType ::= CPPSimpleBottomType
107-
syntax CPPSimpleBitfieldType ::= CPPSimpleBottomType
108-
109-
syntax CPPSimpleBottomType ::= bitfieldType(CPPSimpleBottomType, Int) [klabel(bitfieldTypeCpp)]
99+
// syntax CPPSimpleSignedType ::= CPPSimpleBottomType
100+
// syntax CPPSimpleUnsignedType ::= CPPSimpleBottomType
101+
// syntax CPPSimpleSignedCharType ::= CPPSimpleBottomType
102+
// syntax CPPSimpleUnsignedCharType ::= CPPSimpleBottomType
103+
// syntax CPPSimpleBoolType ::= CPPSimpleBottomType
104+
// syntax CPPSimpleWideCharType ::= CPPSimpleBottomType
105+
// syntax CPPSimpleScopedEnumType ::= CPPSimpleBottomType
106+
// syntax CPPSimpleUnscopedEnumType ::= CPPSimpleBottomType
107+
// syntax CPPSimpleBitfieldType ::= CPPSimpleBottomType
108+
109+
// syntax CPPSimpleBottomType ::= bitfieldType(CPPSimpleBottomType, Int) [klabel(bitfieldTypeCpp)]
110110

111111
syntax CPPSimpleSignedType ::= CPPSimpleSignedCharType | "short" | "int" | "long" | "long-long" | "oversized"
112112

semantics/cpp/language/translation/decl/declarator.k

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ module CPP-TRANSLATION-DECL-DECLARATOR-SYNTAX
88
imports CPP-SORTS
99
imports CPP-TYPING-SORTS
1010

11-
syntax Decl ::= DeclaratorAndSpecifiers(Declarator, Set)
11+
syntax Decl ::= DeclaratorAndSpecifiers(Decl, Set)
1212
| declareObject(NNSVal, NNSVal, CId, CId, CPPType, Init, DeclarationType, Linkage, Duration, Set)
1313
| defineObject(NNSVal, CId, CId, CPPType, Init, DeclarationType, Set)
1414
| initializeObject(NNSVal, CId, CPPType, init: KItem, DeclarationType) [strict(c; 4)]
@@ -53,18 +53,18 @@ module CPP-TRANSLATION-DECL-DECLARATOR
5353
imports CPP-TRANSLATION-CONSTANT-SYNTAX
5454
imports CPP-TRANSLATION-DECL-CLASS-DESTRUCTOR
5555

56-
rule FunctionDecl(N::NNSVal, X::CId, Mangled::CId, T::CPPType, Params::List)
56+
rule FunctionDecl(N::NNS, X::CId, Mangled::CId, T::AType, Params::List)
5757
=> NormalizedDecl(N, X, Mangled, T, NoInit(), Function(Params)) [anywhere]
5858

59-
rule VarDecl(N::NNSVal, X::CId, Mangled::CId, T::CPPType, Init::Init, IsDirect:Bool)
59+
rule VarDecl(N::NNS, X::CId, Mangled::CId, T::AType, Init::Init, IsDirect:Bool)
6060
=> NormalizedDecl(N, X, Mangled, T, Init, Var(#if IsDirect #then DirectInit() #else CopyInit() #fi)) [anywhere]
6161

62-
rule FunctionDefinition(N::NNSVal, X::CId, Mangled::CId, T::CPPType, Params::List, Body::Stmt)
62+
rule FunctionDefinition(N::NNS, X::CId, Mangled::CId, T::AType, Params::List, Body::Stmt)
6363
=> NormalizedDecl(N, X, Mangled, T, Body, Function(Params)) [anywhere]
6464

6565
rule DeclStmt(L::List) => listToK(L)
6666

67-
rule Specifier(S::Specifier, D:Declarator) => DeclaratorAndSpecifiers(D, SetItem(S))
67+
rule Specifier(S::Specifier, D::Decl) => DeclaratorAndSpecifiers(D, SetItem(S))
6868
requires S =/=K Auto() [anywhere]
6969

7070
// Auto is a type specifier in C++ so it is handled elsewhere by AutoType
@@ -151,8 +151,6 @@ module CPP-TRANSLATION-DECL-DECLARATOR
151151
rule getClassLinkage(_:LocalQualifier :: _) => NoLinkage
152152

153153
// @ref n4296 3.5:4
154-
rule getNamespaceLinkage(N:UnnamedNamespace) => InternalLinkage
155-
156154
rule getNamespaceLinkage(GlobalNamespace()) => ExternalLinkage
157155

158156
rule getNamespaceLinkage(Parent::Namespace :: _) => getNamespaceLinkage(Parent) [owise]
@@ -418,7 +416,7 @@ module CPP-TRANSLATION-DECL-DECLARATOR
418416

419417
syntax CPPType ::= completeDeclaration(CPPType, Init) [function]
420418

421-
rule completeDeclaration(T::CPPType, (ExprLoc(_, I::Init) => I))
419+
rule completeDeclaration(T::CPPType, (InitLoc(_, I::Init) => I))
422420

423421
// @ref n4296 8.5.4:3.2 (char x[] = {"foo"})
424422
rule completeDeclaration(t(Q::Quals, Mods::Set, incompleteArrayType(t(Q'::Quals, Mods'::Set, T:CPPSimpleCharType))), BraceInit(ListItem(StringLiteral(Narrow::CharKind, S::String)))) => t(Q, Mods, arrayType(t(Q', Mods', T), lengthString(S) +Int 1))
@@ -790,9 +788,12 @@ module CPP-TRANSLATION-DECL-DECLARATOR
790788
rule stripInitHolds(V::Val) => V
791789
requires isEvalVal(V)
792790

793-
context defArgs(_, (HOLE:StrictList => types(HOLE)), _)
791+
context defArgs(_, (HOLE::StrictList => types(HOLE)), _)
792+
793+
context defArgs(_, _, (HOLE::StrictList => cats(HOLE)))
794794

795-
context defArgs(_, _, (HOLE:StrictList => cats(HOLE)))
795+
rule defArgs(A:StrictListResult, B:StrictListResult, C:StrictListResult)
796+
=> defArgsResult(A, B, C)
796797

797798
syntax DefaultArguments ::= computeDefaultArgs(CPPType, DeclarationType)
798799

@@ -841,7 +842,7 @@ module CPP-TRANSLATION-DECL-DECLARATOR
841842
rule #makeFunctionDeclarationType(_, .List) => .List
842843

843844
rule emptyDefaultArguments(t(... st: functionType(...)) #as T::CPPType)
844-
=> #emptyDefaultArguments(#if hasImplicitParameter(T) #then size(getRealParams(T)) -Int 1 #else size(getRealParams(T)) #fi, defArgs(krlist(.List), krlist(.List), krlist(.List)))
845+
=> #emptyDefaultArguments(#if hasImplicitParameter(T) #then size(getRealParams(T)) -Int 1 #else size(getRealParams(T)) #fi, defArgsResult(krlist(.List), krlist(.List), krlist(.List)))
845846

846847
rule emptyDefaultArguments(_) => NoDefArgs() [owise]
847848

@@ -850,7 +851,7 @@ module CPP-TRANSLATION-DECL-DECLARATOR
850851
rule #emptyDefaultArguments(0, DA::DefaultArgumentsResult) => DA
851852

852853
rule #emptyDefaultArguments(N::Int => N -Int 1,
853-
defArgs(krlist(_::List (.List => ListItem(NoArg()))),
854+
defArgsResult(krlist(_::List (.List => ListItem(NoArg()))),
854855
krlist(_::List (.List => ListItem(NoInitType()))),
855856
krlist(_::List (.List => ListItem(NoInitCat()))))) [owise]
856857
endmodule

semantics/cpp/language/translation/decl/initializer.k

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ module CPP-TRANSLATION-DECL-INITIALIZER
102102

103103
syntax KItem ::= #figureInitHeatBase(destT: CPPType, type: InitType, init: Init, srcT: K, srcCat: K, ConstructorType, Duration)
104104

105-
rule <k> #figureInit(... init: ExprLoc(L::CabsLoc, I::Init) => I) ...</k>
105+
rule <k> #figureInit(... init: InitLoc(L::CabsLoc, I::Init) => I) ...</k>
106106
<curr-tr-program-loc> _ => L </curr-tr-program-loc>
107107

108108
// @ref n4296 8.5:6.1
@@ -416,7 +416,7 @@ module CPP-TRANSLATION-DECL-INITIALIZER
416416

417417
rule #evalBraceOrEqualInitializer(_, _, NoInit()) => BraceInit(.List)
418418

419-
rule #evalBraceOrEqualInitializer(_, _, ExprLoc(L::CabsLoc, I::Init) => I)
419+
rule #evalBraceOrEqualInitializer(_, _, InitLoc(L::CabsLoc, I::Init) => I)
420420

421421
rule #evalBraceOrEqualInitializer(C::Class, Base::Expr, BraceInit(L::List))
422422
=> BraceInit(#evalBraceOrEqualInitializers(C, Base, L))

semantics/cpp/language/translation/env.k

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -99,11 +99,11 @@ module CPP-TRANSLATION-ENV
9999
<cenv> CE::Map => CE[X <- stripType(T) |-> (T, envEntry(Base, IsUsing, NoDefArgs()))] </cenv>
100100
requires notBool isCPPFunctionType(T)
101101

102-
rule getDefaultArgsVals(defArgs(... vals: krlist(Args::List))) => Args
102+
rule getDefaultArgsVals(defArgsResult(... vals: krlist(Args::List))) => Args
103103

104-
rule getDefaultArgsTypes(defArgs(... types: krlist(Types::List))) => Types
104+
rule getDefaultArgsTypes(defArgsResult(... types: krlist(Types::List))) => Types
105105

106-
rule getDefaultArgsCats(defArgs(... cats: krlist(Cats::List))) => Cats
106+
rule getDefaultArgsCats(defArgsResult(... cats: krlist(Cats::List))) => Cats
107107

108108
syntax Map ::= updateFnEnv(Map, CId, CPPType, SymBase, Bool) [function]
109109

@@ -123,38 +123,38 @@ module CPP-TRANSLATION-ENV
123123
syntax DefaultArgumentsResult ::= #updateDefaultArgs(newArgs: DefaultArgumentsResult, oldArgs: DefaultArgumentsResult) [function]
124124

125125
rule #updateDefaultArgs(NewArgs::DefaultArgumentsResult, OldArgs::DefaultArgumentsResult)
126-
=> #updateDefaultArgs(NewArgs, OldArgs, defArgs(krlist(.List), krlist(.List), krlist(.List)))
126+
=> #updateDefaultArgs(NewArgs, OldArgs, defArgsResult(krlist(.List), krlist(.List), krlist(.List)))
127127

128128
syntax DefaultArgumentsResult ::= #updateDefaultArgs(newArgs: DefaultArgumentsResult, oldArgs: DefaultArgumentsResult, resultArgs: DefaultArgumentsResult) [function, klabel(updateDefaultArgsHelper)]
129129

130130
// The next rule compensates for the clang policy to aggregate existing default args from previous declarations
131131
// Hence, we'll trust clang to check that the user does not redefine an old def. arg.
132132
rule #updateDefaultArgs(
133-
defArgs(krlist((ListItem(_) => .List) _),
133+
defArgsResult(krlist((ListItem(_) => .List) _),
134134
krlist((ListItem(_) => .List) _),
135135
krlist((ListItem(_) => .List) _)),
136-
defArgs(krlist((ListItem(I:KItem) => .List) _),
136+
defArgsResult(krlist((ListItem(I:KItem) => .List) _),
137137
krlist((ListItem(T::CPPDType) => .List) _),
138138
krlist((ListItem(C::ValueCategory) => .List) _)),
139-
defArgs(krlist(_::List (.List => ListItem(I:KItem))),
139+
defArgsResult(krlist(_::List (.List => ListItem(I:KItem))),
140140
krlist(_::List (.List => ListItem(T::CPPDType))),
141141
krlist(_::List (.List => ListItem(C::ValueCategory)))))
142142
requires I =/=K NoArg()
143143

144144
rule #updateDefaultArgs(
145-
defArgs(krlist((ListItem(I:KItem) => .List) _),
145+
defArgsResult(krlist((ListItem(I:KItem) => .List) _),
146146
krlist((ListItem(T::CPPDType) => .List) _),
147147
krlist((ListItem(C::ValueCategory) => .List) _)),
148-
defArgs(krlist((ListItem(NoArg()) => .List) _),
148+
defArgsResult(krlist((ListItem(NoArg()) => .List) _),
149149
krlist((ListItem(_) => .List) _),
150150
krlist((ListItem(_) => .List) _)),
151-
defArgs(krlist(_::List (.List => ListItem(I:KItem))),
151+
defArgsResult(krlist(_::List (.List => ListItem(I:KItem))),
152152
krlist(_::List (.List => ListItem(T::CPPDType))),
153153
krlist(_::List (.List => ListItem(C::ValueCategory)))))
154154

155155
rule #updateDefaultArgs(
156-
defArgs(krlist(.List), krlist(.List), krlist(.List)),
157-
defArgs(krlist(.List), krlist(.List), krlist(.List)),
156+
defArgsResult(krlist(.List), krlist(.List), krlist(.List)),
157+
defArgsResult(krlist(.List), krlist(.List), krlist(.List)),
158158
DA::DefaultArgumentsResult) => DA
159159

160160
rule <k> clearScope() => .K ...</k>

0 commit comments

Comments
 (0)