From 54eec4c00d25cbb30a3e589f1b3a4ebaa72c81a0 Mon Sep 17 00:00:00 2001 From: Ted Kremenek Date: Thu, 29 May 2008 21:52:26 +0000 Subject: [PATCH] Fix one strict-aliasing warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51707 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/AST/CFG.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/AST/CFG.cpp b/lib/AST/CFG.cpp index aad9ee7ada..ba6a6c8552 100644 --- a/lib/AST/CFG.cpp +++ b/lib/AST/CFG.cpp @@ -1177,17 +1177,17 @@ typedef llvm::FoldingSet BlkEdgeSetTy; const std::pair* CFG::getBlockEdgeImpl(const CFGBlock* B1, const CFGBlock* B2) { - llvm::BumpPtrAllocator*& Alloc = - reinterpret_cast(Allocator); + if (!Allocator) + Allocator = new llvm::BumpPtrAllocator(); - if (!Alloc) - Alloc = new llvm::BumpPtrAllocator(); + llvm::BumpPtrAllocator* Alloc = + static_cast(Allocator); - BlkEdgeSetTy*& p = reinterpret_cast(BlkEdgeSet); + if (!BlkEdgeSet) + BlkEdgeSet = new BlkEdgeSetTy(); + + BlkEdgeSetTy* p = static_cast(BlkEdgeSet); - if (!p) - p = new BlkEdgeSetTy(); - // Profile the edges. llvm::FoldingSetNodeID profile; void* InsertPos; -- 2.40.0