Sun Studio 12: OpenMP API User's Guide

Appendix A Placement of Clauses on Directives

The following table relates clauses to directives and pragmas:

Table A–1 Pragmas Where Clauses Can Appear

Clause/Pragma  

PARALLEL

DO/for

SECTIONS

SINGLE

PARALLEL DO/for

PARALLELSECTIONS

PARALLELWORKSHARE

IF

Yes 

     

Yes 

Yes 

Yes 

PRIVATE

Yes 

Yes 

Yes 

Yes 

Yes 

Yes 

Yes 

SHARED

Yes 

     

Yes 

Yes 

Yes 

FIRSTPRIVATE

Yes 

Yes 

Yes 

Yes 

Yes 

Yes 

Yes 

LASTPRIVATE

 

Yes 

Yes 

 

Yes 

Yes 

 

DEFAULT

Yes 

     

Yes 

Yes 

Yes 

REDUCTION

Yes 

Yes 

Yes 

 

Yes 

Yes 

Yes 

COPYIN

Yes 

     

Yes 

Yes 

Yes 

COPYPRIVATE

     

Yes (1) 

     

ORDERED

 

Yes 

   

Yes 

   

SCHEDULE

 

Yes 

   

Yes 

   

NOWAIT

 

Yes (2) 

Yes (2) 

Yes (2) 

     

NUM_THREADS

Yes 

     

Yes 

Yes 

Yes 

__AUTO 

Yes 

     

Yes 

Yes 

Yes 

  1. Fortran only: COPYPRIVATE can appear on the END SINGLE directive.

  2. For Fortran, a NOWAIT modifier can only appear on the END DO, END SECTIONS, END SINGLE, or END WORKSHARE directives.

  3. Only Fortran supports WORKSHARE and PARALLEL WORKSHARE.