xref: /llvm-project/flang/test/Semantics/synchronization01a.f90 (revision 52601325f1a4db06510dbe12562240a018a254bd)
121dceb3cSKatherine Rasmussen! RUN: %python %S/test_errors.py %s %flang_fc1
221dceb3cSKatherine Rasmussen! This test checks for errors in sync all statements based on the
321dceb3cSKatherine Rasmussen! statement specification in section 11.6.3 of the Fortran 2018 standard.
421dceb3cSKatherine Rasmussen
521dceb3cSKatherine Rasmussenprogram test_sync_all
621dceb3cSKatherine Rasmussen  implicit none
721dceb3cSKatherine Rasmussen
821dceb3cSKatherine Rasmussen  integer sync_status
921dceb3cSKatherine Rasmussen  character(len=128) error_message
1021dceb3cSKatherine Rasmussen
1121dceb3cSKatherine Rasmussen  !___ standard-conforming statement ___
1221dceb3cSKatherine Rasmussen
1321dceb3cSKatherine Rasmussen  sync all
1421dceb3cSKatherine Rasmussen  sync all()
1521dceb3cSKatherine Rasmussen  sync all(stat=sync_status)
1621dceb3cSKatherine Rasmussen  sync all(                  errmsg=error_message)
1721dceb3cSKatherine Rasmussen  sync all(stat=sync_status, errmsg=error_message)
1821dceb3cSKatherine Rasmussen
1921dceb3cSKatherine Rasmussen  !___ non-standard-conforming statement ___
2021dceb3cSKatherine Rasmussen
2121dceb3cSKatherine Rasmussen  !______ invalid sync-stat-lists: invalid stat= ____________
2221dceb3cSKatherine Rasmussen
23*52601325SPeter Klausler  !ERROR: expected end of statement
2421dceb3cSKatherine Rasmussen  sync all(status=sync_status)
2521dceb3cSKatherine Rasmussen
2621dceb3cSKatherine Rasmussen  ! Invalid sync-stat-list: missing stat-variable
27*52601325SPeter Klausler  !ERROR: expected end of statement
2821dceb3cSKatherine Rasmussen  sync all(stat)
2921dceb3cSKatherine Rasmussen
3021dceb3cSKatherine Rasmussen  ! Invalid sync-stat-list: missing 'stat='
31*52601325SPeter Klausler  !ERROR: expected end of statement
3221dceb3cSKatherine Rasmussen  sync all(sync_status)
3321dceb3cSKatherine Rasmussen
3421dceb3cSKatherine Rasmussen  !______ invalid sync-stat-lists: invalid errmsg= ____________
3521dceb3cSKatherine Rasmussen
3621dceb3cSKatherine Rasmussen  ! Invalid errmsg-variable keyword
37*52601325SPeter Klausler  !ERROR: expected end of statement
3821dceb3cSKatherine Rasmussen  sync all(errormsg=error_message)
3921dceb3cSKatherine Rasmussen
4021dceb3cSKatherine Rasmussen  ! Invalid sync-stat-list: missing 'errmsg='
41*52601325SPeter Klausler  !ERROR: expected end of statement
4221dceb3cSKatherine Rasmussen  sync all(error_message)
4321dceb3cSKatherine Rasmussen
4421dceb3cSKatherine Rasmussen  ! Invalid sync-stat-list: missing errmsg-variable
45*52601325SPeter Klausler  !ERROR: expected end of statement
4621dceb3cSKatherine Rasmussen  sync all(errmsg)
4721dceb3cSKatherine Rasmussen
4821dceb3cSKatherine Rasmussenend program test_sync_all
49