File: RecordMissingField.v

package info (click to toggle)
coq 8.20.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 44,116 kB
  • sloc: ml: 234,160; sh: 4,301; python: 3,270; ansic: 2,644; makefile: 882; lisp: 172; javascript: 63; xml: 24; sed: 2
file content (12 lines) | stat: -rw-r--r-- 470 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
(** Check for error message when missing a record field. Error message
should contain missing field, and the inferred type of the record **)

Record point2d := mkPoint { x2p: nat; y2p: nat }.

Fail Definition increment_x (p: point2d) : point2d :=
  {| x2p := x2p p + 1; |}.

(* Here there is also an unresolved implicit, which should give an
   understadable error as well *)
Fail Definition increment_x (p: point2d) : point2d :=
  {| x2p := x2p p + (fun n => _) 1; |}.