[Bug fortran/20863] Pointer problems in PURE procedures

2007-06-18 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2007-06-18 23:04 ---
Subject: Bug 20863

Author: pault
Date: Mon Jun 18 23:04:28 2007
New Revision: 125831

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=125831
Log:
2007-06-19  Paul Thomas  [EMAIL PROTECTED]

PR fortran/20863
PR fortran/20082
* resolve.c (resolve_code): Use gfc_impure_variable as a
condition for rejecting derived types with pointers, in pure
procedures.
(gfc_impure_variable): Add test for dummy arguments of pure
procedures; any for functions and INTENT_IN for subroutines.

PR fortran/32236
* data.c (gfc_assign_data_value): Change the ICE on an array
reference initializer not being an array into an error and
clear init to prevent a repetition of the error.

2007-06-19  Paul Thomas  [EMAIL PROTECTED]

PR fortran/20863
PR fortran/20082
* gfortran.dg/impure_assignment_2.f90 : New test.

PR fortran/32236
* gfortran.dg/data_initialized_2.f90 : New test.

* gfortran.dg/equiv_7.f90 : Test for endianess and call the
appropriate version of 'dmach'.

Added:
trunk/gcc/testsuite/gfortran.dg/data_initialized_2.f90
trunk/gcc/testsuite/gfortran.dg/impure_assignment_2.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/data.c
trunk/gcc/fortran/resolve.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/equiv_7.f90


-- 


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



[Bug fortran/20863] Pointer problems in PURE procedures

2007-06-18 Thread pault at gcc dot gnu dot org


--- Comment #6 from pault at gcc dot gnu dot org  2007-06-18 23:08 ---
Fixed on trunk

Paul


-- 


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



[Bug fortran/20863] Pointer problems in PURE procedures

2007-06-16 Thread pault at gcc dot gnu dot org


--- Comment #3 from pault at gcc dot gnu dot org  2007-06-16 11:07 ---
This has been on the books too long - I was hoping that this would be dealt
with as a tyro job:)

.and, yes, a fix is on the way!

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 |
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-03-05 03:47:10 |2007-06-16 11:07:46
   date||


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



[Bug fortran/20863] Pointer problems in PURE procedures

2007-06-16 Thread patchapp at dberlin dot org


--- Comment #4 from patchapp at dberlin dot org  2007-06-16 16:10 ---
Subject: Bug number PR20863

A patch for this bug has been added to the patch tracker.
The mailing list url for the patch is
http://gcc.gnu.org/ml/gcc-patches/2007-06/msg01127.html


-- 


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



[Bug fortran/20863] Pointer problems in PURE procedures

2006-10-11 Thread brooks at gcc dot gnu dot org


--- Comment #2 from brooks at gcc dot gnu dot org  2006-10-12 00:07 ---
On a similar note, the following is legal code for which an error is
incorrectly reported:

 $ cat pr20863a.f90
 PURE FUNCTION give_next(i)
  TYPE node_type
sequence
TYPE(node_type), POINTER :: next
  END TYPE
  TYPE(node_type), POINTER :: node
  TYPE(node_type), target  :: t
  integer, intent(in)  :: i
  node%next = t
 END FUNCTION
 
 [EMAIL PROTECTED] /cygdrive/d/svn/prs
 $ /irun/bin/gfortran -c pr20863a.f90
  In file pr20863a.f90:9
 
  node%next = t
 1
 Error: Right side of assignment at (1) is a derived type containing a
 POINTER in a PURE procedure

See discussion here for details:
http://gcc.gnu.org/ml/fortran/2006-10/msg00340.html


-- 

brooks at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||brooks at gcc dot gnu dot
   ||org
   Keywords||rejects-valid
Summary|Pointer of host-associated  |Pointer problems in PURE
   |type in PURE procedure  |procedures


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