OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [gfortran.dg/] [whole_file_1.f90] - Blame information for rev 424

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

Line No. Rev Author Line
1 302 jeremybenn
! { dg-do compile }
2
! { dg-options "-fwhole-file" }
3
! Tests the fix for PR22571 in which the derived types in a, b
4
! c and d were not detected to be different.  In e and f, they
5
! are the same because they are sequence types.
6
!
7
! Contributed by Joost VandeVondele 
8
!
9
subroutine a(p)
10
  type t
11
    integer :: t1
12
  end type
13
  type(t) :: p
14
  p%t1 = 42
15
end subroutine
16
 
17
subroutine b
18
  type u
19
    integer :: u1
20
  end type
21
  type (u) :: q
22
  call a(q)  ! { dg-error "Type mismatch" }
23
  print *, q%u1
24
end subroutine
25
 
26
subroutine c(p)
27
  type u
28
    integer :: u1
29
  end type
30
  type(u) :: p
31
  p%u1 = 42
32
end subroutine
33
 
34
subroutine d
35
  type u
36
    integer :: u1
37
  end type
38
  type (u) :: q
39
  call c(q)  ! { dg-error "Type mismatch" }
40
  print *, q%u1
41
end subroutine
42
 
43
subroutine e(p)
44
  type u
45
    sequence
46
    integer :: u1
47
  end type
48
  type(u) :: p
49
  p%u1 = 42
50
end subroutine
51
 
52
subroutine f
53
  type u
54
    sequence
55
    integer :: u1
56
  end type
57
  type (u) :: q
58
  call e(q)  ! This is OK because the types are sequence.
59
  print *, q%u1
60
end subroutine

powered by: WebSVN 2.1.0

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