gdb_bfd.c contains most of gdb's BFD-related utility functions.
However, gdb_bfd_errmsg is in utils.c. It seemed better to me to move
this out of util.[ch] and into the BFD-related file instead.
Tested by rebuilding.
section_size);
}
+#define AMBIGUOUS_MESS1 ".\nMatching formats:"
+#define AMBIGUOUS_MESS2 \
+ ".\nUse \"set gnutarget format-name\" to specify the format."
+
+/* See gdb_bfd.h. */
+
+std::string
+gdb_bfd_errmsg (bfd_error_type error_tag, char **matching)
+{
+ char **p;
+
+ /* Check if errmsg just need simple return. */
+ if (error_tag != bfd_error_file_ambiguously_recognized || matching == NULL)
+ return bfd_errmsg (error_tag);
+
+ std::string ret (bfd_errmsg (error_tag));
+ ret += AMBIGUOUS_MESS1;
+
+ for (p = matching; *p; p++)
+ {
+ ret += " ";
+ ret += *p;
+ }
+ ret += AMBIGUOUS_MESS2;
+
+ xfree (matching);
+
+ return ret;
+}
+
/* A callback for htab_traverse that prints a single BFD. */
static int
return gdb_bfd_section_range (abfd->sections);
};
+/* A wrapper for bfd_errmsg to produce a more helpful error message
+ in the case of bfd_error_file_ambiguously recognized.
+ MATCHING, if non-NULL, is the corresponding argument to
+ bfd_check_format_matches, and will be freed. */
+
+extern std::string gdb_bfd_errmsg (bfd_error_type error_tag, char **matching);
+
#endif /* GDB_BFD_H */
m_argv = argv;
}
-#define AMBIGUOUS_MESS1 ".\nMatching formats:"
-#define AMBIGUOUS_MESS2 \
- ".\nUse \"set gnutarget format-name\" to specify the format."
-
-std::string
-gdb_bfd_errmsg (bfd_error_type error_tag, char **matching)
-{
- char **p;
-
- /* Check if errmsg just need simple return. */
- if (error_tag != bfd_error_file_ambiguously_recognized || matching == NULL)
- return bfd_errmsg (error_tag);
-
- std::string ret (bfd_errmsg (error_tag));
- ret += AMBIGUOUS_MESS1;
-
- for (p = matching; *p; p++)
- {
- ret += " ";
- ret += *p;
- }
- ret += AMBIGUOUS_MESS2;
-
- xfree (matching);
-
- return ret;
-}
-
/* Return ARGS parsed as a valid pid, or throw an error. */
int
return strcmp (str1, str2) < 0;
}
-/* A wrapper for bfd_errmsg to produce a more helpful error message
- in the case of bfd_error_file_ambiguously recognized.
- MATCHING, if non-NULL, is the corresponding argument to
- bfd_check_format_matches, and will be freed. */
-
-extern std::string gdb_bfd_errmsg (bfd_error_type error_tag, char **matching);
-
/* Reset the prompt_for_continue clock. */
void reset_prompt_for_continue_wait_time (void);
/* Return the time spent in prompt_for_continue. */