@@ -88,24 +88,12 @@ typedef enum caf_deregister_t
88
88
CAF_DEREGTYPE_COARRAY_DEALLOCATE_ONLY
89
89
} caf_deregister_t ;
90
90
91
+ /** The opaque type to represent a coarray token. */
91
92
typedef void * caf_token_t ;
92
- /** Add a dummy type representing teams in coarrays. */
93
93
94
+ /** The opaque type for teams. */
94
95
typedef void * caf_team_t ;
95
96
96
- typedef struct caf_teams_list
97
- {
98
- caf_team_t team ;
99
- int team_id ;
100
- struct caf_teams_list * prev ;
101
- } caf_teams_list ;
102
-
103
- typedef struct caf_used_teams_list
104
- {
105
- struct caf_teams_list * team_list_elem ;
106
- struct caf_used_teams_list * prev ;
107
- } caf_used_teams_list ;
108
-
109
97
/* When there is a vector subscript in this dimension, nvec == 0, otherwise,
110
98
lower_bound, upper_bound, stride contains the bounds relative to the declared
111
99
bounds; kind denotes the integer kind of the elements of vector[]. */
@@ -359,11 +347,20 @@ void PREFIX(error_stop)(int QUIETARG) __attribute__((noreturn));
359
347
360
348
void PREFIX (fail_image )(void ) __attribute__((noreturn ));
361
349
350
+ #ifdef GCC_GE_15
351
+ void PREFIX (form_team )(int , caf_team_t * , int * , int * , char * , charlen_t );
352
+ void PREFIX (change_team )(caf_team_t , int * , char * , charlen_t );
353
+ void PREFIX (end_team )(int * , char * , charlen_t );
354
+ void PREFIX (sync_team )(caf_team_t , int * , char * , charlen_t );
355
+ int PREFIX (team_number )(caf_team_t );
356
+ caf_team_t PREFIX (get_team )(int * );
357
+ #else
362
358
void PREFIX (form_team )(int , caf_team_t * , int );
363
359
void PREFIX (change_team )(caf_team_t * , int );
364
360
void PREFIX (end_team )(caf_team_t * );
365
361
void PREFIX (sync_team )(caf_team_t * , int );
366
362
int PREFIX (team_number )(caf_team_t * );
363
+ #endif
367
364
368
365
int PREFIX (image_status )(int );
369
366
void PREFIX (failed_images )(gfc_descriptor_t * , int , int * );
0 commit comments