re PR c/61852 (Incorrect column number for -Wimplicit-function-declaration)
PR c/61852 * c-decl.c (implicit_decl_warning): Add location_t parameter. Use it. (implicitly_declare): Pass location to implicit_decl_warning. * gcc.dg/pr61852.c: New test. From-SVN: r212865
This commit is contained in:
parent
55d1bd5957
commit
30281de2ce
4 changed files with 27 additions and 6 deletions
|
@ -1,3 +1,9 @@
|
|||
2014-07-20 Marek Polacek <polacek@redhat.com>
|
||||
|
||||
PR c/61852
|
||||
* c-decl.c (implicit_decl_warning): Add location_t parameter. Use it.
|
||||
(implicitly_declare): Pass location to implicit_decl_warning.
|
||||
|
||||
2014-07-14 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR middle-end/61294
|
||||
|
|
|
@ -2951,18 +2951,18 @@ pushdecl_top_level (tree x)
|
|||
}
|
||||
|
||||
static void
|
||||
implicit_decl_warning (tree id, tree olddecl)
|
||||
implicit_decl_warning (location_t loc, tree id, tree olddecl)
|
||||
{
|
||||
if (warn_implicit_function_declaration)
|
||||
{
|
||||
bool warned;
|
||||
|
||||
if (flag_isoc99)
|
||||
warned = pedwarn (input_location, OPT_Wimplicit_function_declaration,
|
||||
warned = pedwarn (loc, OPT_Wimplicit_function_declaration,
|
||||
"implicit declaration of function %qE", id);
|
||||
else
|
||||
warned = warning (OPT_Wimplicit_function_declaration,
|
||||
G_("implicit declaration of function %qE"), id);
|
||||
warned = warning_at (loc, OPT_Wimplicit_function_declaration,
|
||||
G_("implicit declaration of function %qE"), id);
|
||||
if (olddecl && warned)
|
||||
locate_old_decl (olddecl);
|
||||
}
|
||||
|
@ -3015,7 +3015,7 @@ implicitly_declare (location_t loc, tree functionid)
|
|||
then recycle the old declaration but with the new type. */
|
||||
if (!C_DECL_IMPLICIT (decl))
|
||||
{
|
||||
implicit_decl_warning (functionid, decl);
|
||||
implicit_decl_warning (loc, functionid, decl);
|
||||
C_DECL_IMPLICIT (decl) = 1;
|
||||
}
|
||||
if (DECL_BUILT_IN (decl))
|
||||
|
@ -3052,7 +3052,7 @@ implicitly_declare (location_t loc, tree functionid)
|
|||
DECL_EXTERNAL (decl) = 1;
|
||||
TREE_PUBLIC (decl) = 1;
|
||||
C_DECL_IMPLICIT (decl) = 1;
|
||||
implicit_decl_warning (functionid, 0);
|
||||
implicit_decl_warning (loc, functionid, 0);
|
||||
asmspec_tree = maybe_apply_renaming_pragma (decl, /*asmname=*/NULL);
|
||||
if (asmspec_tree)
|
||||
set_user_assembler_name (decl, TREE_STRING_POINTER (asmspec_tree));
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2014-07-20 Marek Polacek <polacek@redhat.com>
|
||||
|
||||
PR c/61852
|
||||
* gcc.dg/pr61852.c: New test.
|
||||
|
||||
2014-07-19 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gcc.dg/stack-usage-2.c: Adjust.
|
||||
|
|
10
gcc/testsuite/gcc.dg/pr61852.c
Normal file
10
gcc/testsuite/gcc.dg/pr61852.c
Normal file
|
@ -0,0 +1,10 @@
|
|||
/* PR c/61852 */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-Wimplicit-function-declaration" } */
|
||||
|
||||
int
|
||||
f (int a)
|
||||
{
|
||||
int b = a + a + a + ff (a); /* { dg-warning "23:implicit declaration of function" } */
|
||||
return b;
|
||||
}
|
Loading…
Add table
Reference in a new issue