------- Comment #4 from pault at gcc dot gnu dot org  2005-12-06 05:32 -------
(In reply to comment #3)
> I believe the code is illegal from 7.5.2, page 110,
> 
>    Constraint:  The target shall be of the same type, kind type parameters,
>                 and rank as the pointer.
> 
> Then on page 111, you find "The target shall have the same type parameters
> as the pointer-object." 

I believe that you are correct - I worried at this one with PR15809. Automatic
character length pointer dummies are a bit out of frame if this constraint is
asserted.
> 
> BTW, both Lahey's web-based checking utility and NAG's compiler
> rejects this code.

This could easily be done in gfortran.  I will prepare a patch to do it.
> 
> BTW2, gfortran 4.2 compiles the code, but I get garbage.
> 

If you make the pointer very much bigger than the pointee/target, you can
provoke segfaults.

I am working (very slowly) on a patch that would enable pointer aliassing in
gfortran.  This would include aliassing between characters of different sizes. 
This PR flags up:

(i) This will have to subject to -std=gnu
(ii) The size of the elements of the pointer will have to be asserted to be
smaller than that of the pointee/target.
(iii) I will have to be fiendishly clever with warnings, errors and
assertions....

In the mean time, I will ban it all!

Paul


-- 

pault at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
                   |dot org                     |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25030

Reply via email to