aboutsummaryrefslogtreecommitdiff
path: root/test-suite
diff options
context:
space:
mode:
authorEnrico Tassi2019-06-25 21:29:23 +0200
committerEnrico Tassi2019-06-25 21:29:23 +0200
commitb77084ebafe8ed2a8a4002b574078f592274a89c (patch)
tree0ef48e2c5e135bc209ffa036454dfe3c760d2046 /test-suite
parent7dfcb0f7c817e66280ab37b6c653b5596a16c249 (diff)
parente5c788f9efce9a9dd11910cd53c4a99451c48d8a (diff)
Merge PR #10344: Allow to pass Ltac2 values to Ltac1 quotations
Ack-by: Zimmi48 Reviewed-by: gares
Diffstat (limited to 'test-suite')
-rw-r--r--test-suite/ltac2/compat.v13
1 files changed, 13 insertions, 0 deletions
diff --git a/test-suite/ltac2/compat.v b/test-suite/ltac2/compat.v
index 489fa638e4..9c11d19c27 100644
--- a/test-suite/ltac2/compat.v
+++ b/test-suite/ltac2/compat.v
@@ -27,6 +27,19 @@ Fail Ltac2 bar nay := ltac1:(discriminate nay).
Fail Ltac2 pose1 (v : constr) :=
ltac1:(pose $v).
+(** Variables explicitly crossing the boundary must satisfy typing properties *)
+Goal True.
+Proof.
+(* Wrong type *)
+Fail ltac1:(x |- idtac) 0.
+(* OK, and runtime has access to variable *)
+ltac1:(x |- idtac x) (Ltac1.of_constr constr:(Type)).
+
+(* Same for ltac1val *)
+Fail Ltac1.run (ltac1val:(x |- idtac) 0).
+Ltac1.run (ltac1val:(x |- idtac x) (Ltac1.of_constr constr:(Type))).
+Abort.
+
(** Test calls to Ltac2 from Ltac1 *)
Set Default Proof Mode "Classic".