* mapfile.cc: New file.
[deliverable/binutils-gdb.git] / gold / gold.h
index 6a96f1bc498bb0820b3fffcec796b41a2dc8d09f..03e73d3c023704adf6dc2cd0fb9e684ef25c5b01 100644 (file)
@@ -26,6 +26,9 @@
 #include "config.h"
 #include "ansidecl.h"
 
+#include <cstddef>
+#include <sys/types.h>
+
 #ifdef ENABLE_NLS
 # include <libintl.h>
 # define _(String) gettext (String)
@@ -112,6 +115,7 @@ class Command_line;
 class Input_argument_list;
 class Dirsearch;
 class Input_objects;
+class Mapfile;
 class Symbol;
 class Symbol_table;
 class Layout;
@@ -154,13 +158,25 @@ gold_error(const char* msg, ...) ATTRIBUTE_PRINTF_1;
 extern void
 gold_warning(const char* msg, ...) ATTRIBUTE_PRINTF_1;
 
+// This function is called to print an informational message.
+extern void
+gold_info(const char* msg, ...) ATTRIBUTE_PRINTF_1;
+
+// Work around a bug in gcc 4.3.0.  http://gcc.gnu.org/PR35546 .  This
+// can probably be removed after the bug has been fixed for a while.
+#ifdef HAVE_TEMPLATE_ATTRIBUTES
+#define TEMPLATE_ATTRIBUTE_PRINTF_4 ATTRIBUTE_PRINTF_4
+#else
+#define TEMPLATE_ATTRIBUTE_PRINTF_4
+#endif
+
 // This function is called to issue an error at the location of a
 // reloc.
 template<int size, bool big_endian>
 extern void
 gold_error_at_location(const Relocate_info<size, big_endian>*,
                       size_t, off_t, const char* format, ...)
-  ATTRIBUTE_PRINTF_4;
+  TEMPLATE_ATTRIBUTE_PRINTF_4;
 
 // This function is called to issue a warning at the location of a
 // reloc.
@@ -168,7 +184,7 @@ template<int size, bool big_endian>
 extern void
 gold_warning_at_location(const Relocate_info<size, big_endian>*,
                         size_t, off_t, const char* format, ...)
-  ATTRIBUTE_PRINTF_4;
+  TEMPLATE_ATTRIBUTE_PRINTF_4;
 
 // This function is called to report an undefined symbol.
 template<int size, bool big_endian>
@@ -226,7 +242,8 @@ queue_initial_tasks(const General_options&,
                    Workqueue*,
                    Input_objects*,
                    Symbol_table*,
-                   Layout*);
+                   Layout*,
+                   Mapfile*);
 
 // Queue up the middle set of tasks.
 extern void
@@ -235,7 +252,8 @@ queue_middle_tasks(const General_options&,
                   const Input_objects*,
                   Symbol_table*,
                   Layout*,
-                  Workqueue*);
+                  Workqueue*,
+                  Mapfile*);
 
 // Queue up the final set of tasks.
 extern void
This page took 0.02453 seconds and 4 git commands to generate.