system.h (GCC_DIAGNOSTIC_PUSH_IGNORED, [...]): Define.

* system.h (GCC_DIAGNOSTIC_PUSH_IGNORED, GCC_DIAGNOSTIC_POP,
	GCC_DIAGNOSTIC_STRINGIFY): Define.

	* simplify.c (simplify_transformation_to_array): Use
	GCC_DIAGNOSTIC_PUSH_IGNORED and GCC_DIAGNOSTIC_POP instead of
	#pragma GCC diagnostic {push,ignored,pop}.

From-SVN: r244179
This commit is contained in:
Jakub Jelinek 2017-01-06 19:41:23 +01:00 committed by Jakub Jelinek
parent 9a38f84e27
commit 75213cc0e4
4 changed files with 23 additions and 3 deletions

View File

@ -1,5 +1,8 @@
2017-01-06 Jakub Jelinek <jakub@redhat.com>
* system.h (GCC_DIAGNOSTIC_PUSH_IGNORED, GCC_DIAGNOSTIC_POP,
GCC_DIAGNOSTIC_STRINGIFY): Define.
* read-rtl.c (rtx_reader::read_rtx_code): Avoid -Wsign-compare
warning.

View File

@ -1,3 +1,9 @@
2017-01-06 Jakub Jelinek <jakub@redhat.com>
* simplify.c (simplify_transformation_to_array): Use
GCC_DIAGNOSTIC_PUSH_IGNORED and GCC_DIAGNOSTIC_POP instead of
#pragma GCC diagnostic {push,ignored,pop}.
2017-01-06 Alexandre Oliva <aoliva@redhat.com>
* simplify.c (simplify_transformation_to_array): Silence

View File

@ -610,18 +610,17 @@ simplify_transformation_to_array (gfc_expr *result, gfc_expr *array, gfc_expr *d
n++;
if (n < result->rank)
{
#pragma GCC diagnostic push
/* If the nested loop is unrolled GFC_MAX_DIMENSIONS
times, we'd warn for the last iteration, because the
array index will have already been incremented to the
array sizes, and we can't tell that this must make
the test against result->rank false, because ranks
must not exceed GFC_MAX_DIMENSIONS. */
#pragma GCC diagnostic ignored "-Warray-bounds"
GCC_DIAGNOSTIC_PUSH_IGNORED (-Warray-bounds)
count[n]++;
base += sstride[n];
dest += dstride[n];
#pragma GCC diagnostic pop
GCC_DIAGNOSTIC_POP
}
else
done = true;

View File

@ -1140,6 +1140,18 @@ helper_const_non_const_cast (const char *p)
#define VALGRIND_FREELIKE_BLOCK(x,y)
#endif
/* Macros to temporarily ignore some warnings. */
#if GCC_VERSION >= 6000
#define GCC_DIAGNOSTIC_STRINGIFY(x) #x
#define GCC_DIAGNOSTIC_PUSH_IGNORED(x) \
_Pragma ("GCC diagnostic push") \
_Pragma (GCC_DIAGNOSTIC_STRINGIFY (GCC diagnostic ignored #x))
#define GCC_DIAGNOSTIC_POP _Pragma ("GCC diagnostic pop")
#else
#define GCC_DIAGNOSTIC_PUSH_IGNORED(x)
#define GCC_DIAGNOSTIC_POP
#endif
/* In LTO -fwhole-program build we still want to keep the debug functions available
for debugger. Mark them as used to prevent removal. */
#if (GCC_VERSION > 4000)