1! { dg-do compile }
2! { dg-options "-fmax-errors=40" }
3! PR33162 INTRINSIC functions as ACTUAL argument
4! Prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org>
5program double_specs
6
7real(kind=4) :: rr, x, y
8real(kind=8) :: dr, dx, dy
9
10x = .5
11y = .7
12dx = .5d0
13dy = .5d0
14
15r = dabs(x) ! { dg-error "must be double precision" }
16r = dacos(x) ! { dg-error "must be double precision" }
17r = dacosh(x) ! { dg-error "must be double precision" }
18r = dasin(x) ! { dg-error "must be double precision" }
19r = dasinh(x) ! { dg-error "must be double precision" }
20r = datan(x) ! { dg-error "must be double precision" }
21r = datanh(x) ! { dg-error "must be double precision" }
22r = datan2(y, dx) ! { dg-error "must be double precision" }
23r = datan2(dy, x) ! { dg-error "must be double precision" }
24r = dbesj0(x) ! { dg-error "must be double precision" }
25r = dbesj1(x) ! { dg-error "must be double precision" }
26r = dbesy0(x) ! { dg-error "must be double precision" }
27r = dbesy1(x) ! { dg-error "must be double precision" }
28r = dcos(x) ! { dg-error "must be double precision" }
29r = dcosh(x) ! { dg-error "must be double precision" }
30r = ddim(x, dy) ! { dg-error "must be double precision" }
31r = ddim(dx, y) ! { dg-error "must be double precision" }
32r = derf(x) ! { dg-error "must be double precision" }
33r = derfc(x) ! { dg-error "must be double precision" }
34r = dexp(x) ! { dg-error "must be double precision" }
35r = dgamma(x) ! { dg-error "must be double precision" }
36r = dlgama(x) ! { dg-error "must be double precision" }
37r = dlog(x) ! { dg-error "must be double precision" }
38r = dlog10(x) ! { dg-error "must be double precision" }
39r = dmod(x, dy) ! { dg-error "must be double precision" }
40r = dmod(dx, y) ! { dg-error "must be double precision" }
41r = dsign(x, dy) ! { dg-error "must be double precision" }
42r = dsign(dx, y) ! { dg-error "must be double precision" }
43r = dsin(x) ! { dg-error "must be double precision" }
44r = dsinh(x) ! { dg-error "must be double precision" }
45r = dsqrt(x) ! { dg-error "must be double precision" }
46r = dtan(x) ! { dg-error "must be double precision" }
47r = dtanh(x) ! { dg-error "must be double precision" }
48dr = dprod(dx,y) ! { dg-error "must be default real" }
49dr = dprod(x,dy) ! { dg-error "must be default real" }
50dr = dprod(x,y)
51
52end program double_specs