File tree 6 files changed +9
-9
lines changed 6 files changed +9
-9
lines changed Original file line number Diff line number Diff line change 1
1
# Changelog
2
2
3
+ ## Unreleased
4
+
5
+ - ** Removed** the ` #[primitive_class] ` attribute, making it the default.
6
+
3
7
## [ 1.6.0] - 2023-09-20
4
8
5
9
Compatible with
Original file line number Diff line number Diff line change @@ -40,7 +40,6 @@ with-attributes P :-
40
40
att "local" bool,
41
41
att "fail" bool,
42
42
att "doc" string,
43
- att "primitive_class" bool,
44
43
att "primitive" bool,
45
44
att "non_forgetful_inheritance" bool,
46
45
att "hnf" bool,
Original file line number Diff line number Diff line change @@ -466,9 +466,7 @@ declare-class+structure MLwP Sort
466
466
synthesize-fields.body ClassDeclaration,
467
467
468
468
std.assert-ok! (coq.typecheck-indt-decl ClassDeclaration) "declare-class: illtyped",
469
- if (get-option "primitive_class" tt)
470
- (@primitive! => log.coq.env.add-indt ClassDeclaration ClassInd)
471
- (log.coq.env.add-indt ClassDeclaration ClassInd),
469
+ (@primitive! => log.coq.env.add-indt ClassDeclaration ClassInd),
472
470
473
471
coq.env.projections ClassInd Projs,
474
472
% TODO: put this code in a named clause
Original file line number Diff line number Diff line change @@ -583,7 +583,6 @@ HB.structure Definition StructureName params :=
583
583
- [#[short(type="shortName")]] produces the abbreviation [shortName] for [Structure.type]
584
584
- [#[short(pack="shortName")]] produces the abbreviation [shortName] for [HB.pack_for Structure.type]
585
585
- [#[primitive]] experimental attribute to make the structure a primitive record,
586
- - [#[primitive_class]] experimental attribute to make the class a primitive record,
587
586
- [#[verbose]] for a verbose output.
588
587
*)
589
588
Original file line number Diff line number Diff line change 1
1
From HB Require Import structures.
2
2
3
3
HB.mixin Record M A := { x: nat }.
4
- #[primitive_class] HB.structure Definition S := { A of M A }.
4
+ HB.structure Definition S := { A of M A }.
Original file line number Diff line number Diff line change @@ -12,7 +12,7 @@ Elpi Query lp:{{
12
12
std.assert! (coq.env.record? Ind tt) "not primitive"
13
13
}}.
14
14
15
- #[primitive, primitive_class ]
15
+ #[primitive]
16
16
HB.structure Definition A := {T of hasA T}.
17
17
18
18
Elpi Query lp:{{
@@ -33,14 +33,14 @@ HB.mixin Record HasMul T := {
33
33
mulA: associative mul;
34
34
}.
35
35
36
- #[primitive, primitive_class ]
36
+ #[primitive]
37
37
HB.structure Definition Mul := { T of HasMul T }.
38
38
39
39
#[primitive]
40
40
HB.mixin Record HasSq T of Mul T := {
41
41
sq : T -> T;
42
42
pmul : forall x y, sq (mul x y) = mul (sq x) (sq y);
43
43
}.
44
- #[primitive, primitive_class ]
44
+ #[primitive]
45
45
HB.structure Definition Sq := { T of HasSq T & Mul T }.
46
46
Check erefl : Sq.sort _ = Mul.sort _.
You can’t perform that action at this time.
0 commit comments