aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/c-decl.c3
-rw-r--r--gcc/c-parser.c1
-rw-r--r--gcc/cp/ChangeLog6
-rw-r--r--gcc/cp/parser.c3
-rw-r--r--gcc/diagnostic.c5
-rw-r--r--gcc/plugin.c2
7 files changed, 19 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cbdc1a4..9d9aba8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -4,6 +4,15 @@
output for other floating point modes.
2009-04-14 Diego Novillo <dnovillo@google.com>
+
+ * diagnostic.c (diagnostic_report_diagnostic): Do not
+ warn about loaded plugins for DK_ERROR and DK_WARNING.
+ * c-decl.c (declspecs_add_type): Move call to
+ invoke_plugin_callbacks ...
+ * c-parser.c (c_parser_declspecs): ... here.
+ * plugin.c (dump_active_plugins): Tidy output.
+
+2009-04-14 Diego Novillo <dnovillo@google.com>
Le-Chun Wu <lcwu@google.com>
* configure.ac: Add --enable-plugin support.
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index c5f573a..6226203 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -7262,9 +7262,6 @@ struct c_declspecs *
declspecs_add_type (struct c_declspecs *specs, struct c_typespec spec)
{
tree type = spec.spec;
-
- invoke_plugin_callbacks (PLUGIN_FINISH_TYPE, type);
-
specs->non_sc_seen_p = true;
specs->declspecs_seen_p = true;
specs->type_seen_p = true;
diff --git a/gcc/c-parser.c b/gcc/c-parser.c
index 1443bc5..7887391 100644
--- a/gcc/c-parser.c
+++ b/gcc/c-parser.c
@@ -1553,6 +1553,7 @@ c_parser_declspecs (c_parser *parser, struct c_declspecs *specs,
attrs_ok = true;
seen_type = true;
t = c_parser_struct_or_union_specifier (parser);
+ invoke_plugin_callbacks (PLUGIN_FINISH_TYPE, t.spec);
declspecs_add_type (specs, t);
break;
case RID_TYPEOF:
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 23d135b..aa0ef54 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,9 @@
+2009-04-14 Diego Novillo <dnovillo@google.com>
+
+ * parser.c (cp_parser_type_specifier_seq): Move call to
+ invoke_plugin_callbacks ...
+ (cp_parser_type_specifier_seq): ... here.
+
2009-04-14 Le-Chun Wu <lcwu@google.com>
* Make-lang.in: Modify dependencies of files including plugin.h.
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 8a8ca06..3dba794 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -11015,6 +11015,7 @@ cp_parser_type_specifier (cp_parser* parser,
cp_parser_parse_tentatively (parser);
/* Look for the class-specifier. */
type_spec = cp_parser_class_specifier (parser);
+ invoke_plugin_callbacks (PLUGIN_FINISH_TYPE, type_spec);
/* If that worked, we're done. */
if (cp_parser_parse_definitely (parser))
{
@@ -13891,8 +13892,6 @@ cp_parser_type_specifier_seq (cp_parser* parser,
break;
}
- invoke_plugin_callbacks (PLUGIN_FINISH_TYPE, type_specifier);
-
seen_type_specifier = true;
/* The standard says that a condition can be:
diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c
index c0648cd..42a40c6f 100644
--- a/gcc/diagnostic.c
+++ b/gcc/diagnostic.c
@@ -372,10 +372,7 @@ diagnostic_report_diagnostic (diagnostic_context *context,
context->lock++;
- if ((diagnostic->kind == DK_ERROR
- || diagnostic->kind == DK_WARNING
- || diagnostic->kind == DK_ICE)
- && plugins_active_p ())
+ if (diagnostic->kind == DK_ICE && plugins_active_p ())
{
fnotice (stderr, "*** WARNING *** there are active plugins, do not report"
" this as a bug unless you can reproduce it without enabling"
diff --git a/gcc/plugin.c b/gcc/plugin.c
index 93e158c..92e88a8 100644
--- a/gcc/plugin.c
+++ b/gcc/plugin.c
@@ -647,7 +647,7 @@ dump_active_plugins (FILE *file)
if (!plugins_active_p ())
return;
- fprintf (stderr, "Event\t\tPlugins\n");
+ fprintf (stderr, "Event\t\t\tPlugins\n");
for (event = PLUGIN_PASS_MANAGER_SETUP; event < PLUGIN_EVENT_LAST; event++)
if (plugin_callbacks[event])
{