On 04/06/2017 05:05 PM, Jakub Jelinek wrote:
On Thu, Apr 06, 2017 at 04:51:01PM +0200, Florian Weimer wrote:
On 04/06/2017 04:43 PM, Jonathan Wakely wrote:
On 06/04/17 16:23 +0200, Richard Biener wrote:
On Thu, 6 Apr 2017, Florian Weimer wrote:
On 04/06/2017 04:11 PM, Bernd Edlinger wrote:
I think it is not too complicated to done in the C++ FE.
The FE looks for array of std::byte and unsigned char,
and sets the attribute when the final type is constructed.
What I am trying to do is just extend the semantic of may_alias
a bit, and then have the C++ FE use it in the way it has to.
We also need this for some POSIX and Linux kernel interfaces. A
C++-only
solution would not help with that.
Example(s)?
sockaddr_storage comes to mind.
Right. The kernel also has many APIs which return multiple variable-length
data blocks, such as getdents64, and many more interfaces in combination
The kernel uses -fno-strict-aliasing I think, so it doesn't care.
These APIs (getdents64, inotify, lots of netlink stuff, probably more)
extend to user space.
Thanks,
Florian