Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001487OCamlOCaml generalpublic2002-11-30 17:172003-07-16 16:38
Reporteradministrator 
Assigned To 
PrioritynormalSeverityfeatureReproducibilityalways
StatusacknowledgedResolutionopen 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0001487: camldebug + install_printer
Descriptionavec ocaml 3.06 cygwin+
camldebug sous emacs(21.1.1) +
des printers speciaux pour mes types,
j'ai un probleme.

Je declare des types dans un fichier f1.ml, je les utilise dans des
fonctions, certaines de f1.ml, d'autres de f2.ml. Je cree et installe les
printers correspondants dans camldebug. Ils fonctionnent tres bien dans le
fichier ou ne sont pas declares les types, mais ne fonctionnent pas dans
f1.ml.

Exemple:

f1.ml: ------------------------------

type foo = { foo_content: string; }

let bar foo =
  foo.foo_content^foo.foo_content

f2.ml: ------------------------------
let gnat foo =
  String.uppercase foo.F1.foo_content

let _ =
  let foo = {F1.foo_content="foo"} in
  print_string (gnat foo);
  print_newline ();
  print_string (F1.bar foo);
  print_newline ()

printer.ml: -------------------------
open Format
let foo fmt foo = print_string ("<<"^foo.F1.foo_content^">>");

$ ocamlc -g -o test f1.ml f2.ml
$ ocamlc -c printer.ml

M-x camldebug test
(ocd) load_printer "printer.cmo"
(ocd) install_printer Printer.foo

si je fais "print foo" dans F2.gnat, j'obtiens bien:
(ocd) print foo
foo : F1.foo = <<foo>>

Par contre, dans F1.bar, j'obtiens:
(ocd) print foo
foo : foo = {foo_content = "foo"}


TagsNo tags attached.
Attached Files

- Relationships

-  Notes
There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2005-11-18 10:13 administrator New Issue


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker