forked from OSchip/llvm-project
parent
67a2f1e4dc
commit
72c00dfa74
|
@ -353,7 +353,7 @@ available in C.
|
|||
|
||||
int isdigit(int c);
|
||||
int isdigit(int c) __attribute__((enable_if(c <= -1 || c > 255, "chosen when 'c' is out of range"))) __attribute__((unavailable("'c' must have the value of an unsigned char or EOF")));
|
||||
|
||||
|
||||
void foo(char c) {
|
||||
isdigit(c);
|
||||
isdigit(10);
|
||||
|
@ -406,7 +406,7 @@ overload out of a number of viable overloads using enable_if.
|
|||
|
||||
void f() __attribute__((enable_if(true, ""))); // #1
|
||||
void f() __attribute__((enable_if(true, ""))) __attribute__((enable_if(true, ""))); // #2
|
||||
|
||||
|
||||
void g(int i, int j) __attribute__((enable_if(i, ""))); // #1
|
||||
void g(int i, int j) __attribute__((enable_if(j, ""))) __attribute__((enable_if(true))); // #2
|
||||
|
||||
|
@ -918,11 +918,11 @@ default name.
|
|||
can only be placed before an @protocol or @interface declaration:
|
||||
|
||||
.. code-block:: objc
|
||||
|
||||
|
||||
__attribute__((objc_runtime_name("MyLocalName")))
|
||||
@interface Message
|
||||
@end
|
||||
|
||||
|
||||
}];
|
||||
}
|
||||
|
||||
|
@ -1228,7 +1228,7 @@ potentially-evaluated discarded-value expression that is not explicitly cast to
|
|||
.. code-block: c++
|
||||
struct [[nodiscard]] error_info { /*...*/ };
|
||||
error_info enable_missile_safety_mode();
|
||||
|
||||
|
||||
void launch_missiles();
|
||||
void test_missiles() {
|
||||
enable_missile_safety_mode(); // diagnoses
|
||||
|
@ -2702,23 +2702,23 @@ used to process multiple arguments from a single invocation from a SIMD loop
|
|||
concurrently.
|
||||
The syntax of the `declare simd` construct is as follows:
|
||||
|
||||
.. code-block:: c
|
||||
.. code-block:: none
|
||||
|
||||
#pragma omp declare simd [clause[[,] clause] ...] new-line
|
||||
[#pragma omp declare simd [clause[[,] clause] ...] new-line]
|
||||
[...]
|
||||
function definition or declaration
|
||||
#pragma omp declare simd [clause[[,] clause] ...] new-line
|
||||
[#pragma omp declare simd [clause[[,] clause] ...] new-line]
|
||||
[...]
|
||||
function definition or declaration
|
||||
|
||||
where clause is one of the following:
|
||||
|
||||
.. code-block:: c
|
||||
.. code-block:: none
|
||||
|
||||
simdlen(length)
|
||||
linear(argument-list[:constant-linear-step])
|
||||
aligned(argument-list[:alignment])
|
||||
uniform(argument-list)
|
||||
inbranch
|
||||
notinbranch
|
||||
simdlen(length)
|
||||
linear(argument-list[:constant-linear-step])
|
||||
aligned(argument-list[:alignment])
|
||||
uniform(argument-list)
|
||||
inbranch
|
||||
notinbranch
|
||||
|
||||
}];
|
||||
}
|
||||
|
@ -2734,9 +2734,9 @@ The syntax of the declare target directive is as follows:
|
|||
|
||||
.. code-block:: c
|
||||
|
||||
#pragma omp declare target new-line
|
||||
declarations-definition-seq
|
||||
#pragma omp end declare target new-line
|
||||
#pragma omp declare target new-line
|
||||
declarations-definition-seq
|
||||
#pragma omp end declare target new-line
|
||||
}];
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue