This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: const and strict aliasing rules


> 
> Andrew Pinski <pinskia@physics.uc.edu> writes:
> 
> | > You can work around this by using union's of pointers of both non-const 
> | > and const types, but the reinterpret_cast solution would be more attractive.
> | > 
> | > Thoughts?
> | 
> | This has nothing to do with const vs non-const but rather
> | a<int> and a<const int> are two seperate types which are not related in any way.
> | The C++ standard defines these two types as seperate types and are not compatiable
> | in any way for aliasing.
> 
> ???
> 
> 3.10/15:

And the template type a<int> are distict from a<const int> based on the template
arguments are diffrent and therefore the qualifier part of 3.10/15 does not apply.
If it was const a<int> and a<int> then it would apply.

-- Pinski


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]