Hello tinycc-devel,

>When a function is called using a prototype, the implicit argument
>conversions are done with the same rules as assignment.  An assignment
>of a structure pointer requires that the structures be compatible.
>Structure compatibility requires all fields to match.  This is
>essentially the same problem as:
>
>  struct x { int a; };
>  struct y { int a; int b; };
>
>  struct x foo;
>  struct y * bar;
>  bar = &foo;        /* cast needed */
>

Sorry but i think this should compile nevertheless as such a case is
well defined by the C-99 standard that it must copy the sizeof(bar)
bytes from foo into bar.

While a cast would be nice, it shouldn't be necessary.


-- 
 Best regards,                        emailto: scholz at scriptolutions dot com
 Lothar Scholz                        http://www.ruby-ide.com
 CTO Scriptolutions                   Ruby, PHP, Python IDE 's
 



_______________________________________________
Tinycc-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to