On 06/23/2016 09:39 PM, Jason Merrill wrote:
-/* { dg-final { scan-assembler "_ZN1AIdEC1Ev" } } */
+/* { dg-final { scan-assembler "_ZN1AIU9may_aliasdEC1Ev" } } */

I find this rather worrying.

In glibc, we want to use the may_alias attribute on struct sockaddr_storage for POSIX conformance. We can only do this if it does not affect name mangling in application code.

If we define a struct like this:

extern "C" {

struct sockaddr_storage
{
  int ss_family;
  char pad[100];
};

};

would your patch change the assembler name of a C++ function with the following declaration

  void get_address(struct sockaddr_storage *);

?

Thanks,
Florian

Reply via email to