Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0005495OCamlCamlp4public2012-01-27 20:582012-05-17 22:24
ReporterHendrik Tews 
Assigned Todim 
PrioritynormalSeveritymajorReproducibilityalways
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version3.12.1 
Target VersionFixed in Version3.12.1+dev 
Summary0005495: camlp4o dies on infix definition (or)
DescriptionCamlp4 apparently has problems parsing infix definition that are keywords.
It dies on

  let ( or ) l1 l2 = []

or

  external (or) : bool -> bool -> bool = "%sequor"

with parse errors.

Note that the external line appears in pervasives.ml[i], which
means that camlp4o cannot parse pervasives.ml[i].
TagsNo tags attached.
Attached Files

- Relationships
has duplicate 0005617closed defining infix "or" 

-  Notes
(0006836)
gasche (developer)
2012-01-27 21:12

I thought that the specification allowed uses of infix-keywords, but not their redefinition, and that the current behavior was a non-specified implementation choice. I was wrong: the grammar in the manual allows those special cases as part of the "infix-op" syntactic class, which can be used in a let-definition.

  http://caml.inria.fr/pub/docs/manual-ocaml/manual011.html [^]
(0006933)
dim (developer)
2012-02-17 13:52

"or" was missing to the list of infix keywords (transformed to lidents by a token filter). I added it.

Commits 12161 and 12162.

- Issue History
Date Modified Username Field Change
2012-01-27 20:58 Hendrik Tews New Issue
2012-01-27 21:12 gasche Note Added: 0006836
2012-01-27 21:12 gasche Status new => confirmed
2012-02-17 13:52 dim Note Added: 0006933
2012-02-17 13:53 dim Assigned To => dim
2012-02-17 13:53 dim Status confirmed => resolved
2012-02-17 13:53 dim Resolution open => fixed
2012-02-17 13:53 dim Fixed in Version => 3.12.1+dev
2012-05-17 22:24 gasche Relationship added has duplicate 0005617


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker