[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Neil Conway <neilc@s...> |
| Subject: | [Caml-list] alloc_final and local value variables |
In Chapter 12 of the O'Reilly book on Ocaml, section "Creating and modifying
Objective CAML values from C", this example code is given for wrapping a
heap-allocated chunk of memory in an Ocaml value:
value create (value s)
{
value block ;
block = alloc_final (2, finalize_it,Int_val(s)*sizeof(IntTab),100000) ;
Field(block,1) = (value) alloc_it(Int_val(s)) ;
return block ;
}
This code uses a "value" local, but doesn't declare it with one of the
CAMLlocalN variables, as the Ocaml Manual says is necessary (Ocaml Manual,
"Interfacing C with Objective Caml", Section 18.5.1, Rule 2). Is this code
above correct?
Thanks in advance,
Neil
P.S. I'm aware that custom blocks are now available, but alloc_final does
everything I need...
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners