http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38342
--- Comment #12 from Bill Westfield <westfw at yahoo dot com> 2011-07-06 21:18:26 UTC --- Ah. So this is the same compiler behavior that results in C++ overloading not being able to tell the difference between a RAM pointer and a progmem pointer; the attribute ends up only associated with the variable and not with the types at all... Consistency is good, and I think I can see how having too many type modifiers would end up being dangerous. Thanks for the explanations!