diff options
| author | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2019-11-04 13:12:17 +0000 | 
|---|---|---|
| committer | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2019-11-04 13:12:17 +0000 | 
| commit | 82888b78d47ed132aee4993e00669ce7cbd963e0 (patch) | |
| tree | 6a31c882ca24e8aeae07413dd9f5caf929a4355e /clang/lib | |
| parent | 22f9429149a8faed1f5770aca89e68409ae2cc4f (diff) | |
| download | bcm5719-llvm-82888b78d47ed132aee4993e00669ce7cbd963e0.tar.gz bcm5719-llvm-82888b78d47ed132aee4993e00669ce7cbd963e0.zip  | |
[OpenCL] Fix address space for const method call from nonconst (PR43145)
Patch by Anastasia Stulova and Sven van Haastregt.
Differential Revision: https://reviews.llvm.org/D68781
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Sema/SemaOverload.cpp | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaOverload.cpp b/clang/lib/Sema/SemaOverload.cpp index 2987007f4f2..bf520f66e3a 100644 --- a/clang/lib/Sema/SemaOverload.cpp +++ b/clang/lib/Sema/SemaOverload.cpp @@ -5370,7 +5370,10 @@ Sema::PerformObjectArgumentInitialization(Expr *From,    if (!Context.hasSameType(From->getType(), DestType)) {      CastKind CK; -    if (FromRecordType.getAddressSpace() != DestType.getAddressSpace()) +    QualType PteeTy = DestType->getPointeeType(); +    LangAS DestAS = +        PteeTy.isNull() ? DestType.getAddressSpace() : PteeTy.getAddressSpace(); +    if (FromRecordType.getAddressSpace() != DestAS)        CK = CK_AddressSpaceConversion;      else        CK = CK_NoOp;  | 

