From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/49 Path: news.gmane.org!not-for-mail From: Igmar Palsenberg Newsgroups: gmane.linux.lib.musl.general Subject: Re: Cleanup patches Date: Tue, 7 Jun 2011 17:26:22 +0200 Message-ID: References: <60BABB60-7D9B-4D66-8645-4CDFD07E1338@palsenberg.com> <20110606171317.GN6142@port70.net> <20110606173210.GD191@brightrain.aerifal.cx> <495DC2BF-B857-4BD5-95B1-753C0DB0DE6A@palsenberg.com> <20110607145149.GH191@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1307460411 27310 80.91.229.12 (7 Jun 2011 15:26:51 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 7 Jun 2011 15:26:51 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-133-gllmg-musl=m.gmane.org@lists.openwall.com Tue Jun 07 17:26:47 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 1QTyB5-00075g-0b for gllmg-musl@lo.gmane.org; Tue, 07 Jun 2011 17:26:47 +0200 Original-Received: (qmail 19589 invoked by uid 550); 7 Jun 2011 15:26:46 -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 19571 invoked from network); 7 Jun 2011 15:26:46 -0000 In-Reply-To: <20110607145149.GH191@brightrain.aerifal.cx> X-Mailer: Apple Mail (2.1084) Xref: news.gmane.org gmane.linux.lib.musl.general:49 Archived-At: On Jun 7, 2011, at 4:51 PM, Rich Felker wrote: > On Tue, Jun 07, 2011 at 10:44:44AM +0200, Igmar Palsenberg wrote: >>>> this could be $(AS) -o $@ $< >>>=20 >>> Is there a reason this is necessary or beneficial? >>=20 >> Clang complains about them. You could ignore them if you want : >> Werror doesn't seem to be affected by this. It might use an internal >> assembler, I'm not that familiar with clang internals. Looking at >> the flags, they don't seem to matter when it comes to assembling .s >> files. >=20 > CFLAGS is there for the person compiling musl to be able to add flags. > If it were just a fixed set of flags there'd be no need for a > variable.. Thus I'm a bit hesitant to omit them without further > consideration. The assembler doesn't see those flags. Those flags are simply ignore, = but clang does complain about them. >> I need to check. I get out of bounds warning with this code. I'll >> check and update this code. >=20 > Yes, you'll get array bounds warnings. You can leave this warning off > unless clang is really miscompiling the code, in which case I'll have > to make some larger changes... Probably not. I might run a case through valgrind to see if it comes up = (and if possible, since the last time I checked valgrind, it couldn't = handle static binaries). >>> I'm guessing this might be an issue of some 32-bit x86 compilers >>> disagreeing on whether wchar_t is "int" or "long". Traditionally it >>> was "long" which worked but was obviously stupid conceptually. I = don't >>> know a good way to make musl's wchar.h adapt to what the compiler >>> wants though... >>=20 >> The cast should be OK. In cases where it is correct (and the cast >> isn't necessary), it is simply a NOOP. >=20 > No, the cast, like ALMOST ALL CASTS, hides a bug: that wchar_t is > defined in an inconsistent way. It's actively harmful. I'll make a proper fix for that. >>> Indeed, the names will all need changing if this is necessary. >>=20 >> There is a clang bug somewhere never the less : I get weird errors >> with the macro, if I expand them directly in the code, I get a >> different error. It should give the same error in both cases. I'll >> recheck this. We might want to make those function hidden if that >> solves the problem. >=20 > Don't know what you mean by expanding them directly in the code. You > **cannot** replace the calls to the alias with calls to the dummy > function. If you could, why would I have ever created the weak aliases > to begin with?? The weak semantics are essential to the code working. The code is normally something like : weak_alias(real, alias); where real is a static function. clang then barked about the function being unused. If I expand the macro = (gcc -E), and replace weak_alias(...) with the expanded form, I get an = error that an alias won't work on a static function. I need to dive into this to see who to blame :) Igmar=