On Sat, Feb 16, 2013 at 9:38 PM, erik quanstrom <quans...@quanstro.net>wrote:

> i don't think this should link, since wrongaddr calls
> fn with an Outer* not an Inner*.
> ...


Normally in more mainstream C the nested "static void fn(Outer*);"
declaration would produce a diagnostic and instead what it (the compiler
and the code) seems to be doing is setting up allowing the call to compile
and once that is satisfied then the subsequent definition "has" to match
it, as perhaps a way to do type punning.

-- 
Greg Comeau / 4.3.10.1 with C++0xisms now in beta!
Comeau C/C++ ONLINE ==>     http://www.comeaucomputing.com/tryitout
World Class Compilers:  Breathtaking C++, Amazing C99, Fabulous C90.
Comeau C/C++ with Dinkumware's Libraries... Have you tried it?

Reply via email to