The following fails without an explanation of the issue
From HB Require Import structures.
Module Test.
HB.mixin Record Mixin T := {
zero: T;
}.
HB.structure Definition Struct := { T of Mixin T }.
HB.instance Definition struct_bool := Mixin.Build bool true.
Module Exports.
HB.reexport.
End Exports.
End Test.
(** Uncommenting any of these two prevents the issue *)
(* Export Test.Exports. *)
(* HB.export Test. *)
Fail HB.instance Definition struct_nat := Test.Mixin.Build nat 0.
(*
The elpi tactic/command HB.instance failed without giving a specific error message.
Please report this inconvenience to the authors of the program.
*)
I don't know whether one should be able to instantiate a mixin this way (i.e. using its fully qualified name), or if the mixin must always be exported first.
If it's the latter, maybe the error message should say so.
The following fails without an explanation of the issue
I don't know whether one should be able to instantiate a mixin this way (i.e. using its fully qualified name), or if the mixin must always be exported first. If it's the latter, maybe the error message should say so.