Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: nickgrey@softhome.net
To: caml-list@inria.fr
Subject: [Caml-list] Different behaviour in native and bytecode compilations (Compiler Bug?)
Date: Tue, 02 Mar 2004 08:08:27 -0700	[thread overview]
Message-ID: <courier.4044A36B.000010DD@softhome.net> (raw)

Hi Camlers. 

I have a program which uses the ncurses library.  It runs as expected when 
compiled natively, and when bytecode compiled in custom runtime mode.  But 
when compiled with ncurses bindings as a shared library, it produces 
different, seemingly incorrect output. 

I've created a minimal example of this behaviour.  The code is too still too 
big to attach, as it obviously includes bindings for ncurses. but I've 
archived it here (60KiB): 

http://draco.dyndns.org/~nick/bug.tar.gz 

Running make will build 3 executables. 

bug_native and bug_bytecode1 produce the output I expect (2 vertical rows of 
Xs), something like this: 

    X
    X
    X

    X
    X
    X 

but with bug_bytecode2, which is exactly the same code, but linked 
differently, the second row of Xs are horizontal, rather than vertical: 

    X
    X
    X



  XXX 

Any suggestions as to why this might happen?  I'm not an expert in O'Caml 
and especially not in using C bindings, so I could be doing something wrong, 
but the fact that it only happens with certain linking options makes me 
suspect it is a compiler bug.  Or could it be something wrong with the C 
bindings for ncurses?  (I didn't write them myself.) 

I've checked in the ocamlopt documentation, and I'm not using any of the 
constructs which behave differently under native compilation, but I don't 
think that's relevant anyway. 

I'm using O'Caml 3.07+2 and ncurses 5.4. 

Thanks in advance,
Nick 

PS. Thanks to all those who replied to my previous query on polymorphic 
variants.

-------------------
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


             reply	other threads:[~2004-03-02 15:08 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-02 15:08 nickgrey [this message]
     [not found] ` <16452.49607.575894.790498@barrow.artisan.com>
2004-03-03  0:22   ` [Caml-list] " nickgrey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=courier.4044A36B.000010DD@softhome.net \
    --to=nickgrey@softhome.net \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox