brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.1 KiB · c557889 Raw
54 lines · plain
1! RUN: %python %S/test_errors.py %s %flang_fc12! Check for semantic errors in sync images statements.3! Some of the errors in this test would be hidden by the errors in4! the test synchronization02a.f90 if they were included in that file,5! and are thus tested here.6 7program test_sync_images8  implicit none9 10  integer, parameter :: invalid_rank(*,*) = reshape([1], [1,1])11  integer sync_status, non_scalar(2), superfluous_stat, coindexed_integer[*]12  character(len=128) error_message, superfluous_errmsg, coindexed_character[*]13  logical invalid_type14 15  !___ non-standard-conforming statements ___16 17  ! Image set shall not depend on the value of stat-variable18  sync images(sync_status, stat=sync_status)19 20  ! Image set shall not depend on the value of errmsg-variable21  sync images(len(error_message), errmsg=error_message)22 23  !ERROR: An image-set that is an int-expr must be a scalar or a rank-one array24  sync images(invalid_rank)25 26  !ERROR: Must have INTEGER type, but is LOGICAL(4)27  sync images([1], stat=invalid_type)28 29  !ERROR: Must be a scalar value, but is a rank-1 array30  sync images(*, stat=non_scalar)31 32  !ERROR: Must have CHARACTER type, but is LOGICAL(4)33  sync images(1, errmsg=invalid_type)34 35  !ERROR: The stat-variable in a sync-stat-list may not be repeated36  sync images(1, stat=sync_status, stat=superfluous_stat)37 38  !ERROR: The stat-variable in a sync-stat-list may not be repeated39  sync images(1, stat=sync_status, errmsg=error_message, stat=superfluous_stat)40 41  !ERROR: The errmsg-variable in a sync-stat-list may not be repeated42  sync images([1], errmsg=error_message, errmsg=superfluous_errmsg)43 44  !ERROR: The errmsg-variable in a sync-stat-list may not be repeated45  sync images([1], stat=sync_status, errmsg=error_message, errmsg=superfluous_errmsg)46 47  !ERROR: The stat-variable or errmsg-variable in a sync-stat-list may not be a coindexed object48  sync images(*, stat=coindexed_integer[1])49 50  !ERROR: The stat-variable or errmsg-variable in a sync-stat-list may not be a coindexed object51  sync images(1, errmsg=coindexed_character[1])52 53end program test_sync_images54