Consider: int __attribute__((section("foo"))) *var1; int * __attribute__((section("foo"))) var2;
var2 is itself in section foo, and points to an int. Isn't var1 a pointer to something in section foo, and not itself in foo? GCC instead treats var1 like var2. I couldn't figure out a suitable search string to see if this has been discussed before, please feel free to just point me at an old email somewhere.