1! RUN: %python %S/test_errors.py %s %flang_fc1 2! Check for semantic errors in get_team(), as defined in 3! section 16.9.85 of the Fortran 2018 standard 4 5program get_team_test 6 use iso_fortran_env, only: team_type, initial_team, current_team, parent_team 7 implicit none 8 9 integer n, array(1), coarray[*] 10 type(team_type) :: result_team 11 logical wrong_result_type, non_integer 12 13 !___ standard-conforming statement with no optional arguments present ___ 14 result_team = get_team() 15 16 !___ standard-conforming statements with optional level argument present ___ 17 result_team = get_team(-1) 18 result_team = get_team(-2) 19 result_team = get_team(-3) 20 result_team = get_team(initial_team) 21 result_team = get_team(current_team) 22 result_team = get_team(parent_team) 23 result_team = get_team(n) 24 result_team = get_team(array(1)) 25 result_team = get_team(array(n)) 26 result_team = get_team(coarray[1]) 27 result_team = get_team(level=initial_team) 28 result_team = get_team(level=n) 29 30 !___ non-conforming statements ___ 31 !ERROR: 'level=' argument has unacceptable rank 1 32 result_team = get_team(array) 33 34 !ERROR: Actual argument for 'level=' has bad type 'LOGICAL(4)' 35 result_team = get_team(non_integer) 36 37 !ERROR: Actual argument for 'level=' has bad type 'REAL(4)' 38 result_team = get_team(3.4) 39 40 !ERROR: too many actual arguments for intrinsic 'get_team' 41 result_team = get_team(current_team, parent_team) 42 43 !ERROR: Actual argument for 'level=' has bad type 'REAL(4)' 44 result_team = get_team(level=3.4) 45 46 !ERROR: unknown keyword argument to intrinsic 'get_team' 47 result_team = get_team(levels=initial_team) 48 49 !ERROR: repeated keyword argument to intrinsic 'get_team' 50 result_team = get_team(level=initial_team, level=parent_team) 51 52 !ERROR: No intrinsic or user-defined ASSIGNMENT(=) matches operand types LOGICAL(4) and TYPE(__builtin_team_type) 53 wrong_result_type = get_team() 54 55end program get_team_test 56