[PATCH] D48100: Append new attributes to the end of an AttributeList.

Erich Keane via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Jun 25 14:35:14 PDT 2018


erichkeane added inline comments.


================
Comment at: test/Sema/attr-target-mv.c:98
 int __attribute__((target("sse4.2"))) diff_cc(void);
-// expected-error at +1 {{multiversioned function declaration has a different calling convention}}
+// expected-error at +1 {{attribute 'target' multiversioning cannot be combined with other attributes}}
 __vectorcall int __attribute__((target("arch=sandybridge")))  diff_cc(void);
----------------
echristo wrote:
> This appears to have broken a particular error message?
Yeah, I actually noticed this last week, and @aaron.ballman and I have been discussing it.  Unfortunately, a small list of attributes (including all calling conventions) cause some redistributing of attributes between DeclSpec and Declarators.  Due to a bug in that area, linked-list pointers are being rewritten in a fairly mean fashion (it was previously not noticeable since these were at the end).

It is going to take a pretty good sized effort to fix (basically, remove the attributelist linked list-ness), but Aaron and I have been working on it for a few days.

Reverting this won't change my effort so I'll try to fix this in the meantime.


Repository:
  rC Clang

https://reviews.llvm.org/D48100





More information about the cfe-commits mailing list