re PR plugins/44459 (plugin interface depends on name mangling)
PR plugins/44459: * gcc-plugin.h: Encapsulate all declarations in extern "C". From-SVN: r160448
This commit is contained in:
parent
6903fcbd9b
commit
f1c3bf869c
|
@ -1,3 +1,8 @@
|
|||
2010-06-09 Joern Rennecke <joern.rennecke@embecosm.com>
|
||||
|
||||
PR plugins/44459:
|
||||
* gcc-plugin.h: Encapsulate all declarations in extern "C".
|
||||
|
||||
2010-06-08 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* basic-block.h (single_succ_edge, single_pred_edge, ei_container,
|
||||
|
|
|
@ -38,6 +38,12 @@ enum plugin_event
|
|||
PLUGIN_EVENT_FIRST_DYNAMIC
|
||||
};
|
||||
|
||||
/* All globals declared here have C linkage to reduce link compatibility
|
||||
issues with implementation language choice and mangling. */
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern const char **plugin_event_name;
|
||||
|
||||
struct plugin_argument
|
||||
|
@ -96,16 +102,10 @@ extern bool plugin_default_version_check (struct plugin_gcc_version *,
|
|||
typedef int (*plugin_init_func) (struct plugin_name_args *plugin_info,
|
||||
struct plugin_gcc_version *version);
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
/* Declaration for "plugin_init" function so that it doesn't need to be
|
||||
duplicated in every plugin. */
|
||||
extern int plugin_init (struct plugin_name_args *plugin_info,
|
||||
struct plugin_gcc_version *version);
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Function type for a plugin callback routine.
|
||||
|
||||
|
@ -147,4 +147,8 @@ extern int unregister_callback (const char *plugin_name, int event);
|
|||
-iplugindir program argument to cc1. */
|
||||
extern const char* default_plugin_dir_name (void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* GCC_PLUGIN_H */
|
||||
|
|
Loading…
Reference in New Issue