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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gfortran.dg/] [binding_label_tests.f03] - Blame information for rev 774

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

Line No. Rev Author Line
1 694 jeremybenn
! { dg-do compile }
2
module binding_label_tests
3
  use, intrinsic :: iso_c_binding
4
  implicit none
5
 
6
  contains
7
 
8
  subroutine c_sub() BIND(c, name = "C_Sub")
9
    print *, 'hello from c_sub'
10
  end subroutine c_sub
11
 
12
  integer(c_int) function c_func() bind(C, name="__C_funC")
13
    print *, 'hello from c_func'
14
    c_func = 1
15
  end function c_func
16
 
17
  real(c_float) function f90_func()
18
    print *, 'hello from f90_func'
19
    f90_func = 1.0
20
  end function f90_func
21
 
22
  real(c_float) function c_real_func() bind(c)
23
    print *, 'hello from c_real_func'
24
    c_real_func = 1.5
25
  end function c_real_func
26
 
27
  integer function f90_func_0() result ( f90_func_0_result )
28
    print *, 'hello from f90_func_0'
29
    f90_func_0_result = 0
30
  end function f90_func_0
31
 
32
  integer(c_int) function f90_func_1() result ( f90_func_1_result ) bind(c, name="__F90_Func_1__")
33
    print *, 'hello from f90_func_1'
34
    f90_func_1_result = 1
35
  end function f90_func_1
36
 
37
  integer(c_int) function f90_func_3() result ( f90_func_3_result ) bind(c)
38
    print *, 'hello from f90_func_3'
39
    f90_func_3_result = 3
40
  end function f90_func_3
41
 
42
  integer(c_int) function F90_func_2() bind(c) result ( f90_func_2_result )
43
    print *, 'hello from f90_func_2'
44
    f90_func_2_result = 2
45
  end function f90_func_2
46
 
47
  integer(c_int) function F90_func_4() bind(c, name="F90_func_4") result ( f90_func_4_result )
48
    print *, 'hello from f90_func_4'
49
    f90_func_4_result = 4
50
  end function f90_func_4
51
 
52
  integer(c_int) function F90_func_5() bind(c, name="F90_func_5") result ( f90_func_5_result )
53
    print *, 'hello from f90_func_5'
54
    f90_func_5_result = 5
55
  end function f90_func_5
56
 
57
  subroutine c_sub_2() bind(c, name='c_sub_2')
58
    print *, 'hello from c_sub_2'
59
  end subroutine c_sub_2
60
 
61
  subroutine c_sub_3() BIND(c, name = "  C_Sub_3  ")
62
    print *, 'hello from c_sub_3'
63
  end subroutine c_sub_3
64
 
65
  subroutine c_sub_5() BIND(c, name = "C_Sub_5        ")
66
    print *, 'hello from c_sub_5'
67
  end subroutine c_sub_5
68
 
69
  ! nothing between the quotes except spaces, so name="".
70
  ! the name will get set to the regularly mangled version of the name.
71
  ! perhaps it should be marked with some characters that are invalid for
72
  ! C names so C can not call it?
73
  subroutine sub4() BIND(c, name = "        ")
74
  end subroutine sub4
75
end module binding_label_tests
76
 
77
! { dg-final { cleanup-modules "binding_label_tests" } }

powered by: WebSVN 2.1.0

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