| ! PR fortran/96859 |
| ! { dg-do run } |
| |
| program pr96859 |
| if (merge_bits(32767_2, o'1234567', 32767_2).ne.32767_2) stop 1 |
| if (merge_bits(o'1234567', 32767_2, o'1234567').ne.32767_2) stop 2 |
| if (merge_bits(32767_2, o'1234567', b'010101').ne.14711_2) stop 3 |
| if (merge_bits(32767_2, o'1234567', z'12345678').ne.32639_2) stop 4 |
| if (int (o'1034567', 2).ne.14711_2) stop 5 |
| if (int (o'1234567', 2).ne.14711_2) stop 6 |
| if (int (o'1434567', 2).ne.14711_2) stop 7 |
| if (int (o'1634567', 2).ne.14711_2) stop 8 |
| if (int (o'1134567', 2).ne.-18057_2) stop 9 |
| if (int (o'1334567', 2).ne.-18057_2) stop 10 |
| if (int (o'1534567', 2).ne.-18057_2) stop 11 |
| if (int (o'1734567', 2).ne.-18057_2) stop 12 |
| if (int (o'70123456776543211234567', 8).ne.1505855851274254711_8) stop 13 |
| if (int (o'72123456776543211234567', 8).ne.1505855851274254711_8) stop 14 |
| if (int (o'74123456776543211234567', 8).ne.1505855851274254711_8) stop 15 |
| if (int (o'76123456776543211234567', 8).ne.1505855851274254711_8) stop 16 |
| if (int (o'71123456776543211234567', 8).ne.-7717516185580521097_8) stop 17 |
| if (int (o'73123456776543211234567', 8).ne.-7717516185580521097_8) stop 18 |
| if (int (o'75123456776543211234567', 8).ne.-7717516185580521097_8) stop 19 |
| if (int (o'77123456776543211234567', 8).ne.-7717516185580521097_8) stop 20 |
| end |