From 05997750960ff762fa40a4364b8a2c65e60a758a Mon Sep 17 00:00:00 2001 From: Rong Tao Date: Sun, 29 May 2022 06:35:02 -0400 Subject: [PATCH] Fixed 'getElementType() is deprecated' compile warning. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit /home/rongtao/Git/bcc/src/cc/bpf_module_rw_engine.cc: In member function ‘int ebpf::BPFModule::annotate()’: /home/rongtao/Git/bcc/src/cc/bpf_module_rw_engine.cc:419:63: warning: ‘llvm::Type* llvm::PointerType::getElementType() const’ is deprecated: Pointer element types are deprecated. You can *temporarily* use Type::getPointerElementType() instead [-Wdeprecated-declarations] 419 | StructType *st = dyn_cast(pt->getElementType()); | ~~~~~~~~~~~~~~~~~~^~ In file included from /usr/include/llvm/IR/DataLayout.h:27, from /usr/include/llvm/ExecutionEngine/ExecutionEngine.h:24, from /usr/include/llvm/ExecutionEngine/MCJIT.h:17, from /home/rongtao/Git/bcc/src/cc/bpf_module_rw_engine.cc:20: /usr/include/llvm/IR/DerivedTypes.h:675:9: note: declared here 675 | Type *getElementType() const { | ^~~~~~~~~~~~~~ See llvm: [OpaquePtrs] Deprecate PointerType::getElementType() https://github.com/llvm/llvm-project/commit/184591aeeb5a531f2315c3d7cddcd199c87ecb2c Belongs to release/14.x branch. --- src/cc/bpf_module_rw_engine.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cc/bpf_module_rw_engine.cc b/src/cc/bpf_module_rw_engine.cc index 6e0fcb74..52c877e4 100644 --- a/src/cc/bpf_module_rw_engine.cc +++ b/src/cc/bpf_module_rw_engine.cc @@ -410,7 +410,7 @@ int BPFModule::annotate() { table_names_[table.name] = id++; GlobalValue *gvar = mod_->getNamedValue(table.name); if (!gvar) continue; -#if LLVM_MAJOR_VERSION >= 15 +#if LLVM_MAJOR_VERSION >= 14 { Type *t = gvar->getValueType(); StructType *st = dyn_cast(t); -- 2.34.1