aliasing between const and non-const objects

Richard Earnshaw rearnsha@arm.com
Tue Jul 29 17:00:00 GMT 2003


> Hi,
> 
> On Tue, 29 Jul 2003, Richard Earnshaw wrote:
> 
> > Incorrect.  External code could quite legitimately be:
> 
> Hmm, right.  I'm obviously blind and barking up the wrong tree :-|
> 
> > foo()
> > {
> >   int a[5];
> >
> >   t = a; c = a;
> 
> You'll get a warning for the latter assignment, though.  Nevethess you are
> right.  I should have provided a more complete example:

I hope not.  Otherwise you would get a warning every time you passed a 
non-const char pointer to strcpy as a source argument.

The code is not much dissimilar to

 char a[5] = "abc";
 char b[5];

 strcpy (b, a);

R.



More information about the Gcc mailing list