Commit df0fc585 by Jason Merrill Committed by Jason Merrill

* tree.c (warn_deprecated_use): Return bool. Simplify logic.

From-SVN: r260290
parent 68435eb2
2018-05-16 Jason Merrill <jason@redhat.com>
* tree.c (warn_deprecated_use): Return bool. Simplify logic.
2018-05-16 Richard Biener <rguenther@suse.de>
* tree-vectorizer.h (struct stmt_info_for_cost): Add where member.
......
......@@ -12420,14 +12420,16 @@ typedef_variant_p (const_tree type)
return is_typedef_decl (TYPE_NAME (type));
}
/* Warn about a use of an identifier which was marked deprecated. */
void
/* Warn about a use of an identifier which was marked deprecated. Returns
whether a warning was given. */
bool
warn_deprecated_use (tree node, tree attr)
{
const char *msg;
if (node == 0 || !warn_deprecated_decl)
return;
return false;
if (!attr)
{
......@@ -12450,7 +12452,7 @@ warn_deprecated_use (tree node, tree attr)
else
msg = NULL;
bool w;
bool w = false;
if (DECL_P (node))
{
if (msg)
......@@ -12476,49 +12478,29 @@ warn_deprecated_use (tree node, tree attr)
what = DECL_NAME (TYPE_NAME (node));
}
if (decl)
if (what)
{
if (what)
{
if (msg)
w = warning (OPT_Wdeprecated_declarations,
"%qE is deprecated: %s", what, msg);
else
w = warning (OPT_Wdeprecated_declarations,
"%qE is deprecated", what);
}
if (msg)
w = warning (OPT_Wdeprecated_declarations,
"%qE is deprecated: %s", what, msg);
else
{
if (msg)
w = warning (OPT_Wdeprecated_declarations,
"type is deprecated: %s", msg);
else
w = warning (OPT_Wdeprecated_declarations,
"type is deprecated");
}
if (w)
inform (DECL_SOURCE_LOCATION (decl), "declared here");
w = warning (OPT_Wdeprecated_declarations,
"%qE is deprecated", what);
}
else
{
if (what)
{
if (msg)
warning (OPT_Wdeprecated_declarations, "%qE is deprecated: %s",
what, msg);
else
warning (OPT_Wdeprecated_declarations, "%qE is deprecated", what);
}
if (msg)
w = warning (OPT_Wdeprecated_declarations,
"type is deprecated: %s", msg);
else
{
if (msg)
warning (OPT_Wdeprecated_declarations, "type is deprecated: %s",
msg);
else
warning (OPT_Wdeprecated_declarations, "type is deprecated");
}
w = warning (OPT_Wdeprecated_declarations,
"type is deprecated");
}
if (w && decl)
inform (DECL_SOURCE_LOCATION (decl), "declared here");
}
return w;
}
/* Return true if REF has a COMPONENT_REF with a bit-field field declaration
......
......@@ -4828,7 +4828,7 @@ extern tree tree_strip_sign_nop_conversions (tree);
extern const_tree strip_invariant_refs (const_tree);
extern tree lhd_gcc_personality (void);
extern void assign_assembler_name_if_needed (tree);
extern void warn_deprecated_use (tree, tree);
extern bool warn_deprecated_use (tree, tree);
extern void cache_integer_cst (tree);
extern const char *combined_fn_name (combined_fn);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment