From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/34 Path: news.gmane.org!not-for-mail From: Szabolcs Nagy Newsgroups: gmane.linux.lib.musl.general Subject: Re: Musl git 0d......455eee8 and recent compilers Date: Mon, 6 Jun 2011 12:27:42 +0200 Message-ID: <20110606102742.GM6142@port70.net> References: Reply-To: musl@lists.openwall.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1307356090 29774 80.91.229.12 (6 Jun 2011 10:28:10 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 6 Jun 2011 10:28:10 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-117-gllmg-musl=m.gmane.org@lists.openwall.com Mon Jun 06 12:28:06 2011 Return-path: Envelope-to: gllmg-musl@lo.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by lo.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1QTX2U-0005Gc-8p for gllmg-musl@lo.gmane.org; Mon, 06 Jun 2011 12:28:06 +0200 Original-Received: (qmail 7810 invoked by uid 550); 6 Jun 2011 10:28:05 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 7798 invoked from network); 6 Jun 2011 10:28:05 -0000 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Xref: news.gmane.org gmane.linux.lib.musl.general:34 Archived-At: * Igmar Palsenberg [2011-06-06 10:48:08 +0200]: > I was using Musle as a test for.. musl > 1) The struct dirent in include/dirent.h uses a 1 byte array for d_name. In reality, it's larger : We allocate more space than the struct. Since muscle requires a C99 compiler anyway, what's keeping use from using d_name[0] or d_name[] ? If a C89 compiler includes dirent.h, we're screwed anyway :). That will probably silence GCC 4.5 and clang, and severely reduce the warnings it gives in similar cases. > what kind of warnings do you get? char foo[1] gives warning but a flexible array member char foo[] does not? > 2) The NULL pointer dereference in src/time/__asctime.c won't work with clang : It removes it. I suggest using either __builtin_trap() or an abort(). If you get to that point, you're in trouble anyway. > i guess __builtin_trap is compiler specific i don't think it's a big deal.. there could be 0/0 as well i guess i wonder what main(){ return *(int*)0; } or even main(){ return ((int(*)())0)(); } does on clang.. > 3) Clang does't seem to grasp the weak_alias thingy. It need to check if those parts actually are correct > well it uses the alias __attribute__ extension of gcc > 4) Is there a muscl testsuite somewhere ? > musl http://git.etalabs.net/cgi-bin/gitweb.cgi