diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2022-02-12 11:14:19 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2022-02-12 11:14:19 +0000 |
commit | 5e27487fc992cece0d703f0bd83480381764b77b (patch) | |
tree | ad13f27604ff9e637b493ba671c834624d07a42a | |
parent | 869c066ca8a4231b950b5367f90758de0c6768a3 (diff) |
[clang][sema] TryStaticCast - use castAs<> instead of getAs<> to avoid dereference of nullptr
The pointer is referenced immediately, so assert the cast is correct instead of returning nullptr
-rw-r--r-- | clang/lib/Sema/SemaCast.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaCast.cpp b/clang/lib/Sema/SemaCast.cpp index e9c1116257d6..7d580dc5b6b3 100644 --- a/clang/lib/Sema/SemaCast.cpp +++ b/clang/lib/Sema/SemaCast.cpp @@ -1356,7 +1356,7 @@ static TryCastResult TryStaticCast(Sema &Self, ExprResult &SrcExpr, if (SrcType->isIntegralOrEnumerationType()) { // [expr.static.cast]p10 If the enumeration type has a fixed underlying // type, the value is first converted to that type by integral conversion - const EnumType *Enum = DestType->getAs<EnumType>(); + const EnumType *Enum = DestType->castAs<EnumType>(); Kind = Enum->getDecl()->isFixed() && Enum->getDecl()->getIntegerType()->isBooleanType() ? CK_IntegralToBoolean |