aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2005-03-18 20:47:27 +0000
committerJoseph Myers <jsm28@gcc.gnu.org>2005-03-18 20:47:27 +0000
commitc51a1ba9d9c605bcc8f9ddb34965708037457f68 (patch)
tree079951eb2db644175096b5fcc82f3144eb9b7381
parent33156717fa04cfb12d1b2c70ba1bdcd236e5a6b9 (diff)
downloadgcc-c51a1ba9d9c605bcc8f9ddb34965708037457f68.zip
gcc-c51a1ba9d9c605bcc8f9ddb34965708037457f68.tar.gz
gcc-c51a1ba9d9c605bcc8f9ddb34965708037457f68.tar.bz2
c-common.c, [...]: Use %D for declarations in diagnostics and %E for identifiers, not %s.
* c-common.c, c-decl.c, c-format.c, c-typeck.c: Use %D for declarations in diagnostics and %E for identifiers, not %s. From-SVN: r96701
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/c-common.c79
-rw-r--r--gcc/c-decl.c42
-rw-r--r--gcc/c-format.c3
-rw-r--r--gcc/c-typeck.c36
5 files changed, 76 insertions, 89 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 73d0409..a35d258 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-03-18 Joseph S. Myers <joseph@codesourcery.com>
+
+ * c-common.c, c-decl.c, c-format.c, c-typeck.c: Use %D for
+ declarations in diagnostics and %E for identifiers, not %s.
+
2005-03-18 Jan Hubicka <jh@suse.cz>
Dale Johannesen <dalej@apple.com>
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 313b554..6517286 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -1146,8 +1146,7 @@ warn_for_collisions_1 (tree written, tree writer, struct tlist *list,
&& DECL_NAME (list->expr))
{
warned_ids = new_tlist (warned_ids, written, NULL_TREE);
- warning ("operation on %qs may be undefined",
- IDENTIFIER_POINTER (DECL_NAME (list->expr)));
+ warning ("operation on %qE may be undefined", list->expr);
}
list = list->next;
}
@@ -3958,7 +3957,7 @@ handle_packed_attribute (tree *node, tree name, tree ARG_UNUSED (args),
that changes what the typedef is typing. */
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -3977,7 +3976,7 @@ handle_nocommon_attribute (tree *node, tree name,
DECL_COMMON (*node) = 0;
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -3995,7 +3994,7 @@ handle_common_attribute (tree *node, tree name, tree ARG_UNUSED (args),
DECL_COMMON (*node) = 1;
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4022,7 +4021,7 @@ handle_noreturn_attribute (tree *node, tree name, tree ARG_UNUSED (args),
TYPE_READONLY (TREE_TYPE (type)), 1));
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4041,7 +4040,7 @@ handle_noinline_attribute (tree *node, tree name,
DECL_UNINLINABLE (*node) = 1;
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4064,7 +4063,7 @@ handle_always_inline_attribute (tree *node, tree name,
}
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4088,7 +4087,7 @@ handle_used_attribute (tree *pnode, tree name, tree ARG_UNUSED (args),
}
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4114,7 +4113,7 @@ handle_unused_attribute (tree *node, tree name, tree ARG_UNUSED (args),
TREE_USED (decl) = 1;
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
}
@@ -4148,7 +4147,7 @@ handle_const_attribute (tree *node, tree name, tree ARG_UNUSED (args),
TREE_THIS_VOLATILE (TREE_TYPE (type))));
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4192,7 +4191,7 @@ handle_transparent_union_attribute (tree *node, tree name,
DECL_TRANSPARENT_UNION (decl) = 1;
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4220,7 +4219,7 @@ handle_constructor_attribute (tree *node, tree name,
}
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4248,7 +4247,7 @@ handle_destructor_attribute (tree *node, tree name,
}
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4267,7 +4266,7 @@ handle_mode_attribute (tree *node, tree name, tree args,
*no_add_attrs = true;
if (TREE_CODE (TREE_VALUE (args)) != IDENTIFIER_NODE)
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
else
{
int j;
@@ -4598,7 +4597,7 @@ handle_alias_attribute (tree *node, tree name, tree args,
}
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4622,14 +4621,13 @@ handle_visibility_attribute (tree *node, tree name, tree args,
{
if (TREE_CODE (*node) != RECORD_TYPE && TREE_CODE (*node) != UNION_TYPE)
{
- warning ("%qs attribute ignored on non-class types",
- IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored on non-class types", name);
return NULL_TREE;
}
}
else if (decl_function_context (decl) != 0 || !TREE_PUBLIC (decl))
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
return NULL_TREE;
}
@@ -4721,7 +4719,7 @@ handle_tls_model_attribute (tree *node, tree name, tree args,
if (!DECL_THREAD_LOCAL (decl))
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
else
@@ -4788,7 +4786,7 @@ handle_malloc_attribute (tree *node, tree name, tree ARG_UNUSED (args),
/* ??? TODO: Support types. */
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4806,7 +4804,7 @@ handle_returns_twice_attribute (tree *node, tree name, tree ARG_UNUSED (args),
DECL_IS_RETURNS_TWICE (*node) = 1;
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4852,7 +4850,7 @@ handle_pure_attribute (tree *node, tree name, tree ARG_UNUSED (args),
/* ??? TODO: Support types. */
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -4882,7 +4880,7 @@ handle_deprecated_attribute (tree *node, tree name,
{
tree type = NULL_TREE;
int warn = 0;
- const char *what = NULL;
+ tree what = NULL_TREE;
if (DECL_P (*node))
{
@@ -4914,17 +4912,15 @@ handle_deprecated_attribute (tree *node, tree name,
if (type && TYPE_NAME (type))
{
if (TREE_CODE (TYPE_NAME (type)) == IDENTIFIER_NODE)
- what = IDENTIFIER_POINTER (TYPE_NAME (*node));
+ what = TYPE_NAME (*node);
else if (TREE_CODE (TYPE_NAME (type)) == TYPE_DECL
&& DECL_NAME (TYPE_NAME (type)))
- what = IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (type)));
+ what = DECL_NAME (TYPE_NAME (type));
}
if (what)
- warning ("%qs attribute ignored for %qs",
- IDENTIFIER_POINTER (name), what);
+ warning ("%qE attribute ignored for %qE", name, what);
else
- warning ("%qs attribute ignored",
- IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
}
return NULL_TREE;
@@ -4952,7 +4948,7 @@ handle_vector_size_attribute (tree *node, tree name, tree args,
if (!host_integerp (size, 1))
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
return NULL_TREE;
}
@@ -4981,8 +4977,7 @@ handle_vector_size_attribute (tree *node, tree name, tree args,
&& GET_MODE_CLASS (orig_mode) != MODE_INT)
|| !host_integerp (TYPE_SIZE_UNIT (type), 1))
{
- error ("invalid vector type for attribute %qs",
- IDENTIFIER_POINTER (name));
+ error ("invalid vector type for attribute %qE", name);
return NULL_TREE;
}
@@ -5231,7 +5226,7 @@ handle_nothrow_attribute (tree *node, tree name, tree ARG_UNUSED (args),
/* ??? TODO: Support types. */
else
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -5254,7 +5249,7 @@ handle_cleanup_attribute (tree *node, tree name, tree args,
we'd be missing too much, since we do have attribute constructor. */
if (TREE_CODE (decl) != VAR_DECL || TREE_STATIC (decl))
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
return NULL_TREE;
}
@@ -5293,7 +5288,7 @@ handle_warn_unused_result_attribute (tree *node, tree name,
/* Ignore the attribute for functions not returning any value. */
if (VOID_TYPE_P (TREE_TYPE (*node)))
{
- warning ("%qs attribute ignored", IDENTIFIER_POINTER (name));
+ warning ("%qE attribute ignored", name);
*no_add_attrs = true;
}
@@ -5310,8 +5305,7 @@ handle_sentinel_attribute (tree *node, tree name, tree args,
if (!params)
{
- warning ("%qs attribute requires prototypes with named arguments",
- IDENTIFIER_POINTER (name));
+ warning ("%qE attribute requires prototypes with named arguments", name);
*no_add_attrs = true;
}
else
@@ -5321,8 +5315,7 @@ handle_sentinel_attribute (tree *node, tree name, tree args,
if (VOID_TYPE_P (TREE_VALUE (params)))
{
- warning ("%qs attribute only applies to variadic functions",
- IDENTIFIER_POINTER (name));
+ warning ("%qE attribute only applies to variadic functions", name);
*no_add_attrs = true;
}
}
@@ -5567,8 +5560,8 @@ c_parse_error (const char *msgid, enum cpp_ttype token, tree value)
message = catenate_messages (msgid, " before numeric constant");
else if (token == CPP_NAME)
{
- message = catenate_messages (msgid, " before %qs");
- error (message, IDENTIFIER_POINTER (value));
+ message = catenate_messages (msgid, " before %qE");
+ error (message, value);
free (message);
message = NULL;
}
@@ -5712,7 +5705,7 @@ fold_offsetof_1 (tree expr)
if (DECL_C_BIT_FIELD (t))
{
error ("attempt to take address of bit-field structure "
- "member %qs", IDENTIFIER_POINTER (DECL_NAME (t)));
+ "member %qD", t);
return error_mark_node;
}
off = size_binop (PLUS_EXPR, DECL_FIELD_OFFSET (t),
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index eee7b66..103b50d 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -2370,8 +2370,7 @@ lookup_label (tree name)
if (current_function_decl == 0)
{
- error ("label %qs referenced outside of any function",
- IDENTIFIER_POINTER (name));
+ error ("label %qE referenced outside of any function", name);
return 0;
}
@@ -2413,7 +2412,7 @@ declare_label (tree name)
at this scope */
if (b && B_IN_CURRENT_SCOPE (b))
{
- error ("duplicate label declaration %qs", IDENTIFIER_POINTER (name));
+ error ("duplicate label declaration %qE", name);
locate_old_decl (b->decl, error);
/* Just use the previous declaration. */
@@ -2471,8 +2470,7 @@ define_label (location_t location, tree name)
if (warn_traditional && !in_system_header && lookup_name (name))
warning ("%Htraditional C lacks a separate namespace for labels, "
- "identifier %qs conflicts", &location,
- IDENTIFIER_POINTER (name));
+ "identifier %qE conflicts", &location, name);
/* Mark label as having been defined. */
DECL_INITIAL (label) = error_mark_node;
@@ -2536,9 +2534,8 @@ void
pending_xref_error (void)
{
if (pending_invalid_xref != 0)
- error ("%H%qs defined as wrong kind of tag",
- &pending_invalid_xref_location,
- IDENTIFIER_POINTER (pending_invalid_xref));
+ error ("%H%qE defined as wrong kind of tag",
+ &pending_invalid_xref_location, pending_invalid_xref);
pending_invalid_xref = 0;
}
@@ -5008,18 +5005,16 @@ start_struct (enum tree_code code, tree name)
if (TYPE_SIZE (ref))
{
if (code == UNION_TYPE)
- error ("redefinition of %<union %s%>", IDENTIFIER_POINTER (name));
+ error ("redefinition of %<union %E%>", name);
else
- error ("redefinition of %<struct %s%>", IDENTIFIER_POINTER (name));
+ error ("redefinition of %<struct %E%>", name);
}
else if (C_TYPE_BEING_DEFINED (ref))
{
if (code == UNION_TYPE)
- error ("nested redefinition of %<union %s%>",
- IDENTIFIER_POINTER (name));
+ error ("nested redefinition of %<union %E%>", name);
else
- error ("nested redefinition of %<struct %s%>",
- IDENTIFIER_POINTER (name));
+ error ("nested redefinition of %<struct %E%>", name);
}
}
else
@@ -5454,14 +5449,14 @@ start_enum (tree name)
}
if (C_TYPE_BEING_DEFINED (enumtype))
- error ("nested redefinition of %<enum %s%>", IDENTIFIER_POINTER (name));
+ error ("nested redefinition of %<enum %E%>", name);
C_TYPE_BEING_DEFINED (enumtype) = 1;
if (TYPE_VALUES (enumtype) != 0)
{
/* This enum is a named one that has been declared already. */
- error ("redeclaration of %<enum %s%>", IDENTIFIER_POINTER (name));
+ error ("redeclaration of %<enum %E%>", name);
/* Completely replace its old definition.
The old enumerators remain defined, however. */
@@ -6799,7 +6794,7 @@ declspecs_add_qual (struct c_declspecs *specs, tree qual)
gcc_unreachable ();
}
if (dupe && pedantic && !flag_isoc99)
- pedwarn ("duplicate %qs", IDENTIFIER_POINTER (qual));
+ pedwarn ("duplicate %qE", qual);
return specs;
}
@@ -6950,7 +6945,7 @@ declspecs_add_type (struct c_declspecs *specs, struct c_typespec spec)
}
if (dupe)
- error ("duplicate %qs", IDENTIFIER_POINTER (type));
+ error ("duplicate %qE", type);
return specs;
}
@@ -7079,8 +7074,7 @@ declspecs_add_type (struct c_declspecs *specs, struct c_typespec spec)
{
tree t = lookup_name (type);
if (!t || TREE_CODE (t) != TYPE_DECL)
- error ("%qs fails to be a typedef or built in type",
- IDENTIFIER_POINTER (type));
+ error ("%qE fails to be a typedef or built in type", type);
else if (TREE_TYPE (t) == error_mark_node)
;
else
@@ -7112,8 +7106,7 @@ declspecs_add_scspec (struct c_declspecs *specs, tree scspec)
&& C_IS_RESERVED_WORD (scspec));
i = C_RID_CODE (scspec);
if (extra_warnings && specs->non_sc_seen_p)
- warning ("%qs is not at beginning of declaration",
- IDENTIFIER_POINTER (scspec));
+ warning ("%qE is not at beginning of declaration", scspec);
switch (i)
{
case RID_INLINE:
@@ -7162,7 +7155,7 @@ declspecs_add_scspec (struct c_declspecs *specs, tree scspec)
if (n != csc_none && n == specs->storage_class)
dupe = true;
if (dupe)
- error ("duplicate %qs", IDENTIFIER_POINTER (scspec));
+ error ("duplicate %qE", scspec);
if (n != csc_none)
{
if (specs->storage_class != csc_none && n != specs->storage_class)
@@ -7174,8 +7167,7 @@ declspecs_add_scspec (struct c_declspecs *specs, tree scspec)
specs->storage_class = n;
if (n != csc_extern && n != csc_static && specs->thread_p)
{
- error ("%<__thread%> used with %qs",
- IDENTIFIER_POINTER (scspec));
+ error ("%<__thread%> used with %qE", scspec);
specs->thread_p = false;
}
}
diff --git a/gcc/c-format.c b/gcc/c-format.c
index a0ae154..914d6cc 100644
--- a/gcc/c-format.c
+++ b/gcc/c-format.c
@@ -199,7 +199,8 @@ decode_format_attr (tree args, function_format_info *info, int validated_p)
if (info->format_type == format_type_error)
{
gcc_assert (!validated_p);
- warning ("%qs is an unrecognized format function type", p);
+ warning ("%qE is an unrecognized format function type",
+ format_type_id);
return false;
}
}
diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c
index 9c94b03..6f2a6bc 100644
--- a/gcc/c-typeck.c
+++ b/gcc/c-typeck.c
@@ -136,8 +136,7 @@ c_incomplete_type_error (tree value, tree type)
if (value != 0 && (TREE_CODE (value) == VAR_DECL
|| TREE_CODE (value) == PARM_DECL))
- error ("%qs has an incomplete type",
- IDENTIFIER_POINTER (DECL_NAME (value)));
+ error ("%qD has an incomplete type", value);
else
{
retry:
@@ -180,12 +179,11 @@ c_incomplete_type_error (tree value, tree type)
}
if (TREE_CODE (TYPE_NAME (type)) == IDENTIFIER_NODE)
- error ("invalid use of undefined type %<%s %s%>",
- type_code_string, IDENTIFIER_POINTER (TYPE_NAME (type)));
+ error ("invalid use of undefined type %<%s %E%>",
+ type_code_string, TYPE_NAME (type));
else
/* If this type has a typedef-name, the TYPE_NAME is a TYPE_DECL. */
- error ("invalid use of incomplete typedef %qs",
- IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (type))));
+ error ("invalid use of incomplete typedef %qD", TYPE_NAME (type));
}
}
@@ -1556,8 +1554,7 @@ build_component_ref (tree datum, tree component)
if (!field)
{
- error ("%qT has no member named %qs", type,
- IDENTIFIER_POINTER (component));
+ error ("%qT has no member named %qE", type, component);
return error_mark_node;
}
@@ -1592,8 +1589,8 @@ build_component_ref (tree datum, tree component)
return ref;
}
else if (code != ERROR_MARK)
- error ("request for member %qs in something not a structure or union",
- IDENTIFIER_POINTER (component));
+ error ("request for member %qE in something not a structure or union",
+ component);
return error_mark_node;
}
@@ -2811,16 +2808,16 @@ readonly_error (tree arg, enum lvalue_use use)
if (TYPE_READONLY (TREE_TYPE (TREE_OPERAND (arg, 0))))
readonly_error (TREE_OPERAND (arg, 0), use);
else
- error (READONLY_MSG (N_("assignment of read-only member %qs"),
- N_("increment of read-only member %qs"),
- N_("decrement of read-only member %qs")),
- IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (arg, 1))));
+ error (READONLY_MSG (N_("assignment of read-only member %qD"),
+ N_("increment of read-only member %qD"),
+ N_("decrement of read-only member %qD")),
+ TREE_OPERAND (arg, 1));
}
else if (TREE_CODE (arg) == VAR_DECL)
- error (READONLY_MSG (N_("assignment of read-only variable %qs"),
- N_("increment of read-only variable %qs"),
- N_("decrement of read-only variable %qs")),
- IDENTIFIER_POINTER (DECL_NAME (arg)));
+ error (READONLY_MSG (N_("assignment of read-only variable %qD"),
+ N_("increment of read-only variable %qD"),
+ N_("decrement of read-only variable %qD")),
+ arg);
else
error (READONLY_MSG (N_("assignment of read-only location"),
N_("increment of read-only location"),
@@ -5293,8 +5290,7 @@ set_init_label (tree fieldname)
}
if (tail == 0)
- error ("unknown field %qs specified in initializer",
- IDENTIFIER_POINTER (fieldname));
+ error ("unknown field %qE specified in initializer", fieldname);
else
{
constructor_fields = tail;