aboutsummaryrefslogtreecommitdiffhomepage
path: root/tactics
diff options
context:
space:
mode:
authorGravatar Siddharth Bhat <siddu.druid@gmail.com>2018-06-27 22:03:25 +0200
committerGravatar Siddharth Bhat <siddu.druid@gmail.com>2018-07-17 13:14:44 +0200
commit1300da19d13f7e46cf3a4b0b3396604ffc44a6d5 (patch)
tree577f1c1b6dbc64382a7623d77bc6e6756ed45a96 /tactics
parentb799252775563b4f46f5ea39cbfc469759e7a296 (diff)
Change QuestionMark for better record field missing error message.
While we were adding a new field into `QuestionMark`, we decided to go ahead and refactor the constructor to hold an actual record. This record now holds the name, obligations, and whether the evar represents a missing record field. This is used to provide better error messages on missing record fields.
Diffstat (limited to 'tactics')
-rw-r--r--tactics/hipattern.ml6
1 files changed, 5 insertions, 1 deletions
diff --git a/tactics/hipattern.ml b/tactics/hipattern.ml
index f9c4bed35..9d2288346 100644
--- a/tactics/hipattern.ml
+++ b/tactics/hipattern.ml
@@ -263,7 +263,11 @@ open Evar_kinds
let mkPattern c = snd (Patternops.pattern_of_glob_constr c)
let mkGApp f args = DAst.make @@ GApp (f, args)
let mkGHole = DAst.make @@
- GHole (QuestionMark (Define false,Anonymous), Namegen.IntroAnonymous, None)
+ GHole (QuestionMark {
+ Evar_kinds.qm_obligation=Define false;
+ Evar_kinds.qm_name=Anonymous;
+ Evar_kinds.qm_record_field=None
+ }, Namegen.IntroAnonymous, None)
let mkGProd id c1 c2 = DAst.make @@
GProd (Name (Id.of_string id), Explicit, c1, c2)
let mkGArrow c1 c2 = DAst.make @@