File: pr6293_bad.compilers.reference

package info (click to toggle)
ocaml 5.3.0-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 43,124 kB
  • sloc: ml: 355,439; ansic: 51,636; sh: 25,098; asm: 5,413; makefile: 3,673; python: 919; javascript: 273; awk: 253; perl: 59; fortran: 21; cs: 9
file content (12 lines) | stat: -rw-r--r-- 624 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
File "pr6293_bad.ml", line 10, characters 18-37:
10 | let f (module M : S with type t = int) = { M.a = 0 };;
                       ^^^^^^^^^^^^^^^^^^^
Error: In this "with" constraint, the new definition of "t"
       does not match its original definition in the constrained signature:
       Type declarations do not match:
         type t = int
       is not included in
         type t = { a : int; b : int; }
       The first is abstract, but the second is a record.
       File "pr6293_bad.ml", line 9, characters 20-50: Expected declaration
       File "pr6293_bad.ml", line 10, characters 18-37: Actual declaration