Inline two single-use templates.

Change-Id: Ie1b22479128f9a4b8ece08a433ee5943a1d04c11
diff --git a/linker/linker_main.cpp b/linker/linker_main.cpp
index f65f82d..40f6b9a 100644
--- a/linker/linker_main.cpp
+++ b/linker/linker_main.cpp
@@ -435,9 +435,12 @@
     ++ld_preloads_count;
   }
 
-  for_each_dt_needed(si, [&](const char* name) {
-    needed_library_name_list.push_back(name);
-  });
+  for (const ElfW(Dyn)* d = si->dynamic; d->d_tag != DT_NULL; ++d) {
+    if (d->d_tag == DT_NEEDED) {
+      const char* name = fix_dt_needed(si->get_string(d->d_un.d_val), si->get_realpath());
+      needed_library_name_list.push_back(name);
+    }
+  }
 
   const char** needed_library_names = &needed_library_name_list[0];
   size_t needed_libraries_count = needed_library_name_list.size();