2 Copyright 1988-2022 Free Software Foundation, Inc.
3 This is part of the GCC manual.
4 For copying conditions, see the copyright.rst file.
11 New features listed in Appendix B of the OpenMP specification
12 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
22 * - ``omp_in_explicit_task`` routine and *explicit-task-var* ICV
25 * - ``omp`` / ``ompx`` / ``omx`` sentinels and ``omp_`` / ``ompx_`` namespaces
27 - warning for ``ompx/omx`` sentinels [#f1]_
28 * - Clauses on ``end`` directive can be on directive
31 * - Deprecation of no-argument ``destroy`` clause on ``depobj``
34 * - ``linear`` clause syntax changes and ``step`` modifier
37 * - Deprecation of minus operator for reductions
40 * - Deprecation of separating ``map`` modifiers without comma
43 * - ``declare mapper`` with iterator and ``present`` modifiers
46 * - If a matching mapped list item is not found in the data environment, the pointer retains its original value
49 * - New ``enter`` clause as alias for ``to`` on declare target directive
52 * - Deprecation of ``to`` clause on declare target directive
55 * - Extended list of directives permitted in Fortran pure procedures
58 * - New ``allocators`` directive for Fortran
61 * - Deprecation of ``allocate`` directive for Fortran allocatables/pointers
64 * - Optional paired ``end`` directive with ``dispatch``
67 * - New ``memspace`` and ``traits`` modifiers for ``uses_allocators``
70 * - Deprecation of traits array following the allocator_handle expression in ``uses_allocators``
73 * - New ``otherwise`` clause as alias for ``default`` on metadirectives
76 * - Deprecation of ``default`` clause on metadirectives
79 * - Deprecation of delimited form of ``declare target``
82 * - Reproducible semantics changed for ``order(concurrent)``
85 * - ``allocate`` and ``firstprivate`` clauses on ``scope``
88 * - ``ompt_callback_work``
91 * - Default map-type for ``map`` clause in ``target enter/exit data``
94 * - New ``doacross`` clause as alias for ``depend`` with ``source`` / ``sink`` modifier
97 * - Deprecation of ``depend`` with ``source`` / ``sink`` modifier
100 * - ``omp_cur_iteration`` keyword
104 .. [#f1] The ``ompx`` sentinel as C/C++ pragma and C++ attributes are warned for with ``-Wunknown-pragmas`` (implied by ``-Wall``) and ``-Wattributes`` (enabled by default), respectively; for Fortran free-source code, there is a warning enabled by default and, for fixed-source code, the ``omx`` sentinel is warned for with with ``-Wsurprising`` (enabled by ``-Wall``). Unknown clauses are always rejected with an error.
106 Other new OpenMP 5.2 features
107 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
117 * - For Fortran, optional comma between directive and clause
120 * - Conforming device numbers and ``omp_initial_device`` and ``omp_invalid_device`` enum/PARAMETER
123 * - Initial value of *default-device-var* ICV with ``OMP_TARGET_OFFLOAD=mandatory``
126 * - *interop_types* in any position of the modifier list for the ``init`` clause of the ``interop`` construct
131 OpenMP Runtime Library Routines