diff options
author | Ian Lance Taylor <iant@google.com> | 2006-08-04 23:10:59 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@google.com> | 2006-08-04 23:10:59 +0000 |
commit | bae7f79e03d6405f5ceec0e3e24671e6b30f29ed (patch) | |
tree | 4b9df8c6433411b45963dd75e3a6dcad9a22518e /gold/gold.h | |
parent | c17d87de17351aed016a9d0b0712cdee4cca5f9e (diff) | |
download | gdb-bae7f79e03d6405f5ceec0e3e24671e6b30f29ed.zip gdb-bae7f79e03d6405f5ceec0e3e24671e6b30f29ed.tar.gz gdb-bae7f79e03d6405f5ceec0e3e24671e6b30f29ed.tar.bz2 |
Initial CVS checkin of gold
Diffstat (limited to 'gold/gold.h')
-rw-r--r-- | gold/gold.h | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/gold/gold.h b/gold/gold.h new file mode 100644 index 0000000..757449f --- /dev/null +++ b/gold/gold.h @@ -0,0 +1,65 @@ +// gold.h -- general definitions for gold -*- C++ -*- + +#ifndef GOLD_GOLD_H + +#include "config.h" +#include "ansidecl.h" + +#ifdef ENABLE_NLS +# include <libintl.h> +# define _(String) gettext (String) +# ifdef gettext_noop +# define N_(String) gettext_noop (String) +# else +# define N_(String) (String) +# endif +#else +# define gettext(Msgid) (Msgid) +# define dgettext(Domainname, Msgid) (Msgid) +# define dcgettext(Domainname, Msgid, Category) (Msgid) +# define textdomain(Domainname) while (0) /* nothing */ +# define bindtextdomain(Domainname, Dirname) while (0) /* nothing */ +# define _(String) (String) +# define N_(String) (String) +#endif + +// Figure out how to get a hash set and a hash map. The fallback is +// to just use set and map. + +#include <tr1/unordered_set> +#include <tr1/unordered_map> + +// We need a template typedef here. + +#define Unordered_set std::tr1::unordered_set +#define Unordered_map std::tr1::unordered_map + +namespace gold +{ + +// The name of the program as used in error messages. +extern const char* program_name; + +// This function is called to exit the program. Status is true to +// exit success (0) and false to exit failure (1). +extern void +gold_exit(bool status) ATTRIBUTE_NORETURN; + +// This function is called to emit an unexpected error message and a +// newline, and then exit with failure. If PERRNO is true, it reports +// the error in errno. +extern void +gold_fatal(const char* msg, bool perrno) ATTRIBUTE_NORETURN; + +// This is function is called in some cases if we run out of memory. +extern void +gold_nomem() ATTRIBUTE_NORETURN; + +// This function is called in cases which can not arise if the code is +// written correctly. +extern void +gold_unreachable() ATTRIBUTE_NORETURN; + +} // End namespace gold. + +#endif // !defined(GOLD_GOLD_H) |