/llvm-project/flang/test/Semantics/ |
H A D | associated.f90 | 20 type(t1), pointer :: t1ptr(:) 53 integer, pointer :: objPtrFunc 59 procedure(intFunc), pointer :: procPtrFunc 64 real, pointer, intent(in out) :: assumedRank(..) 69 real, pointer :: realScalarPtr, realVecPtr(:), realMatPtr(:,:) 70 integer, pointer :: intPointerVar1 71 integer, pointer :: intPointerVar2 74 procedure(intFunc), pointer :: intprocPointer1 75 procedure(intFunc), pointer :: intprocPointer2 77 procedure(realFunc), pointer :: realprocPointer1 [all …]
|
H A D | symbol15.f90 | 2 ! Forward references in pointer initializers and TBP bindings. 12 !DEF: /m/op1 POINTER, PUBLIC ObjectEntity REAL(4) 13 real, pointer :: op1 14 !DEF: /m/op2 POINTER, PUBLIC ObjectEntity REAL(4) 16 real, pointer :: op2 => null() 17 !DEF: /m/op3 POINTER, PUBLIC ObjectEntity REAL(4) 19 real, pointer :: op3 => x 20 !DEF: /m/op4 POINTER, PUBLIC ObjectEntity REAL(4) 22 real, pointer :: op4 => y(1) 24 !DEF: /m/pp1 EXTERNAL, POINTER, PUBLIC (Subroutine) ProcEntity [all …]
|
H A D | assign02.f90 | 2 ! Pointer assignment constraints 10.2.2.2 16 !ERROR: 'p1' may not have both the POINTER and TARGET attributes 17 real, pointer :: p1, p3 18 !ERROR: 'p2' may not have both the POINTER and ALLOCATABLE attributes 20 !ERROR: 'sin' may not have both the POINTER and INTRINSIC attributes 21 real, intrinsic, pointer :: sin 23 pointer :: p2 24 !ERROR: 'a' may not have the POINTER attribute because it is a coarray 25 real, pointer :: a(:)[*] 33 real, pointer :: p [all …]
|
H A D | assign03.f90 | 2 ! Pointer assignment constraints 10.2.2.2 (see also assign02.f90) 5 procedure(),pointer,save :: p 15 procedure(s), pointer, nopass :: p 16 real, pointer :: q 24 !ERROR: The left-hand side of a pointer assignment is not definable 25 !BECAUSE: Procedure pointer 'p' may not be a coindexed object 32 !ERROR: In assignment to object pointer 'q', the target 's' is a procedure designator 38 a%p => f() ! OK: pointer-valued function 39 !ERROR: Subroutine pointer 'p' may not be associated with function designator 'f' 43 procedure(s), pointer [all...] |
H A D | init01.f90 | 11 real, pointer :: x6 17 real, pointer :: c5 23 real, pointer :: p1 => x1 25 real, pointer :: p2 => x2 27 real, pointer :: p3 => x3 29 real, pointer :: p4 => x4 31 real, pointer :: p5 => x5(j) 32 !ERROR: Pointer has rank 0 but target has rank 1 33 real, pointer :: p6 => x5 34 !ERROR: An initial data target may not be a reference to a POINTER 'x6' [all …]
|
H A D | resolve61.f90 | 4 pointer(a, b) 5 !ERROR: 'b' cannot be a Cray pointer as it is already a Cray pointee 6 pointer(b, c) 7 !ERROR: 'a' cannot be a Cray pointee as it is already a Cray pointer 8 pointer(d, a) 12 pointer(a, c) 14 pointer(b, c) 19 !ERROR: Cray pointer 'a' must have type INTEGER(8) 20 pointer(a, b) 27 pointer(a, b), (c, d) [all …]
|
H A D | resolve114.f90 | 37 !PORTABILITY: Procedure pointer 'p1' should not have an ELEMENTAL intrinsic as its interface 38 procedure(sin), pointer :: p1 => sin 39 !PORTABILITY: Procedure pointer 'p2' should not have an ELEMENTAL intrinsic as its interface 40 procedure(iabs), pointer :: p2 => iabs 41 procedure(ext1), pointer :: p3 => ext1 42 procedure(ext2), pointer :: p4 => ext2 49 !PORTABILITY: Procedure pointer 'p1' should not have an ELEMENTAL intrinsic as its interface 50 procedure(iface1), pointer :: p1 => x1 51 !PORTABILITY: Procedure pointer 'p2' should not have an ELEMENTAL intrinsic as its interface 52 procedure(iface2), pointer :: p2 => x2 [all …]
|
H A D | call05.f90 | 2 ! Test 15.5.2.5 constraints and restrictions for POINTER & ALLOCATABLE 15 type(t), pointer :: mp(:), mpmat(:,:) 17 class(t), pointer :: pp(:) 19 class(t2), pointer :: pp2(:) 21 class(*), pointer :: up(:) 24 type(pdt(*)), pointer :: amp(:) 27 type(pdt(:)), pointer :: dmp(:) 29 type(pdt(1)), pointer :: nmp(:) 35 type(t), pointer :: x(:) 41 class(t), pointer [all...] |
/llvm-project/clang/docs/ |
H A D | PointerAuthentication.rst | 1 Pointer Authentication 10 Pointer authentication is a technology which offers strong probabilistic 17 While pointer authentication can be implemented purely in software, direct 19 performance and code size. Similarly, while pointer authentication 23 disabling pointer authentication dynamically). This document will generally 24 attempt to present the pointer authentication feature independent of any 30 - **Pointer authentication** is a target-independent language technology. 32 - **PAuth** (sometimes referred to as **PAC**, for Pointer Authentication 34 for pointer authentication. Additional extensions either modify some of the 40 - **arm64e** is a specific ABI (not yet fully stable) for implementing pointer [all …]
|
H A D | BoundsSafety.rst | 21 ``__counted_by(N)`` annotation to parameter ``ptr``, indicating that the pointer 29 pointer dereference, ensuring that the program does not access memory outside 73 In our model, every pointer has an explicit or implicit bounds attribute that 93 A bounds annotation defines an invariant for the pointer type, and the model 94 ensures that this invariant remains true. In the example below, pointer ``p`` 98 out-of-bounds access to the pointer. To avoid this, the compiler employs 117 incorporates the concept of a "wide pointer" (a.k.a. fat pointer) – a larger 118 pointer that carries bounds information alongside the pointer valu [all...] |
/llvm-project/clang/test/SemaCXX/ |
H A D | nullability.cpp | 9 # error smart-pointer feature should be defined 19 // Nullability applies to all pointer types. 22 typedef nullptr_t _Nonnull nonnull_nullptr_t; // expected-error{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'nullptr_t' (aka 'std::nullptr_t')}} 32 typedef _Nonnull T type; // expected-error{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'int'}} 33 // expected-error@-1{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'std::nullptr_t'}} 34 // expected-error@-2{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'NotPtr'}} 73 typedef _Nonnull AddNonNull<T> invalid1; // expected-error{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'AddNonNull<T>'}} 74 typedef _Nonnull AddNonNull2 invalid2; // expected-error{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'AddNonNull2<T>'}} 75 typedef _Nonnull AddNonNull2<T> invalid3; // expected-error{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'AddNonNull2<T>'}} 80 typedef _Nonnull AddNonNull<T> (*invalid4); // expected-error{{nullability specifier '_Nonnull' cannot be applied to non-pointer typ [all...] |
H A D | warn-bad-memaccess.cpp | 35 // expected-warning {{destination for this 'memset' call is a pointer to dynamic class}} \ in test_warn() 36 // expected-note {{explicitly cast the pointer to silence this warning}} in test_warn() 38 // expected-warning {{destination for this 'memset' call is a pointer to dynamic class}} \ in test_warn() 39 // expected-note {{explicitly cast the pointer to silence this warning}} in test_warn() 42 // expected-warning {{destination for this 'memset' call is a pointer to dynamic class}} \ in test_warn() 43 // expected-note {{explicitly cast the pointer to silence this warning}} in test_warn() 46 …ted-warning{{destination for this 'memmove' call is a pointer to dynamic class 'X1'; vtable pointe… in test_warn() 47 // expected-note {{explicitly cast the pointer to silence this warning}} in test_warn() 49 … expected-warning{{source of this 'memmove' call is a pointer to dynamic class 'X1'; vtable pointe… in test_warn() 50 // expected-note {{explicitly cast the pointer to silence this warning}} in test_warn() [all …]
|
H A D | warn-undefined-bool-conversion.cpp | 9 …ning@-1{{reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer … in test1() 12 …ning@-1{{reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer … in test1() 20 …// expected-warning@-1{{'this' pointer cannot be null in well-defined C++ code; pointer may be ass… in foo() 23 …// expected-warning@-1{{'this' pointer cannot be null in well-defined C++ code; pointer may be ass… in foo() 29 …ning@-1{{reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer … in bar() 32 …ning@-1{{reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer … in bar() 52 …ning@-1{{reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer … in test() 54 …ning@-1{{reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer … in test() 56 …ning@-1{{reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer … in test() 59 …ning@-1{{reference cannot be bound to dereferenced null pointer in well-defined C++ code; pointer … in test() [all …]
|
/llvm-project/clang/test/Analysis/ |
H A D | smart-ptr-text-output.cpp | 26 std::unique_ptr<A> P; // expected-note {{Default constructed smart pointer 'P' is null}} in derefAfterDefaultCtr() 27 P->foo(); // expected-warning {{Dereference of null smart pointer 'P' [alpha.cplusplus.SmartPtr]}} in derefAfterDefaultCtr() 28 // expected-note@-1{{Dereference of null smart pointer 'P'}} in derefAfterDefaultCtr() 32 A *NullInnerPtr = nullptr; // expected-note {{'NullInnerPtr' initialized to a null pointer value}} in derefAfterCtrWithNull() 33 …std::unique_ptr<A> P(NullInnerPtr); // expected-note {{Smart pointer 'P' is constructed using a nu… in derefAfterCtrWithNull() 34 *P; // expected-warning {{Dereference of null smart pointer 'P' [alpha.cplusplus.SmartPtr]}} in derefAfterCtrWithNull() 35 // expected-note@-1{{Dereference of null smart pointer 'P'}} in derefAfterCtrWithNull() 39 A *NullInnerPtr = nullptr; // expected-note {{'NullInnerPtr' initialized to a null pointer value}} in derefAfterCtrWithNullVariable() 40 …std::unique_ptr<A> P(NullInnerPtr); // expected-note {{Smart pointer 'P' is constructed using a nu… in derefAfterCtrWithNullVariable() 41 P->foo(); // expected-warning {{Dereference of null smart pointer 'P' [alpha.cplusplus.SmartPtr]}} in derefAfterCtrWithNullVariable() [all …]
|
H A D | ctor-bug-path.cpp | 9 S(int *a, int *b) : p1(a), p2(b) {} // expected-note{{Null pointer value stored to 's.p1'}} in S() 14 // expected-note@-1{{'x' initialized to a null pointer value}} in CtorDirect() 17 // expected-note@-1{{Passing null pointer value via 1st parameter 'a'}} in CtorDirect() 21 S s2 = s; // expected-note{{Null pointer value stored to 's2.p1'}} in CtorDirect() 23 S s3 = s2; // expected-note{{Null pointer value stored to 's3.p1'}} in CtorDirect() 25 S s4 = std::move(s3); // expected-note{{Null pointer value stored to 's4.p1'}} in CtorDirect() 27 S s5 = s4; // expected-note{{Null pointer value stored to 's5.p1'}} in CtorDirect() 29 int i = *s5.p1; // expected-warning{{Dereference of null pointer}} in CtorDirect() 30 // expected-note@-1{{Dereference of null pointer (loaded from field 'p1')}} in CtorDirect() 42 int *x = nullptr, *y = nullptr; //expected-note{{'x' initialized to a null pointer value}} in InitListDirect() [all …]
|
H A D | inner-pointer.cpp | 43 c = s.c_str(); // expected-note {{Pointer to inner buffer of 'std::string' obtained here}} in deref_after_scope_char() 44 d = s.data(); // expected-note {{Pointer to inner buffer of 'std::string' obtained here}} in deref_after_scope_char() 54 consume(c); // expected-warning {{Inner pointer of container used after re/deallocation}} in deref_after_scope_char() 55 // expected-note@-1 {{Inner pointer of container used after re/deallocation}} in deref_after_scope_char() 57 consume(d); // expected-warning {{Inner pointer of container used after re/deallocation}} in deref_after_scope_char() 58 // expected-note@-1 {{Inner pointer of container used after re/deallocation}} in deref_after_scope_char() 66 c = s.data(); // expected-note {{Pointer to inner buffer of 'std::string' obtained here}} in deref_after_scope_char_data_non_const() 70 consume(c); // expected-warning {{Inner pointer of container used after re/deallocation}} in deref_after_scope_char_data_non_const() 71 // expected-note@-1 {{Inner pointer of container used after re/deallocation}} in deref_after_scope_char_data_non_const() 78 c = s.c_str(); // expected-note {{Pointer to inner buffer of 'std::wstring' obtained here}} in deref_after_scope_wchar_t() [all …]
|
/llvm-project/flang/runtime/ |
H A D | pointer.cpp | 1 //===-- runtime/pointer.cpp -----------------------------------------------===// 9 #include "flang/Runtime/pointer.h" 22 void RTDEF(PointerNullifyIntrinsic)(Descriptor &pointer, TypeCategory category, in RTDEF() 25 pointer.Establish(TypeCode{category, kind}, in RTDEF() 30 void RTDEF(PointerNullifyCharacter)(Descriptor &pointer, SubscriptValue length, in RTDEF() 33 pointer.Establish( in RTDEF() 37 void RTDEF(PointerNullifyDerived)(Descriptor &pointer, in RTDEF() 40 pointer.Establish(derivedType, nullptr, rank, nullptr, CFI_attribute_pointer); in RTDEF() 43 void RTDEF(PointerSetBounds)(Descriptor &pointer, int zeroBasedDim, in RTDEF() 45 INTERNAL_CHECK(zeroBasedDim >= 0 && zeroBasedDim < pointer.rank()); in RTDEF() [all …]
|
/llvm-project/mlir/include/mlir/Dialect/SPIRV/IR/ |
H A D | SPIRVAtomicOps.td | 20 class PointeeTypeMatchTrait<string pointer, string name> 22 "`" # name # "` type matches pointee type of " # "`" # pointer # "`", 23 pointer, name, "llvm::cast<PointerType>($_self).getPointeeType()">; 30 [PointeeTypeMatchTrait<"pointer", "result">])> { 32 SPIRV_AnyPtr:$pointer, 42 $memory_scope $semantics operands attr-dict `:` type($pointer) 50 PointeeTypeMatchTrait<"pointer", "value">, 51 PointeeTypeMatchTrait<"pointer", "result">, 54 SPIRV_AnyPtr:$pointer, 65 $memory_scope $semantics operands attr-dict `:` type($pointer) [all …]
|
/llvm-project/clang/test/SemaObjCXX/Inputs/ |
H A D | nullability-pragmas-1.h | 11 void f1(int *x); // expected-warning{{pointer is missing a nullability type specifier}} 12 // expected-note@-1{{insert '_Nullable' if the pointer may be null}} 13 // expected-note@-2{{insert '_Nonnull' if the pointer should never be null}} 43 void f18(A **); // expected-warning 2{{pointer is missing a nullability type specifier}} 44 // expected-note@-1 2 {{insert '_Nullable' if the pointer may be null}} 45 // expected-note@-2 2 {{insert '_Nonnull' if the pointer should never be null}} 46 void f19(CFErrorRefPtr error); // expected-warning{{pointer is missing a nullability type specifier… 47 // expected-note@-1{{insert '_Nullable' if the pointer may be null}} 48 // expected-note@-2{{insert '_Nonnull' if the pointer should never be null}} 51 void g2(int (^ *bp)(int, int)); // expected-warning{{block pointer is missing a nullability type sp… [all …]
|
/llvm-project/flang/docs/ |
H A D | ProcedurePointer.md | 9 # Procedure Pointer 11 A procedure pointer is a procedure that has the EXTERNAL and POINTER attributes. 17 to LLVM IR, and thus will not be lowering the procedure-pointer-related 30 - 8.5.14: POINTER attribute 32 - A procedure pointer shall not be referenced unless it is pointer associated 37 - (4) A procedure pointer declared in the scoping unit of a main program, 41 - 10.2.2.2 Pointer assignment statement 44 - 10.2.2.4 Procedure pointer assignment 50 - A procedure pointer may be pointer associated with an external procedure, an 52 procedure that is not a procedure pointer. [all …]
|
/llvm-project/clang/test/SemaObjC/ |
H A D | comptypes-7.m | 24 /* The incompatible pointer types should all generate warnings, while the 25 incompatible integer to/from pointer conversions default to an error. */ 27 …obj = i; // expected-error {{incompatible integer to pointer conversion assigning to 'id' from 'in… 28 obj = j; // expected-warning {{incompatible pointer types assigning to 'id' from 'int *'}} 30 …obj_p = i; // expected-error {{incompatible integer to pointer conversion assigning to 'id<MyProto… 31 …obj_p = j; // expected-warning {{incompatible pointer types assigning to 'id<MyProtocol>' from 'in… 33 …obj_c = i; // expected-error {{incompatible integer to pointer conversion assigning to 'MyClass *'… 34 …obj_c = j; // expected-warning {{incompatible pointer types assigning to 'MyClass *' from 'int *'}} 36 …obj_C = i; // expected-error {{incompatible integer to pointer conversion assigning to 'Class' fro… 37 obj_C = j; // expected-warning {{incompatible pointer types assigning to 'Class' from 'int *'}} [all …]
|
/llvm-project/clang-tools-extra/test/clang-tidy/checkers/bugprone/ |
H A D | compare-pointer-to-member-virtual-function.cpp | 1 // RUN: %check_clang_tidy %s bugprone-compare-pointer-to-member-virtual-function %t 19 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in base() 22 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in base() 27 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in base() 31 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in base() 35 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in base() 41 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in base() 53 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in usingRecordName() 57 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in usingRecordName() 65 …rning: comparing a pointer to member virtual function with other pointer is unspecified behavior, … in typedefRecordName() [all …]
|
/llvm-project/clang/lib/AST/Interp/ |
H A D | Pointer.h |
|
/llvm-project/clang/test/SemaObjCXX/ |
H A D | comptypes-7.mm | 26 …obj = i; // expected-error {{incompatible integer to pointer conversion assigning to 'id' from 'in… 27 obj = j; // expected-error {{incompatible pointer types assigning to 'id' from 'int *'}} 29 …obj_p = i; // expected-error {{incompatible integer to pointer conversion assigning to 'id<MyProto… 30 …obj_p = j; // expected-error {{incompatible pointer types assigning to 'id<MyProtocol>' from 'int … 32 …obj_c = i; // expected-error {{incompatible integer to pointer conversion assigning to 'MyClass *'… 33 obj_c = j; // expected-error {{incompatible pointer types assigning to 'MyClass *' from 'int *'}} 35 …obj_C = i; // expected-error {{incompatible integer to pointer conversion assigning to 'Class' fro… 36 obj_C = j; // expected-error {{incompatible pointer types assigning to 'Class' from 'int *'}} 38 …i = obj; // expected-error {{incompatible pointer to integer conversion assigning to 'int' from … 39 …i = obj_p; // expected-error {{incompatible pointer to integer conversion assigning to 'int' from … [all …]
|
/llvm-project/clang/test/Sema/ |
H A D | nullability.c | 41 // Nullability applies to all pointer types. 45 // Nullability must be on a pointer type. 46 …; // expected-error{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'int'}} 48 // Nullability can move out to a pointer/block pointer declarator 77 …; // expected-error{{nullability specifier '_Nonnull' cannot be applied to non-pointer type 'int'}} 89 int * _Nonnull ip_1 = &f; // expected-warning{{incompatible pointer types initializing 'int * _Nonn… 94 …float *fptr = iptr; // expected-warning{{incompatible pointer types initializing 'float *' with an… in printing_nullability() 97 …float **fptrptr = iptrptr; // expected-warning{{incompatible pointer types initializing 'float **'… in printing_nullability() 100 …float * *fptrptr2 = iptrptr2; // expected-warning{{incompatible pointer types initializing 'float … in printing_nullability() 126 …expected-warning{{implicit conversion from nullable pointer 'int * _Nullable' to non-nullable poin… in nullable_to_nonnull() [all …]
|