[Bug 209097] security/hpenc: Fix build with libc++ 3.8.0
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed Apr 27 12:41:46 UTC 2016
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=209097
Bug ID: 209097
Summary: security/hpenc: Fix build with libc++ 3.8.0
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: Individual Port(s)
Assignee: vsevolod at FreeBSD.org
Reporter: dim at FreeBSD.org
Flags: maintainer-feedback?(vsevolod at FreeBSD.org)
Assignee: vsevolod at FreeBSD.org
Created attachment 169757
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=169757&action=edit
Don't declare max_align_t if libc++'s stddef.h already did it
During the exp-run in bug 208158, it was found that security/hpenc gives errors
with libc++ 3.8.0 [1]:
In file included from aead.cc:29:
In file included from ./aead.h:29:
./common.h:37:3: error: typedef redefinition with different types ('struct
max_align_t' vs 'long double')
} max_align_t;
^
/usr/include/c++/v1/stddef.h:57:21: note: previous definition is here
typedef long double max_align_t;
^
If __CLANG_MAX_ALIGN_T_DEFINED is not defined, libc++'s new stddef.h also
declares max_align_t, and this conflicts with the max_align_t declaration in
common.h. There is already an "Ugly, ugly hack" part in common.h, which
unfortunately must now be made even uglier, as in the attached patch. This
adds a !defined(_LIBCPP_STDDEF_H) to detect whether libc++'s stddef.h was
included.
[1]
http://package18.nyi.freebsd.org/data/headamd64PR208158-default/2016-03-22_18h30m05s/logs/errors/hpenc-2.0_1.log
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-ports-bugs
mailing list