OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [testsuite/] [gfortran.dg/] [used_dummy_types_6.f90] - Rev 823

Go to most recent revision | Compare with Previous | Blame | View Log

! { dg-do compile }
! Tests the fix for PR30554, the USE statements in potential_energy
! would cause a segfault because the pointer_info for nfree coming
! from constraint would not find the existing symtree coming directly
! from atom.
!
! The last two modules came up subsequently to the original fix.  The
! PRIVATE statement caused a revival of the original problem.  This
! was tracked down to an interaction between the symbols being set
! referenced during module read and the application of the access
! attribute.
!
! Contributed by Tobias Burnus <burnus@gcc.gnu.org>

MODULE ATOMS
INTEGER :: NFREE = 0
END MODULE ATOMS

MODULE CONSTRAINT
USE ATOMS, ONLY: NFREE
CONTAINS
   SUBROUTINE ENERGY_CONSTRAINT ( HESSIAN )
   REAL , DIMENSION(1:(3*NFREE*(3*NFREE+1))/2):: HESSIAN
   END SUBROUTINE ENERGY_CONSTRAINT
END MODULE CONSTRAINT

MODULE POTENTIAL_ENERGY
USE ATOMS
USE CONSTRAINT,         ONLY : ENERGY_CONSTRAINT
END MODULE POTENTIAL_ENERGY

MODULE P_CONSTRAINT
USE ATOMS, ONLY: NFREE
PRIVATE
PUBLIC :: ENERGY_CONSTRAINT
CONTAINS
   SUBROUTINE ENERGY_CONSTRAINT ( HESSIAN )
   REAL , DIMENSION(1:(3*NFREE*(3*NFREE+1))/2):: HESSIAN
   END SUBROUTINE ENERGY_CONSTRAINT
END MODULE P_CONSTRAINT

MODULE P_POTENTIAL_ENERGY
USE ATOMS
USE CONSTRAINT,         ONLY : ENERGY_CONSTRAINT
END MODULE P_POTENTIAL_ENERGY

! { dg-final { cleanup-modules "atoms constraint potential_energy p_constraint p_potential_energy" } }

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.