OSDN Git Service

gcc/fortran:
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gfortran.dg / boz_1.f90
1 ! { dg-do run }
2 ! { dg-options "-std=gnu" }
3 ! Test the boz handling
4 program boz
5
6    implicit none
7
8    integer(1), parameter :: b1 = b'00000001'
9    integer(2), parameter :: b2 = b'0101010110101010'
10    integer(4), parameter :: b4 = b'01110000111100001111000011110000'
11    integer(8), parameter :: &
12    &  b8 = b'0111000011110000111100001111000011110000111100001111000011110000'
13
14    integer(1), parameter :: o1 = o'12'
15    integer(2), parameter :: o2 = o'4321'
16    integer(4), parameter :: o4 = o'43210765'
17    integer(8), parameter :: o8 = o'1234567076543210'
18
19    integer(1), parameter :: z1 = z'a'
20    integer(2), parameter :: z2 = z'ab'
21    integer(4), parameter :: z4 = z'dead'
22    integer(8), parameter :: z8 = z'deadbeef'
23
24    if (z1 /= 10_1) call abort
25    if (z2 /= 171_2) call abort
26    if (z4 /= 57005_4) call abort
27    if (z8 /= 3735928559_8) call abort
28
29    if (b1 /= 1_1) call abort
30    if (b2 /= 21930_2) call abort
31    if (b4 /= 1894838512_4) call abort
32    if (b8 /= 8138269444283625712_8) call abort
33
34    if (o1 /= 10_1) call abort
35    if (o2 /= 2257_2) call abort
36    if (o4 /= 9245173_4) call abort
37    if (o8 /= 45954958542472_8) call abort
38
39 end program boz