URL
                    https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
                
            Subversion Repositories openrisc_me
[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [gfortran.dg/] [equiv_constraint_2.f90] - Rev 302
Compare with Previous | Blame | View Log
! { dg-do compile }! { dg-options "-std=f95" }!! PR20901 - Checks resolution of types in EQUIVALENCE statement when! f95 standard is imposed.!! Contributed by Paul Thomas <pault@gcc.gnu.org>!type :: numeric_typesequenceinteger :: ireal :: xreal(kind=8) :: dcomplex :: zlogical :: lend type numeric_typetype (numeric_type) :: my_num, thy_numtype :: numeric_type2sequenceinteger :: ireal :: xreal(kind=8) :: dcomplex :: zlogical :: lend type numeric_type2type (numeric_type2) :: his_numtype :: char_typesequencecharacter(4) :: chcharacter(4) :: cha (6)end type char_typetype (char_type) :: my_chartype :: mixed_typesequenceinteger :: i(4)character(4) :: cha (6)end type mixed_typetype (mixed_type) :: my_mixed, thy_mixedcharacter(len=4) :: chinteger :: numinteger(kind=8) :: non_defcomplex(kind=8) :: my_z, thy_z! Permitted: character with character sequence! numeric with numeric sequence! numeric sequence with numeric sequence! non-default of same type! mixed sequences of same typeequivalence (ch, my_char)equivalence (num, my_num)equivalence (my_num, his_num, thy_num)equivalence (my_z, thy_z)equivalence (my_mixed, thy_mixed)! Not permitted by the standard - OK with -std=gnuequivalence (my_mixed, my_num) ! { dg-error "with mixed components in EQUIVALENCE" }equivalence (my_z, num) ! { dg-error "Non-default type object or sequence" }equivalence (my_char, my_num) ! { dg-error "in default CHARACTER EQUIVALENCE" }equivalence (ch, my_num) ! { dg-error "in default CHARACTER EQUIVALENCE" }equivalence (my_num, ch) ! { dg-error "in default NUMERIC EQUIVALENCE" }equivalence (num, my_char) ! { dg-error "in default NUMERIC EQUIVALENCE" }equivalence (my_char, num) ! { dg-error "in default CHARACTER EQUIVALENCE" }equivalence (non_def, ch) ! { dg-error "Non-default type object or sequence" }equivalence (my_z, ch) ! { dg-error "Non-default type object or sequence" }equivalence (my_z, num) ! { dg-error "Non-default type object or sequence" }END

