diff --git a/elf.cc b/elf.cc
index fb659c64408b87d512e214108d58584950605bf0..453d86724344c349d7a9a3c71085bec7f4dfeb92 100644
--- a/elf.cc
+++ b/elf.cc
@@ -190,12 +190,12 @@ namespace elf {
     template <typename T>
     T* elf_object::dynamic_ptr(unsigned tag)
     {
-        return static_cast<T*>(_base + lookup(tag).d_un.d_ptr);
+        return static_cast<T*>(_base + dynamic_tag(tag).d_un.d_ptr);
     }
 
     Elf64_Xword elf_object::dynamic_val(unsigned tag)
     {
-        return lookup(tag).d_un.d_val;
+        return dynamic_tag(tag).d_un.d_val;
     }
 
     const char* elf_object::dynamic_str(unsigned tag)
@@ -205,10 +205,10 @@ namespace elf {
 
     bool elf_object::dynamic_exists(unsigned tag)
     {
-        return _lookup(tag);
+        return _dynamic_tag(tag);
     }
 
-    Elf64_Dyn* elf_object::_lookup(unsigned tag)
+    Elf64_Dyn* elf_object::_dynamic_tag(unsigned tag)
     {
         for (auto p = _dynamic_table; p->d_tag != DT_NULL; ++p) {
             if (p->d_tag == tag) {
@@ -218,9 +218,9 @@ namespace elf {
         return nullptr;
     }
 
-    Elf64_Dyn& elf_object::lookup(unsigned tag)
+    Elf64_Dyn& elf_object::dynamic_tag(unsigned tag)
     {
-        auto r = _lookup(tag);
+        auto r = _dynamic_tag(tag);
         if (!r) {
             throw std::runtime_error("missing tag");
         }
diff --git a/elf.hh b/elf.hh
index e6ba91278a5eda275360abc67f07430dac9ec687..32bbc3367c3e5f26274d70666f7f98c36db815ea 100644
--- a/elf.hh
+++ b/elf.hh
@@ -255,8 +255,8 @@ namespace elf {
         const char* dynamic_str(unsigned tag);
         bool dynamic_exists(unsigned tag);
         std::vector<const char*> dynamic_str_array(unsigned tag);
-        Elf64_Dyn& lookup(unsigned tag);
-        Elf64_Dyn* _lookup(unsigned tag);
+        Elf64_Dyn& dynamic_tag(unsigned tag);
+        Elf64_Dyn* _dynamic_tag(unsigned tag);
         Elf64_Sym* symbol(unsigned idx);
         Elf64_Xword symbol_module(unsigned idx);
         void relocate_rela();