Skip to content

<package-type-constraint> does not allow constraints for non-nullary abstract types #5078

Description

@vicuna

Original bug ID: 5078
Reporter: kaustuv
Assigned to: @alainfrisch
Status: resolved (set by @alainfrisch on 2012-01-18T09:42:42Z)
Resolution: suspended
Priority: normal
Severity: feature
Version: 3.12.0+beta1 or 3.12.0+rc1
Category: ~DO NOT USE (was: OCaml general)
Has duplicate: #5140
Monitored by: nlinger

Bug description

The following is rejected because package type constraints as specified in the grammar (sec. 7.14 of the manual) cannot constrain a non-nullary type.

% ocaml
Objective Caml version 3.13.0+dev0 (2010-06-07)

module type S = sig type 'a t end ;;

module type S = sig type 'a t end

let f (m : (module S with type 'a t = 'a * int)) = m ;;

       ^

Syntax error: ')' expected, the highlighted '(' might be unmatched

Is there a technical reason to limit oneself to

type =

instead of

type [] =

for ?

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions