diff options
author | Xavier Leroy <xavier.leroy@inria.fr> | 1999-05-15 15:07:12 +0000 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@inria.fr> | 1999-05-15 15:07:12 +0000 |
commit | fa8f7a7f3e23a3fe2e4b7c8ff3979e7d37bfd95c (patch) | |
tree | 415a5be34cefc324e3c6b86c268c13550a011262 | |
parent | 0370b63cf71f29b690dcefbf97a9ad5304b60c01 (diff) |
Ajout d'un volatile pour contourner un probleme de cc / Digital Unix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2364 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rw-r--r-- | byterun/interp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/byterun/interp.c b/byterun/interp.c index 82c3510a8..486d128b4 100644 --- a/byterun/interp.c +++ b/byterun/interp.c @@ -170,7 +170,9 @@ value interprete(code_t prog, asize_t prog_size) long extra_args; struct longjmp_buffer * initial_external_raise; int initial_sp_offset; - struct caml__roots_block *initial_local_roots; + /* volatile prevents collapsing initial_local_roots with another + local variable, like Digital Unix 4.0 C compiler does (wrongly) */ + struct caml__roots_block * volatile initial_local_roots; struct longjmp_buffer raise_buf; value * modify_dest, modify_newval; #ifndef THREADED_CODE |