http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51605
--- Comment #5 from Dan Nagle <danlnagle at me dot com> 2011-12-18 13:13:48 UTC --- Citations from 10-007r1.pdf [185:17-18] says the polymorphic symbol_ptr takes the type of the type guard within the type guard. [171:7-8] says the associating entity loses the pointer attribute but keeps the target attribute. (It has the target attribute because it was a pointer outside the type guard.) Therefore I believe it's conforming to point to the associating entity with a typed pointer. (integer_ptr => symbol_ptr) My analysis could be faulty. I'm using the gfortran I'm using because it had a Mac installer. I thought 4.6.2 was fairly recent. This is all new stuff and I'm learning it myself and getting surprised here and there. Thanks for your efforts.