From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 23B0D7EE33 for ; Fri, 3 Feb 2017 09:56:37 +0100 (CET) Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=christoph.hoeger@celeraone.com; spf=Pass smtp.mailfrom=christoph.hoeger@celeraone.com; spf=None smtp.helo=postmaster@mail-it0-f50.google.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of christoph.hoeger@celeraone.com) identity=pra; client-ip=209.85.214.50; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="christoph.hoeger@celeraone.com"; x-sender="christoph.hoeger@celeraone.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of christoph.hoeger@celeraone.com designates 209.85.214.50 as permitted sender) identity=mailfrom; client-ip=209.85.214.50; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="christoph.hoeger@celeraone.com"; x-sender="christoph.hoeger@celeraone.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-it0-f50.google.com) identity=helo; client-ip=209.85.214.50; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="christoph.hoeger@celeraone.com"; x-sender="postmaster@mail-it0-f50.google.com"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3A3P6rIxBDG9OgAlshMWxVUyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSP3zocbcNUDSrc9gkEXOFd2CrakV16yJ6+u5Az1Ioc7Y9itdINoUD15NoP?= =?us-ascii?q?5VtjJjKfbNMVf8Iv/uYn5yN+V5f3ghwUuGN1NIEt31fVzYry76xzcTHhLiKVg9?= =?us-ascii?q?fbytScaBx/iwguu7/pmWZwRTmBK8Z6lzJVO4t1b/rM4T1KBiMKcq1hzRokxo5e?= =?us-ascii?q?tb3ys8LlKJng3g4d+wup5k/itdodoq+spNS6z9eal+RrtdWmd1e1sp7dHm4EGQ?= =?us-ascii?q?BTCE4WERBz0b?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0DbAAB1RZRYgDLWVdFdHRgHBgYYBwaDO?= =?us-ascii?q?D+BCQeDUawjhzgiiFMHQhUBAQEBAQEBAQEBARIBAQkNCQobMYIzGYJHHQEBOBg?= =?us-ascii?q?GAQY3AgQgEgEFAYlCZI81kQ0/ixpogiWDCAEBBYgrDBcHCBKQQYI6gl+QAooeg?= =?us-ascii?q?UiDb4IEdYsggk6ONJFDFB6BFTWBbWcFhic/NQGJHwEBAQ?= X-IPAS-Result: =?us-ascii?q?A0DbAAB1RZRYgDLWVdFdHRgHBgYYBwaDOD+BCQeDUawjhzg?= =?us-ascii?q?iiFMHQhUBAQEBAQEBAQEBARIBAQkNCQobMYIzGYJHHQEBOBgGAQY3AgQgEgEFA?= =?us-ascii?q?YlCZI81kQ0/ixpogiWDCAEBBYgrDBcHCBKQQYI6gl+QAooegUiDb4IEdYsggk6?= =?us-ascii?q?ONJFDFB6BFTWBbWcFhic/NQGJHwEBAQ?= X-IronPort-AV: E=Sophos;i="5.33,328,1477954800"; d="ml'?c'?scan'208,217";a="258683321" Received: from mail-it0-f50.google.com ([209.85.214.50]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 03 Feb 2017 09:56:29 +0100 Received: by mail-it0-f50.google.com with SMTP id d9so8054688itc.0 for ; Fri, 03 Feb 2017 00:56:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=celeraone-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=n4MIp3Cdez9gTIks2qyHAbMQjmoE34m28ZQDU4QeRIA=; b=tysX+P8N06FPGLEcpSxDNWyM6Zh374EY7kcBY7ZbQa09rgry+UQFtRG534WhMx2PLX 2QI7mhHGHDXV0NA+GLeFPcwaNwNNugEjfcAy+nJO7baPNS1okGGhGxQGhTpSx/1z0AJ0 xuMQb8nGDnAMb2xGQNZpbMThrEnOmRNd9Sm/7dK0qSlKxrTm2VImsZWmGJkxLJXGBipe zs3doY62x+mIp+t0T9zVanThQd4UmFFTSZ75+WMllE01mSefzjrgj1OeJah+Zavsj2Mk 2ITSrXgLIBlzLpxZgH79kSMNcw3iy/lLo4dU7hPalqCp1oYF6sUch3lQ79R1mm6k5oXn U9LA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=n4MIp3Cdez9gTIks2qyHAbMQjmoE34m28ZQDU4QeRIA=; b=XIGML3EBksRq9fqA55kEBiGH2Dcuhv5BYxxj3ChNL+wnJDLDqGVKWOAgrYWKZ47Axs 64d/kxfxAJ+6QKFoFKSpKldvLHtsgVPpSO2kfPF8NiiUhepc1yjJxhkKQmnTGwHdHRrD oKtScO4OChjbj8H+df9vRqRUDzfuJrzA/gjfy0/HqbscQWtkzTahGXDKRVyv7nGdbj9e Wa1sss6fmZRzxp3VjUua/cvimjrFaLjl1nzBbRuxNSF98nuis5lzi6hpMCswXyZ4Qo9f FtzEgzs5kyMhzdonnMbvYcW9LGl+tEJYhDqk9a3uzfl3Ulxku8Mne1es2aokUDzuXX3O sA0w== X-Gm-Message-State: AIkVDXJJ1p27iIrMiR2SwUOUYQq7lRse1YxZCaRhY7+zQlq3zgL/vtdl0cMyTnbfrP6/CYevdeCiNdxn5aqFfHl3 X-Received: by 10.36.90.144 with SMTP id v138mr251448ita.24.1486112187529; Fri, 03 Feb 2017 00:56:27 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.48.211 with HTTP; Fri, 3 Feb 2017 00:56:26 -0800 (PST) From: =?UTF-8?Q?Christoph_H=C3=B6ger?= Date: Fri, 3 Feb 2017 09:56:26 +0100 Message-ID: To: caml-list@inria.fr Content-Type: multipart/mixed; boundary=001a11429e78095a9305479c75d4 Subject: [Caml-list] Is there some builtin function that flushes buffers on shutdown? --001a11429e78095a9305479c75d4 Content-Type: multipart/alternative; boundary=001a11429e78095a8e05479c75d2 --001a11429e78095a8e05479c75d2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Dear all, I managed to manually link and run an object file generated by ocamlopt. A small part seems to be missing, however: =E2=9E=9C llvmlink ocamlfind opt -package ANSITerminal -linkpkg -verbose -output-obj -o test.object.o test.ml =E2=9E=9C llvmlink clang -I$(ocamlc -where) -lm wrapper.c test.object.o -o= wrapper ~/.opam/4.04.0/lib/ocaml/libunix.a -ldl ~/.opam/4.04.0/lib/ocaml/libasmrun.a /home/choeger/.opam/4.04.0/lib/ANSITerminal/libANSITerminal_stubs.a These commands produce an executable output, but the screen remains empty. This changes, when I manually flush the stdout buffer in the code (I obtain the desired results then). Find attached the test sources. When I uncomment the Printf.printf in test.ml, everything seems to work fine. But when I compile the test using ocamlopt solely, this is not necessary. It seems some buffers do not get flushed here. Does anyone know, why? regards, Christoph --001a11429e78095a8e05479c75d2 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Dear all,

I managed = to manually link and run an object file generated by ocamlopt. A small part= seems to be missing, however:

=E2=9E=9C=C2=A0 llvmlink ocamlfind op= t -package ANSITerminal -linkpkg -verbose -output-obj -o test.object.o test.ml

=E2=9E=9C=C2=A0 llvmlink clang -I= $(ocamlc -where) -lm wrapper.c test.object.o -o wrapper ~/.opam/4.04.0/lib/= ocaml/libunix.a -ldl ~/.opam/4.04.0/lib/ocaml/libasmrun.a /home/choeger/.op= am/4.04.0/lib/ANSITerminal/libANSITerminal_stubs.a

These comma= nds produce an executable output, but the screen remains empty. This change= s, when I manually flush the stdout buffer in the code (I obtain the desire= d results then).

Find attached the test sources. When I uncom= ment the Printf.printf in test.ml, everythin= g seems to work fine. But when I compile the test using ocamlopt solely, th= is is not necessary. It seems some buffers do not get flushed here. Does an= yone know, why?

regards,

Christoph
=

--001a11429e78095a8e05479c75d2-- --001a11429e78095a9305479c75d4 Content-Type: text/x-csrc; charset=US-ASCII; name="wrapper.c" Content-Disposition: attachment; filename="wrapper.c" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iypkqe090 I2luY2x1ZGUgPGNhbWwvY2FsbGJhY2suaD4KI2luY2x1ZGUgPHN0ZGlvLmg+ CgppbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKiBhcmd2KQp7CiAgICBpbnQg cmVzdWx0OwogICAgLyogSW5pdGlhbGl6ZSBPQ2FtbCBjb2RlICovCiAgICBj YW1sX3N0YXJ0dXAoYXJndik7CiAgICBwcmludGYoImZpbmlzaGVkXG4iKTsK ICAgIHJldHVybiAwOwp9Cg== --001a11429e78095a9305479c75d4 Content-Type: application/octet-stream; name="test.ml" Content-Disposition: attachment; filename="test.ml" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iypkqe0q1 bW9kdWxlIFQgPSBBTlNJVGVybWluYWwKb3BlbiBQcmludGYKCmxldCBjb2xv cnMgPQogIFtULkJsYWNrOyBULlJlZDsgVC5HcmVlbjsgVC5ZZWxsb3c7IFQu Qmx1ZTsgVC5NYWdlbnRhOyBULkN5YW47CiAgIFQuV2hpdGU7IFQuRGVmYXVs dF0KCmxldCBjb2xvcl90b19zdHJpbmcgPSBmdW5jdGlvbgogIHwgVC5CbGFj ayAtPiAiYmxhY2siCiAgfCBULlJlZCAtPiAicmVkIgogIHwgVC5HcmVlbiAt PiAiZ3JlZW4iCiAgfCBULlllbGxvdyAtPiAieWVsbG93IgogIHwgVC5CbHVl IC0+ICJibHVlIgogIHwgVC5NYWdlbnRhIC0+ICJtYWdlbnQiCiAgfCBULkN5 YW4gLT4gImN5YW4iCiAgfCBULldoaXRlIC0+ICJ3aGl0ZSIKICB8IFQuRGVm YXVsdCAtPiAiZGVmIgoKbGV0ICgpID0KICAoKiBUYWJsZSAqKQogIGxldCBw cmludF9saW5lIGZvcmUgPQogICAgcHJpbnRmICIlNnMgIiAoY29sb3JfdG9f c3RyaW5nIGZvcmUpOwogICAgTGlzdC5pdGVyIChmdW4gYmFjayAtPgogICAg ICAgICAgICAgICAgIFQucHJpbnRfc3RyaW5nIFtULkZvcmVncm91bmQgZm9y ZTsgVC5CYWNrZ3JvdW5kIGJhY2s7IF0KICAgICAgICAgICAgICAgICAiICFU ZXh0ISAiOwogICAgICAgICAgICAgICkgY29sb3JzOwogICAgcHJpbnRfc3Ry aW5nICJcbiIgaW4KCiAgUHJpbnRmLmVwcmludGYgInN0YXJ0aW5nXG4iIDsK ICBULmVyYXNlIFQuU2NyZWVuOwogIFQuc2V0X2N1cnNvciAxIDE7CiAgcHJp bnRfc3RyaW5nICIgICAgICAgICI7CiAgTGlzdC5pdGVyIChmdW4gYmFjayAt PiBwcmludGYgIiU2cyAgIiAoY29sb3JfdG9fc3RyaW5nIGJhY2spKSBjb2xv cnM7CiAgcHJpbnRfc3RyaW5nICJcbiI7CiAgTGlzdC5pdGVyIHByaW50X2xp bmUgY29sb3JzOwogICgqIEVmZmVjdHMgKikKICBULnByaW50X3N0cmluZyBb VC5Cb2xkXSAiQm9sZCAiOwogIFQucHJpbnRfc3RyaW5nIFtULlVuZGVybGlu ZWRdICJVbmRlcmxpbmVkICI7CiAgVC5wcmludF9zdHJpbmcgW1QuQmxpbmtd ICJCbGluayAiOwogIFQucHJpbnRfc3RyaW5nIFtULkludmVyc2VdICJJbnZl cnNlICI7CiAgVC5wcmludF9zdHJpbmcgW1QuSGlkZGVuXSAiSGlkZGVuIjsK ICAoKiB1bmNvbW1lbnQgdG8gc2VlIHJlc3VsdHMgUHJpbnRmLnByaW50ZiAi JSEiOyAqKQogIHByaW50X3N0cmluZyAiPC0tIGhpZGRlblxuIiA7Cg== --001a11429e78095a9305479c75d4--