Alright my first post is almost unreadable so restarting with the http version... Hope it's going to be better.
Guillaume --------- I'm trying to build the following helloworld on Linux Gentoo : import std.stdio; void main () { writefln("hello world !!"); } invoking 'dmd hello.d -v' gives : parse hello semantic hello import object (/opt/dmd/src/phobos/object.d) import std.stdio (/opt/dmd/src/phobos/std/stdio.d) import std.c.stdio (/opt/dmd/src/phobos/std/c/stdio.d) import std.c.stddef (/opt/dmd/src/phobos/std/c/stddef.d) import std.c.stdarg (/opt/dmd/src/phobos/std/c/stdarg.d) import std.format (/opt/dmd/src/phobos/std/format.d) import std.stdarg (/opt/dmd/src/phobos/std/stdarg.d) import std.utf (/opt/dmd/src/phobos/std/utf.d) import std.contracts (/opt/dmd/src/phobos/std/contracts.d) import std.conv (/opt/dmd/src/phobos/std/conv.d) /opt/dmd/src/phobos/std/conv.d(1468): number is not representable import std.string (/opt/dmd/src/phobos/std/string.d) import std.c.stdlib (/opt/dmd/src/phobos/std/c/stdlib.d) import std.c.string (/opt/dmd/src/phobos/std/c/string.d) import std.uni (/opt/dmd/src/phobos/std/uni.d) import std.array (/opt/dmd/src/phobos/std/array.d) import std.ctype (/opt/dmd/src/phobos/std/ctype.d) import std.typetuple (/opt/dmd/src/phobos/std/typetuple.d) import std.traits (/opt/dmd/src/phobos/std/traits.d) import std.math (/opt/dmd/src/phobos/std/math.d) /opt/dmd/src/phobos/std/math.d(703): number is not representable import std.c.math (/opt/dmd/src/phobos/std/c/math.d) import std.system (/opt/dmd/src/phobos/std/system.d) import std.gc (/opt/dmd/src/phobos/std/gc.d) import gcstats (/opt/dmd/src/phobos/gcstats.d) import std.file (/opt/dmd/src/phobos/std/file.d) import std.path (/opt/dmd/src/phobos/std/path.d) import std.c.linux.linux (/opt/dmd/src/phobos/std/c/linux/linux.d) import std.c.linux.linuxextern (/opt/dmd/src/phobos/std/c/linux/linuxextern.d) import std.c.linux.pthread (/opt/dmd/src/phobos/std/c/linux/pthread.d) import std.intrinsic (/opt/dmd/src/phobos/std/intrinsic.d) /opt/dmd/src/phobos/std/c/linux/linux.d(444): Error: Integer constant expression expected instead of _SIGSET_NWORDS /opt/dmd/src/phobos/std/c/linux/linux.d(444): Error: Integer constant expression expected instead of _SIGSET_NWORDS /opt/dmd/src/phobos/std/c/linux/linux.d(444): Error: Integer constant expression expected instead of _SIGSET_NWORDS /opt/dmd/src/phobos/std/c/linux/linux.d(444): Error: Integer constant expression expected instead of _SIGSET_NWORDS import std.outofmemory (/opt/dmd/src/phobos/std/outofmemory.d) import std.regexp (/opt/dmd/src/phobos/std/regexp.d) import std.outbuffer (/opt/dmd/src/phobos/std/outbuffer.d) import std.bitmanip (/opt/dmd/src/phobos/std/bitmanip.d) import std.metastrings (/opt/dmd/src/phobos/std/metastrings.d) DMD version is v2.008, gentoo ebuild is dev-lang/dmd-bin-2.008-r1 The relevant lines in linux.d file are, l.444 is 'uint[_SIGSET_NWORDS] __val;' extern (C) { /* from <pwd.h> */ struct passwd { char *pw_name; char *pw_passwd; uid_t pw_uid; gid_t pw_gid; char *pw_gecos; char *pw_dir; char *pw_shell; } const size_t _SIGSET_NWORDS = 1024 / (8 * uint.sizeof); struct sigset_t { uint[_SIGSET_NWORDS] __val; } int getpwnam_r(const(char)*, passwd*, void*, size_t, passwd**); passwd* getpwnam(in char*); passwd* getpwuid(uid_t); int getpwuid_r(uid_t, passwd*, char*, size_t, passwd**); int kill(pid_t, int); int sem_close(sem_t*); int sigemptyset(sigset_t*); int sigfillset(sigset_t*); int sigismember(sigset_t*, int); int sigsuspend(sigset_t*); } My linux kernel version is 2.6.35-gentoo-r10, the _SIGSET_NWORDS constant is defined in '/usr/include/bits/sigset.h' and value is # define _SIGSET_NWORDS (1024 / (8 * sizeof (unsigned long int))) Is it serious doc ? Guillaume Chatelet