From owner-freebsd-standards@FreeBSD.ORG Sat Sep 13 03:11:32 2014 Return-Path: Delivered-To: freebsd-standards@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CA8FDB4 for ; Sat, 13 Sep 2014 03:11:32 +0000 (UTC) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B127CEC6 for ; Sat, 13 Sep 2014 03:11:32 +0000 (UTC) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.14.9/8.14.9) with ESMTP id s8D3BW7I055912 for ; Sat, 13 Sep 2014 03:11:32 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-standards@FreeBSD.org Subject: [Bug 193594] New: stddef.h should define max_align_t Date: Sat, 13 Sep 2014 03:11:32 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: standards X-Bugzilla-Version: 11.0-CURRENT X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Some People X-Bugzilla-Who: lichray@gmail.com X-Bugzilla-Status: Needs Triage X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-standards@FreeBSD.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Sep 2014 03:11:32 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=193594 Bug ID: 193594 Summary: stddef.h should define max_align_t Product: Base System Version: 11.0-CURRENT Hardware: Any OS: Any Status: Needs Triage Severity: Affects Some People Priority: --- Component: standards Assignee: freebsd-standards@FreeBSD.org Reporter: lichray@gmail.com C11 max_align_t does not work with both base system clang and ports clang (clang has those defined under lib/Headers but we don't install them, while we do install GCC's fixed headers for GCC in ports, e.g. /usr/local/lib/gcc49/gcc/x86_64-portbld-freebsd8.4/4.9.2/include/stddef.h). FreeBSD already defines C11 additions in /usr/include/stdlib.h, and we should do the same for max_align_t. I copy-pasted clang's implementation to /usr/include/stddef.h and everything works fine: #if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L typedef struct { long long __clang_max_align_nonce1 __attribute__((__aligned__(__alignof__(long long)))); long double __clang_max_align_nonce2 __attribute__((__aligned__(__alignof__(long double)))); } max_align_t; #endif GCC's implementation queries for defined(__STDC_VERSION__) and defined(__cplusplus); the struct is the same. -- You are receiving this mail because: You are the assignee for the bug.