aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmilio Jesus Gallego Arias2018-09-03 01:07:45 +0200
committerEmilio Jesus Gallego Arias2018-09-03 01:07:45 +0200
commit4d2e117964df8e5bd7222192318b11820f92db78 (patch)
tree9b071495a2accb52e25cf9ec060875d7a41b313b
parent6f1c4ac389e595e09fdf4653847d8c3ccca0befb (diff)
parent0e7ff6359c144c5ab4d7e16334c8ddc0d3078125 (diff)
Merge PR #8286: Fixing #7867: class error message tried to print a "fun" with no binders
-rw-r--r--parsing/g_constr.mlg2
-rw-r--r--test-suite/bugs/closed/7867.v4
2 files changed, 5 insertions, 1 deletions
diff --git a/parsing/g_constr.mlg b/parsing/g_constr.mlg
index 49e1cd7ec9..7cb5af787b 100644
--- a/parsing/g_constr.mlg
+++ b/parsing/g_constr.mlg
@@ -249,7 +249,7 @@ GRAMMAR EXTEND Gram
record_field_declaration:
[ [ id = global; bl = binders; ":="; c = lconstr ->
- { (id, mkCLambdaN ~loc bl c) } ] ]
+ { (id, if bl = [] then c else mkCLambdaN ~loc bl c) } ] ]
;
binder_constr:
[ [ "forall"; bl = open_binders; ","; c = operconstr LEVEL "200" ->
diff --git a/test-suite/bugs/closed/7867.v b/test-suite/bugs/closed/7867.v
new file mode 100644
index 0000000000..d0c7902756
--- /dev/null
+++ b/test-suite/bugs/closed/7867.v
@@ -0,0 +1,4 @@
+(* Was a printer anomaly due to an internal lambda with no binders *)
+
+Class class := { foo : nat }.
+Fail Instance : class := { foo := 0 ; bar := 0 }.