Skip to content

Commit 42fe74d

Browse files
authored
Merge pull request #816 from LPCIC/fix-luno
Fix deriv.paramX non-uniform parameter bug
2 parents fa88643 + 5472285 commit 42fe74d

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

apps/derive/elpi/param2.elpi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,9 @@ param-match (fun N T B) P1 PRM :-
119119

120120
pred param-indt i:inductive, i:bool, i:int, i:int, i:term, i:list term, i:list term,
121121
i:inductive, o:bool, o:int, o:int, o:term, o:list term.
122-
param-indt GR IsInd Lno _ Ty Knames Ktypes
122+
param-indt GR IsInd Lno Luno Ty Knames Ktypes
123123
NameR IsInd LnoR LunoR TyR KtypesR :- do! [
124-
LnoR is 3 * Lno, LunoR = LnoR,
124+
LnoR is 3 * Lno, LunoR is 3 * Luno,
125125
param (global (indt GR)) (global (indt GR)) (global (indt NameR)) => do! [
126126
param Ty _ TyR,
127127
map2 Knames Ktypes param-indc KtypesR

apps/derive/tests/test_param1.v

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,4 +186,8 @@ Fixpoint nat_eq (n m : nat) {struct n} : bool :=
186186

187187
Elpi derive.param1 nat_eq.
188188

189+
Inductive Acc {A : Type} (R : A -> A -> Prop) | (x : A) : Prop :=
190+
Acc_intro : (forall y : A, R y x -> Acc y) -> Acc x.
191+
Elpi derive.param1 Acc.
192+
189193
End OtherTests.

apps/derive/tests/test_param2.v

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,3 +101,7 @@ Fail Elpi derive.param2 fb.
101101
Definition fa_R := O_R.
102102
Elpi derive.param2.register fa fa_R.
103103
Elpi derive.param2 fb.
104+
105+
Inductive Acc {A : Type} (R : A -> A -> Prop) | (x : A) : Prop :=
106+
Acc_intro : (forall y : A, R y x -> Acc y) -> Acc x.
107+
Elpi derive.param2 Acc.

0 commit comments

Comments
 (0)