This revision was automatically updated to reflect the committed changes.
Closed by commit rL300686: Avoid assert when a non-static member function is
qualified with __unaligned (authored by rogfer01).
Changed prior to commit:
https://reviews.llvm.org/D31976?vs=94962=95723#toc
Repository:
ahatanak added a comment.
I see, thank you for the explanation.
https://reviews.llvm.org/D31976
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
rogfer01 added a comment.
`clang::Sema::IsOverload` explicitly forbids the `__restrict` case for the
qualifier of non-static member functions. I assume `__unaligned` is not
forbidden because the MSVC ABI does encode this qualifier while the Itanium ABI
currently does not.
This patch just
ahatanak added inline comments.
Comment at: test/CodeGenCXX/unaligned-duplicated-mangle-name.cpp:15
+
+void A::foo() // expected-error {{definition with same mangled name as another
definition}}
+ // expected-note@-6 {{previous definition is here}}
aaron.ballman accepted this revision.
aaron.ballman added a comment.
This revision is now accepted and ready to land.
This seems reasonable to me, but you should wait for confirmation before
committing (I'm not as familiar with the mangler as others are).
Comment at:
rogfer01 created this revision.
Under `-fms-extensions` `__unaligned` is a type-qualifier that can be applied
to a non-static member function declaration.
This causes an assertion when mangling the name under Itanium, where that
qualifier is not mangled.
This patch justs makes the minimal