mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Szabolcs Nagy <nsz@port70.net>
To: musl@lists.openwall.com
Cc: Pawel Dziepak <pdziepak@quarnos.org>
Subject: Re: [PATCH] add definition of max_align_t to stddef.h
Date: Thu, 8 May 2014 12:57:22 +0200	[thread overview]
Message-ID: <20140508105721.GR12324@port70.net> (raw)
In-Reply-To: <20140507230729.GD26358@brightrain.aerifal.cx>

* Rich Felker <dalias@libc.org> [2014-05-07 19:07:29 -0400]:
> BTW, is __alignof__(long double) really giving 8? If so that's utter
> nonsense. sizeof(long double) is 12, and alignment must always divide
> the size of the type...

no, long long is 8 though

#include <stdio.h>
#define p(x) printf("%s == %d\n", #x, (int)(x))
int main()
{
        p(__alignof__(long long));
        p(__alignof__(long double));
        p(__alignof__(union{long long a; long double b;}));
        p(_Alignof(long long));
        p(_Alignof(long double));
        p(_Alignof(union{long long a; long double b;}));
}

gcc 4.8 on i386:
__alignof__(long long) == 8
__alignof__(long double) == 4
__alignof__(union{long long a; long double b;}) == 4
_Alignof(long long) == 8
_Alignof(long double) == 4
_Alignof(union{long long a; long double b;}) == 4

gcc 4.9 on i386:
__alignof__(long long) == 8
__alignof__(long double) == 4
__alignof__(union{long long a; long double b;}) == 4
_Alignof(long long) == 4
_Alignof(long double) == 4
_Alignof(union{long long a; long double b;}) == 4

gcc 4.9 on arm:
__alignof__(long long) == 8
__alignof__(long double) == 8
__alignof__(union{long long a; long double b;}) == 8
_Alignof(long long) == 8
_Alignof(long double) == 8
_Alignof(union{long long a; long double b;}) == 8


> As I see it, we have a choice whether to use the "8" definition on
> i386 or use the natural definition, which would yield "4" on i386.
> This is not an ABI issue (it does not affect the ability to use
> glibc-built object files/binaries/shared libraries with musl, nor the
> C++ name mangling ABI) but an API issue.

assuming max_align_t does not appear in a function prototype


  reply	other threads:[~2014-05-08 10:57 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-06 10:35 Paweł Dziepak
2014-05-07  3:13 ` Rich Felker
2014-05-07  4:14   ` Luca Barbato
2014-05-07  4:29     ` Rich Felker
2014-05-07  5:12       ` Luca Barbato
2014-05-07 22:48         ` Rich Felker
2014-05-08 12:07           ` Luca Barbato
2014-05-08 14:25             ` Rich Felker
2014-05-07  9:28   ` Paweł Dziepak
2014-05-07 23:07     ` Rich Felker
2014-05-08 10:57       ` Szabolcs Nagy [this message]
2014-05-08 14:11         ` Rich Felker
2014-05-08 16:41       ` Paweł Dziepak
2014-05-08 17:41         ` Rich Felker
2014-05-08 18:45           ` Jens Gustedt
2014-05-08 19:11             ` Paweł Dziepak
2014-05-08 19:22               ` Jens Gustedt
2014-05-08 19:45           ` Paweł Dziepak
2014-05-08 20:02             ` Rich Felker
2014-05-08 20:45               ` Paweł Dziepak
  -- strict thread matches above, loose matches on Subject: below --
2014-04-30 20:23 Pawel Dziepak
2014-04-30 21:42 ` Szabolcs Nagy
2014-04-30 22:43   ` Rich Felker
2014-05-04  2:52     ` Paweł Dziepak
2014-05-04 11:42     ` Paweł Dziepak
2014-05-07  5:02       ` Jens Gustedt
2014-05-04  2:36   ` Paweł Dziepak
2014-05-04  5:02     ` Rich Felker

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=20140508105721.GR12324@port70.net \
    --to=nsz@port70.net \
    --cc=musl@lists.openwall.com \
    --cc=pdziepak@quarnos.org \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).