http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60906
--- Comment #7 from Sriraman Tallam <tmsriram at google dot com> --- (In reply to Jakub Jelinek from comment #6) > GCC has like 60 or 70 target independent attributes plus sometimes various > target dependent attributes. Figuring out which are ABI changing and must > be errored out on mismatch, which are safe to ignore, which are only > affecting function generation and not callers is going to be hard even for > the existing ones, and would be a maintainance burden for the future, as for > each new attribute (every year a few of them are added) it would be another > place to modify and think about what the behavior should be. Keying > something on default attribute would be weird, for multi-versioning you > don't have to have target ("default") I think. Multi-versioning needs the target("default") version or error. If you want to inherit the > attributes, perhaps from the first decl only, and if the second/further > multi-versioned declarations or definitions add attributes (other than the > target attribute), it would be only allowed if the attribute wouldn't modify > the attribute list (i.e. contain attribute that is already present).