Commit 734ab587649f27dcb44458cfb43cf809ffdd9fc5
1 parent
92d3cbec
Use -Wshadow=local if supported
Showing
3 changed files
with
78 additions
and
23 deletions
autofiles.sums
| 1 | -c9b8555013e70c93572e0be5f5c7c03c6b7e0680de4870010945357a02909eaa configure.ac | |
| 1 | +be950d7be6b0aa2c9c926ac43ca9478ef864b1cb2c8184fd393c9ce4c0972bcc configure.ac | |
| 2 | 2 | d3f9ee6f6f0846888d9a10fd3dad2e4b1258be84205426cf04d7cef02d61dad7 aclocal.m4 |
| 3 | 3 | b0ce6d1dba8effa47d25154b2bb56eddafc997254a0f3f903cf9b6abffc03616 libqpdf/qpdf/qpdf-config.h.in |
| 4 | 4 | 5297971a0ef90bcd5563eb3f7127a032bb76d3ae2af7258bf13479caf8983a60 m4/ax_cxx_compile_stdcxx.m4 | ... | ... |
configure
| ... | ... | @@ -785,7 +785,6 @@ enable_largefile |
| 785 | 785 | enable_ld_version_script |
| 786 | 786 | with_buildrules |
| 787 | 787 | enable_werror |
| 788 | -enable_int_warnings | |
| 789 | 788 | enable_implicit_crypto |
| 790 | 789 | enable_crypto_native |
| 791 | 790 | enable_crypto_openssl |
| ... | ... | @@ -1473,8 +1472,6 @@ Optional Features: |
| 1473 | 1472 | --enable-ld-version-script |
| 1474 | 1473 | enable linker version script (default is enabled) |
| 1475 | 1474 | --enable-werror whether to treat warnings as errors (default is no) |
| 1476 | - --enable-int-warnings whether to turn on integer type warnings (default is | |
| 1477 | - yes) | |
| 1478 | 1475 | --enable-implicit-crypto |
| 1479 | 1476 | whether to enable available crypto providers that |
| 1480 | 1477 | are not explicitly requested; true by default |
| ... | ... | @@ -17631,26 +17628,70 @@ if test "$BUILDRULES" = "msvc"; then |
| 17631 | 17628 | else |
| 17632 | 17629 | try_flags="-Wconversion -Wsign-conversion" |
| 17633 | 17630 | fi |
| 17631 | +oCFLAGS=$CFLAGS | |
| 17632 | +CFLAGS="$CFLAGS $try_flags" | |
| 17634 | 17633 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for whether to use $try_flags" >&5 |
| 17635 | 17634 | $as_echo_n "checking for whether to use $try_flags... " >&6; } |
| 17636 | -# Check whether --enable-int-warnings was given. | |
| 17637 | -if test "${enable_int_warnings+set}" = set; then : | |
| 17638 | - enableval=$enable_int_warnings; if test "$enableval" = "yes"; then | |
| 17639 | - qpdf_INT_WARNINGS=1; | |
| 17640 | - else | |
| 17641 | - qpdf_INT_WARNINGS=0; | |
| 17642 | - fi | |
| 17643 | -else | |
| 17635 | +cat confdefs.h - <<_ACEOF >conftest.$ac_ext | |
| 17636 | +/* end confdefs.h. */ | |
| 17637 | + | |
| 17638 | +int | |
| 17639 | +main () | |
| 17640 | +{ | |
| 17641 | +int a = 1; int b = a; a = b; | |
| 17642 | + ; | |
| 17643 | + return 0; | |
| 17644 | +} | |
| 17645 | +_ACEOF | |
| 17646 | +if ac_fn_c_try_compile "$LINENO"; then : | |
| 17644 | 17647 | qpdf_INT_WARNINGS=1 |
| 17648 | +else | |
| 17649 | + qpdf_INT_WARNINGS=0 | |
| 17645 | 17650 | fi |
| 17646 | - | |
| 17651 | +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | |
| 17647 | 17652 | if test "$qpdf_INT_WARNINGS" = "1"; then |
| 17648 | 17653 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
| 17649 | 17654 | $as_echo "yes" >&6; } |
| 17650 | - WFLAGS="$WFLAGS $try_flags" | |
| 17655 | + CXXFLAGS="$CXXFLAGS $try_flags" | |
| 17651 | 17656 | else |
| 17652 | 17657 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
| 17653 | 17658 | $as_echo "no" >&6; } |
| 17659 | + CFLAGS=$oCFLAGS | |
| 17660 | +fi | |
| 17661 | + | |
| 17662 | +if test "$BUILDRULES" != "msvc"; then | |
| 17663 | + try_flags="-Wshadow=local" | |
| 17664 | + oCFLAGS=$CFLAGS | |
| 17665 | + CFLAGS="$CFLAGS $try_flags -Werror" | |
| 17666 | + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for whether to use $try_flags" >&5 | |
| 17667 | +$as_echo_n "checking for whether to use $try_flags... " >&6; } | |
| 17668 | + cat confdefs.h - <<_ACEOF >conftest.$ac_ext | |
| 17669 | +/* end confdefs.h. */ | |
| 17670 | + | |
| 17671 | +int | |
| 17672 | +main () | |
| 17673 | +{ | |
| 17674 | +int a = 1; int b = a; a = b; | |
| 17675 | + ; | |
| 17676 | + return 0; | |
| 17677 | +} | |
| 17678 | +_ACEOF | |
| 17679 | +if ac_fn_c_try_compile "$LINENO"; then : | |
| 17680 | + qpdf_SHADOW_WARNINGS=1 | |
| 17681 | +else | |
| 17682 | + qpdf_SHADOW_WARNINGS=0 | |
| 17683 | +fi | |
| 17684 | +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | |
| 17685 | + if test "$qpdf_SHADOW_WARNINGS" = "1"; then | |
| 17686 | + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | |
| 17687 | +$as_echo "yes" >&6; } | |
| 17688 | + CFLAGS="$oCFLAGS $try_flags" | |
| 17689 | + CXXFLAGS="$CXXFLAGS $try_flags" | |
| 17690 | + else | |
| 17691 | + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | |
| 17692 | +$as_echo "no" >&6; } | |
| 17693 | + CFLAGS=$oCFLAGS | |
| 17694 | + fi | |
| 17654 | 17695 | fi |
| 17655 | 17696 | |
| 17656 | 17697 | ... | ... |
configure.ac
| ... | ... | @@ -475,20 +475,34 @@ if test "$BUILDRULES" = "msvc"; then |
| 475 | 475 | else |
| 476 | 476 | try_flags="-Wconversion -Wsign-conversion" |
| 477 | 477 | fi |
| 478 | +oCFLAGS=$CFLAGS | |
| 479 | +CFLAGS="$CFLAGS $try_flags" | |
| 478 | 480 | AC_MSG_CHECKING(for whether to use $try_flags) |
| 479 | -AC_ARG_ENABLE(int-warnings, | |
| 480 | - AS_HELP_STRING([--enable-int-warnings], | |
| 481 | - [whether to turn on integer type warnings (default is yes)]), | |
| 482 | - [if test "$enableval" = "yes"; then | |
| 483 | - qpdf_INT_WARNINGS=1; | |
| 484 | - else | |
| 485 | - qpdf_INT_WARNINGS=0; | |
| 486 | - fi], [qpdf_INT_WARNINGS=1]) | |
| 481 | +AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int a = 1; int b = a; a = b;]])], | |
| 482 | + [qpdf_INT_WARNINGS=1],[qpdf_INT_WARNINGS=0]) | |
| 487 | 483 | if test "$qpdf_INT_WARNINGS" = "1"; then |
| 488 | 484 | AC_MSG_RESULT(yes) |
| 489 | - WFLAGS="$WFLAGS $try_flags" | |
| 485 | + CXXFLAGS="$CXXFLAGS $try_flags" | |
| 490 | 486 | else |
| 491 | 487 | AC_MSG_RESULT(no) |
| 488 | + CFLAGS=$oCFLAGS | |
| 489 | +fi | |
| 490 | + | |
| 491 | +if test "$BUILDRULES" != "msvc"; then | |
| 492 | + try_flags="-Wshadow=local" | |
| 493 | + oCFLAGS=$CFLAGS | |
| 494 | + CFLAGS="$CFLAGS $try_flags -Werror" | |
| 495 | + AC_MSG_CHECKING(for whether to use $try_flags) | |
| 496 | + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int a = 1; int b = a; a = b;]])], | |
| 497 | + [qpdf_SHADOW_WARNINGS=1],[qpdf_SHADOW_WARNINGS=0]) | |
| 498 | + if test "$qpdf_SHADOW_WARNINGS" = "1"; then | |
| 499 | + AC_MSG_RESULT(yes) | |
| 500 | + CFLAGS="$oCFLAGS $try_flags" | |
| 501 | + CXXFLAGS="$CXXFLAGS $try_flags" | |
| 502 | + else | |
| 503 | + AC_MSG_RESULT(no) | |
| 504 | + CFLAGS=$oCFLAGS | |
| 505 | + fi | |
| 492 | 506 | fi |
| 493 | 507 | |
| 494 | 508 | AC_SUBST(WINDOWS_WMAIN_XLINK_FLAGS) | ... | ... |