From: Eric Botcazou Date: Sat, 19 Jul 2014 19:30:11 +0000 (+0000) Subject: * toplev.c (output_stack_usage): Adjust the location of the warning. X-Git-Tag: releases/gcc-5.1.0~6197 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0c92e4881a61a2483c2878f9953ff92188e9661e;p=thirdparty%2Fgcc.git * toplev.c (output_stack_usage): Adjust the location of the warning. From-SVN: r212850 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e8c926a8e4ea..2edfb6740601 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2014-07-19 Eric Botcazou + + * toplev.c (output_stack_usage): Adjust the location of the warning. + 2014-07-19 Daniel Cederman * config/sparc/sync.md (*membar_storeload_leon3): New insn. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 320269429806..c879f56315fb 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2014-07-19 Eric Botcazou + + * gcc.dg/stack-usage-2.c: Adjust. + 2014-07-18 Uros Bizjak PR target/61794 diff --git a/gcc/testsuite/gcc.dg/stack-usage-2.c b/gcc/testsuite/gcc.dg/stack-usage-2.c index d3c17a84d882..df7e55f05602 100644 --- a/gcc/testsuite/gcc.dg/stack-usage-2.c +++ b/gcc/testsuite/gcc.dg/stack-usage-2.c @@ -1,33 +1,32 @@ /* { dg-do compile } */ /* { dg-options "-Wstack-usage=512" } */ -int foo1 (void) +int foo1 (void) /* { dg-bogus "stack usage" } */ { char arr[16]; arr[0] = 1; return 0; -} /* { dg-bogus "stack usage" } */ +} -int foo2 (void) +int foo2 (void) /* { dg-warning "stack usage is \[0-9\]* bytes" } */ { char arr[1024]; arr[0] = 1; return 0; -} /* { dg-warning "stack usage is \[0-9\]* bytes" } */ +} -int foo3 (void) +int foo3 (void) /* { dg-warning "stack usage might be \[0-9\]* bytes" } */ { char arr[1024] __attribute__((aligned (512))); arr[0] = 1; /* Force dynamic realignment of argument pointer. */ __builtin_apply ((void (*)()) foo2, 0, 0); return 0; +} -} /* { dg-warning "stack usage might be \[0-9\]* bytes" } */ - -int foo4 (int n) +int foo4 (int n) /* { dg-warning "stack usage might be unbounded" } */ { char arr[n]; arr[0] = 1; return 0; -} /* { dg-warning "stack usage might be unbounded" } */ +} diff --git a/gcc/toplev.c b/gcc/toplev.c index 9e747e50b7ec..1c9befdaa60f 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1052,16 +1052,19 @@ output_stack_usage (void) if (warn_stack_usage >= 0) { + const location_t loc = DECL_SOURCE_LOCATION (current_function_decl); + if (stack_usage_kind == DYNAMIC) - warning (OPT_Wstack_usage_, "stack usage might be unbounded"); + warning_at (loc, OPT_Wstack_usage_, "stack usage might be unbounded"); else if (stack_usage > warn_stack_usage) { if (stack_usage_kind == DYNAMIC_BOUNDED) - warning (OPT_Wstack_usage_, "stack usage might be %wd bytes", - stack_usage); + warning_at (loc, + OPT_Wstack_usage_, "stack usage might be %wd bytes", + stack_usage); else - warning (OPT_Wstack_usage_, "stack usage is %wd bytes", - stack_usage); + warning_at (loc, OPT_Wstack_usage_, "stack usage is %wd bytes", + stack_usage); } } }