diff options
author | Haru <haru@dotalux.com> | 2019-09-23 02:17:21 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-23 02:17:21 +0200 |
commit | 418b26dddca1d6ad9261adee56f96cf7c2c2de9b (patch) | |
tree | bd9c631b064f27f741e125a856e631dd6a13a9d6 | |
parent | 9a503ca86f8194135a86bad9070d64b21f56e2b6 (diff) | |
parent | 7ff0e074e74fd630f3bf90597605c82b4e10ec95 (diff) | |
download | hercules-418b26dddca1d6ad9261adee56f96cf7c2c2de9b.tar.gz hercules-418b26dddca1d6ad9261adee56f96cf7c2c2de9b.tar.bz2 hercules-418b26dddca1d6ad9261adee56f96cf7c2c2de9b.tar.xz hercules-418b26dddca1d6ad9261adee56f96cf7c2c2de9b.zip |
Merge pull request #2536 from MishimaHaruna/compile-fixes
Compile fixes
-rw-r--r-- | .gitlab-ci.yml | 257 | ||||
-rwxr-xr-x | configure | 90 | ||||
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | src/common/HPM.c | 5 | ||||
-rw-r--r-- | src/map/log.c | 14 | ||||
-rw-r--r-- | src/map/script.c | 2 | ||||
-rw-r--r-- | src/map/skill.c | 2 | ||||
-rw-r--r-- | src/map/status.c | 4 |
8 files changed, 270 insertions, 105 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 72dbcf1d2..438dbc267 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -35,7 +35,7 @@ variables: &base_vars pre_re:clang-3.9: <<: *branch_exceptions <<: *prerequisites - stage: primary + stage: secondary image: debian:stretch services: - mariadb:10.1 @@ -50,7 +50,7 @@ pre_re:clang-3.9: re:clang-3.9: <<: *branch_exceptions <<: *prerequisites - stage: primary + stage: secondary image: debian:stretch services: - mariadb:10.1 @@ -80,7 +80,7 @@ zero-2018:clang-3.9: pre_re:clang-4.0: <<: *branch_exceptions <<: *prerequisites - stage: secondary + stage: primary image: debian:stretch services: - mariadb:10.1 @@ -95,7 +95,7 @@ pre_re:clang-4.0: re:clang-4.0: <<: *branch_exceptions <<: *prerequisites - stage: secondary + stage: primary image: debian:stretch services: - mariadb:10.1 @@ -194,8 +194,8 @@ zero-2018:clang-5.0: pre_re:clang-6.0: <<: *branch_exceptions <<: *prerequisites - stage: primary - image: debian:unstable + stage: secondary + image: debian:buster services: - mariadb:10 variables: @@ -209,8 +209,8 @@ pre_re:clang-6.0: re:clang-6.0: <<: *branch_exceptions <<: *prerequisites - stage: primary - image: debian:unstable + stage: secondary + image: debian:buster services: - mariadb:10 variables: @@ -225,7 +225,7 @@ zero-2018:clang-6.0: <<: *branch_exceptions <<: *prerequisites stage: clients - image: debian:unstable + image: debian:buster services: - mariadb:10 variables: @@ -239,8 +239,8 @@ zero-2018:clang-6.0: pre_re:clang-7: <<: *branch_exceptions <<: *prerequisites - stage: secondary - image: debian:unstable + stage: primary + image: debian:buster services: - mariadb:10 variables: @@ -254,8 +254,8 @@ pre_re:clang-7: re:clang-7: <<: *branch_exceptions <<: *prerequisites - stage: secondary - image: debian:unstable + stage: primary + image: debian:buster services: - mariadb:10 variables: @@ -270,7 +270,7 @@ zero-2018:clang-7: <<: *branch_exceptions <<: *prerequisites stage: clients - image: debian:unstable + image: debian:buster services: - mariadb:10 variables: @@ -281,6 +281,51 @@ zero-2018:clang-7: - ./tools/ci/travis.sh build CC=clang-7 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511 - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST +pre_re:clang-8: + <<: *branch_exceptions + <<: *prerequisites + stage: secondary + image: debian:unstable + services: + - mariadb:10 + variables: + <<: *base_vars + INSTALL_PACKAGES: clang-8 mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb + script: + - ./tools/ci/travis.sh build CC=clang-8 --enable-debug --enable-Werror --enable-buildbot --disable-renewal + - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST + +re:clang-8: + <<: *branch_exceptions + <<: *prerequisites + stage: secondary + image: debian:unstable + services: + - mariadb:10 + variables: + <<: *base_vars + INSTALL_PACKAGES: clang-8 mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb + script: + - ./tools/ci/travis.sh build CC=clang-8 --enable-debug --enable-Werror --enable-buildbot + - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST + +zero-2018:clang-8: + <<: *branch_exceptions + <<: *prerequisites + stage: clients + image: debian:unstable + services: + - mariadb:10 + variables: + <<: *base_vars + INSTALL_PACKAGES: clang-8 mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb + script: + - ./tools/ci/travis.sh build CC=clang-8 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511 + - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST + pre_re:gcc-4.8: <<: *branch_exceptions <<: *prerequisites @@ -329,7 +374,7 @@ zero-2018:gcc-4.8: pre_re:gcc-4.9: <<: *branch_exceptions <<: *prerequisites - stage: primary + stage: secondary image: debian:jessie services: - mysql:5.5 @@ -344,7 +389,7 @@ pre_re:gcc-4.9: re:gcc-4.9: <<: *branch_exceptions <<: *prerequisites - stage: primary + stage: secondary image: debian:jessie services: - mysql:5.5 @@ -420,7 +465,7 @@ pre_re:gcc-7: <<: *branch_exceptions <<: *prerequisites stage: secondary - image: debian:unstable + image: debian:buster services: - mariadb:10 variables: @@ -435,7 +480,7 @@ re:gcc-7: <<: *branch_exceptions <<: *prerequisites stage: secondary - image: debian:unstable + image: debian:buster services: - mariadb:10 variables: @@ -450,7 +495,7 @@ zero-2018:gcc-7: <<: *branch_exceptions <<: *prerequisites stage: clients - image: debian:unstable + image: debian:buster services: - mariadb:10 variables: @@ -464,8 +509,8 @@ zero-2018:gcc-7: pre_re:gcc-8: <<: *branch_exceptions <<: *prerequisites - stage: secondary - image: debian:unstable + stage: primary + image: debian:buster services: - mariadb:10 variables: @@ -479,8 +524,8 @@ pre_re:gcc-8: re:gcc-8: <<: *branch_exceptions <<: *prerequisites - stage: secondary - image: debian:unstable + stage: primary + image: debian:buster services: - mariadb:10 variables: @@ -495,7 +540,7 @@ zero-2018:gcc-8: <<: *branch_exceptions <<: *prerequisites stage: clients - image: debian:unstable + image: debian:buster services: - mariadb:10 variables: @@ -506,179 +551,179 @@ zero-2018:gcc-8: - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511 - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -pre_re:gcc-6_i386: +pre_re:gcc-8_i386: <<: *branch_exceptions <<: *prerequisites stage: primary image: i386/debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-renewal - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -re:gcc-6_i386: +re:gcc-8_i386: <<: *branch_exceptions <<: *prerequisites stage: primary image: i386/debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -zero-2018:gcc-6_i386: +zero-2018:gcc-8_i386: <<: *branch_exceptions <<: *prerequisites stage: clients image: i386/debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511 + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --enable-packetver-zero --enable-packetver=20180511 - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -pre_re:gcc-6_sanitize: +pre_re:gcc-8_sanitize: <<: *branch_exceptions <<: *prerequisites stage: secondary - image: debian:stretch + image: debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal --disable-manager --enable-sanitize=full + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-renewal --disable-manager --enable-sanitize=full - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -re:gcc-6_sanitize: +re:gcc-8_sanitize: <<: *branch_exceptions <<: *prerequisites stage: secondary - image: debian:stretch + image: debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -zero-2018:gcc-6_sanitize: +zero-2018:gcc-8_sanitize: <<: *branch_exceptions <<: *prerequisites stage: clients - image: debian:stretch + image: debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full --enable-packetver-zero --enable-packetver=20180511 + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full --enable-packetver-zero --enable-packetver=20180511 - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -pre_re:gcc-6_i386_sanitize: +pre_re:gcc-8_i386_sanitize: <<: *branch_exceptions <<: *prerequisites stage: secondary image: i386/debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal --disable-manager --enable-sanitize=full + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-renewal --disable-manager --enable-sanitize=full - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -re:gcc-6_i386_sanitize: +re:gcc-8_i386_sanitize: <<: *branch_exceptions <<: *prerequisites stage: secondary image: i386/debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -zero-2018:gcc-6_i386_sanitize: +zero-2018:gcc-8_i386_sanitize: <<: *branch_exceptions <<: *prerequisites stage: clients image: i386/debian:stable services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full --enable-packetver-zero --enable-packetver=20180511 + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-manager --enable-sanitize=full --enable-packetver-zero --enable-packetver=20180511 - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST -pre_re:gcc-6_cov: +pre_re:gcc-8_cov: <<: *branch_exceptions <<: *prerequisites stage: secondary - image: debian:stretch + image: debian:buster services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 gcovr mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 gcovr mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot --disable-renewal CFLAGS="-coverage" LDFLAGS="-coverage" + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot --disable-renewal CFLAGS="-coverage" LDFLAGS="-coverage" - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST - - gcovr -r . --gcov-executable=gcov-6 -o gcov_pre.txt - - gcovr -r . --gcov-executable=gcov-6 --html -o gcov_pre.html + - gcovr -r . --gcov-executable=gcov-8 -o gcov_pre.txt + - gcovr -r . --gcov-executable=gcov-8 --html -o gcov_pre.html - cat gcov_pre.txt artifacts: paths: - gcov_pre.* when: on_success -re:gcc-6_cov: +re:gcc-8_cov: <<: *branch_exceptions <<: *prerequisites stage: secondary - image: debian:stretch + image: debian:buster services: - - mariadb:10.1 + - mariadb:10 variables: <<: *base_vars - INSTALL_PACKAGES: gcc-6 gcovr mariadb-client libmariadbclient-dev-compat + INSTALL_PACKAGES: gcc-8 gcovr mariadb-client libmariadbclient-dev-compat SQLHOST: mariadb script: - - ./tools/ci/travis.sh build CC=gcc-6 --enable-debug --enable-Werror --enable-buildbot CFLAGS="-coverage" LDFLAGS="-coverage" + - ./tools/ci/travis.sh build CC=gcc-8 --enable-debug --enable-Werror --enable-buildbot CFLAGS="-coverage" LDFLAGS="-coverage" - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST - - gcovr -r . --gcov-executable=gcov-6 -o gcov_re.txt - - gcovr -r . --gcov-executable=gcov-6 --html -o gcov_re.html + - gcovr -r . --gcov-executable=gcov-8 -o gcov_re.txt + - gcovr -r . --gcov-executable=gcov-8 --html -o gcov_re.html - cat gcov_re.txt artifacts: paths: @@ -693,11 +738,11 @@ pre_re:debian-oldstable: stage: platforms image: debian:oldstable services: - - mysql:5.5 + - mariadb:10.1 variables: <<: *base_vars - INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev - SQLHOST: mysql + INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb script: - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST @@ -708,11 +753,11 @@ re:debian-oldstable: stage: platforms image: debian:oldstable services: - - mysql:5.5 + - mariadb:10.1 variables: <<: *base_vars - INSTALL_PACKAGES: gcc mysql-client libmysqlclient-dev - SQLHOST: mysql + INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat + SQLHOST: mariadb script: - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST @@ -723,7 +768,7 @@ pre_re:debian-stable: stage: platforms image: debian:stable services: - - mariadb:10.1 + - mariadb:10.3 variables: <<: *base_vars INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat @@ -738,7 +783,7 @@ re:debian-stable: stage: platforms image: debian:stable services: - - mariadb:10.1 + - mariadb:10.3 variables: <<: *base_vars INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat @@ -753,7 +798,7 @@ pre_re:debian-testing: stage: platforms image: debian:testing services: - - mariadb:10.1 + - mariadb:10.3 variables: <<: *base_vars INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat @@ -768,7 +813,7 @@ re:debian-testing: stage: platforms image: debian:testing services: - - mariadb:10.1 + - mariadb:10.3 variables: <<: *base_vars INSTALL_PACKAGES: gcc mariadb-client libmariadbclient-dev-compat @@ -1045,7 +1090,7 @@ pre_re:mariadb-10.1: <<: *branch_exceptions <<: *prerequisites stage: platforms - image: debian:stable + image: debian:stretch services: - mariadb:10.1 variables: @@ -1060,7 +1105,7 @@ re:mariadb-10.1: <<: *branch_exceptions <<: *prerequisites stage: platforms - image: debian:stable + image: debian:stretch services: - mariadb:10.1 variables: @@ -1071,6 +1116,36 @@ re:mariadb-10.1: - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST +pre_re:mariadb-10.3: + <<: *branch_exceptions + <<: *prerequisites + stage: platforms + image: debian:buster + services: + - mariadb:10.3 + variables: + <<: *base_vars + INSTALL_PACKAGES: gcc mariadb-client-10.3 libmariadbclient-dev-compat + SQLHOST: mariadb + script: + - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot --disable-renewal + - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST + +re:mariadb-10.3: + <<: *branch_exceptions + <<: *prerequisites + stage: platforms + image: debian:buster + services: + - mariadb:10.3 + variables: + <<: *base_vars + INSTALL_PACKAGES: gcc mariadb-client-10.3 libmariadbclient-dev-compat + SQLHOST: mariadb + script: + - ./tools/ci/travis.sh build --enable-debug --enable-Werror --enable-buildbot + - ./tools/ci/travis.sh test ragnarok ragnarok ragnarok $SQLHOST + pre_re:mariadb-latest: <<: *branch_exceptions <<: *prerequisites @@ -1150,8 +1225,8 @@ pages: - mv gcov_*.* public/ - cp tools/doxygen/pages_index.html public/index.html dependencies: - - re:gcc-6_cov - - pre_re:gcc-6_cov + - re:gcc-8_cov + - pre_re:gcc-8_cov artifacts: paths: - public @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.ac 20c3ecff9. +# From configure.ac 76896e850. # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.69. # @@ -7986,6 +7986,94 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -Wno-array-bounds" >&5 +$as_echo_n "checking whether $CC supports -Wno-array-bounds... " >&6; } + OLD_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror -Wno-array-bounds" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int foo; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + # Recent versions of gcc don't fail if -Wno-foo is not recognized + # (unless there are also other warnings), so we also check for -Wfoo + # which always fails if not supported + CFLAGS="$OLD_CFLAGS -Werror -Warray-bounds" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int foo; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + CFLAGS="$OLD_CFLAGS -Wno-array-bounds" + # Optionally, run a test + if test "x" != "x"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC can actually use -Wno-array-bounds" >&5 +$as_echo_n "checking whether $CC can actually use -Wno-array-bounds... " >&6; } + CFLAGS="$OLD_CFLAGS -Werror -Warray-bounds" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not needed but enabled" >&5 +$as_echo "not needed but enabled" >&6; } + CFLAGS="$OLD_CFLAGS" + +else + + CFLAGS="$OLD_CFLAGS -Werror -Wno-array-bounds" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + CFLAGS="$OLD_CFLAGS -Wno-array-bounds" + +else + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + CFLAGS="$OLD_CFLAGS" + + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + +else + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + CFLAGS="$OLD_CFLAGS" + + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +else + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + CFLAGS="$OLD_CFLAGS" + + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + + # Certain versions of gcc make -Wshadow completely useless by making it flood # you with unnecessary warnings <https://lkml.org/lkml/2006/11/28/239> # Let's check if we can really use it diff --git a/configure.ac b/configure.ac index ec9e35cfe..cbb9a5c46 100644 --- a/configure.ac +++ b/configure.ac @@ -1090,6 +1090,7 @@ AC_CHECK_COMPILER_WNOFLAG(format-nonliteral) AC_CHECK_COMPILER_WNOFLAG(switch) AC_CHECK_COMPILER_WNOFLAG(missing-field-initializers) AC_CHECK_COMPILER_WNOFLAG(suggest-attribute=format) +AC_CHECK_COMPILER_WNOFLAG(array-bounds) # Certain versions of gcc make -Wshadow completely useless by making it flood # you with unnecessary warnings <https://lkml.org/lkml/2006/11/28/239> diff --git a/src/common/HPM.c b/src/common/HPM.c index a579a0926..479135767 100644 --- a/src/common/HPM.c +++ b/src/common/HPM.c @@ -458,11 +458,12 @@ static bool hplugins_addconf(unsigned int pluginID, enum HPluginConfType type, c static struct hplugin *hplugin_load(const char *filename) { + typedef void *(ImportSymbolFunc)(char *, unsigned int); struct hplugin *plugin; struct hplugin_info *info; struct HPMi_interface **HPMi; bool anyEvent = false; - void **import_symbol_ref; + ImportSymbolFunc **import_symbol_ref; int *HPMDataCheckVer; unsigned int *HPMDataCheckLen; struct s_HPMDataCheck *HPMDataCheck; @@ -499,7 +500,7 @@ static struct hplugin *hplugin_load(const char *filename) plugin->info = info; plugin->filename = aStrdup(filename); - if( !( import_symbol_ref = plugin_import(plugin->dll, "import_symbol",void **) ) ) { + if ((import_symbol_ref = plugin_import(plugin->dll, "import_symbol", ImportSymbolFunc **)) == NULL) { ShowFatalError("HPM:plugin_load: failed to retrieve 'import_symbol' for '"CL_WHITE"%s"CL_RESET"'!\n", filename); exit(EXIT_FAILURE); } diff --git a/src/map/log.c b/src/map/log.c index 5bbca02a9..aa2f5f8f3 100644 --- a/src/map/log.c +++ b/src/map/log.c @@ -511,7 +511,7 @@ static void log_sql_final(void) /** * Initializes logs->config variables */ -void log_set_defaults(void) +static void log_set_defaults(void) { memset(&logs->config, 0, sizeof(logs->config)); @@ -540,7 +540,7 @@ void log_set_defaults(void) * * @retval false in case of error. */ -bool log_config_read_database(const char *filename, struct config_t *config, bool imported) +static bool log_config_read_database(const char *filename, struct config_t *config, bool imported) { struct config_setting_t *setting = NULL; @@ -596,7 +596,7 @@ bool log_config_read_database(const char *filename, struct config_t *config, boo * * @retval false in case of error. */ -bool log_config_read_filter_item(const char *filename, struct config_t *config, bool imported) +static bool log_config_read_filter_item(const char *filename, struct config_t *config, bool imported) { struct config_setting_t *setting = NULL; @@ -625,7 +625,7 @@ bool log_config_read_filter_item(const char *filename, struct config_t *config, * * @retval false in case of error. */ -bool log_config_read_filter_chat(const char *filename, struct config_t *config, bool imported) +static bool log_config_read_filter_chat(const char *filename, struct config_t *config, bool imported) { struct config_setting_t *setting = NULL; @@ -651,7 +651,7 @@ bool log_config_read_filter_chat(const char *filename, struct config_t *config, * * @retval false in case of error. */ -bool log_config_read_filter(const char *filename, struct config_t *config, bool imported) +static bool log_config_read_filter(const char *filename, struct config_t *config, bool imported) { bool retval = true; @@ -674,7 +674,7 @@ bool log_config_read_filter(const char *filename, struct config_t *config, bool * * @retval false in case of error. */ -bool log_config_read(const char *filename, bool imported) +static bool log_config_read(const char *filename, bool imported) { struct config_t config; struct config_setting_t *setting = NULL; @@ -755,7 +755,7 @@ bool log_config_read(const char *filename, bool imported) return retval; } -void log_config_complete(void) +static void log_config_complete(void) { if( logs->config.sql_logs ) { logs->pick_sub = log_pick_sub_sql; diff --git a/src/map/script.c b/src/map/script.c index c7ec3c26f..df6e0d329 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -105,7 +105,7 @@ static inline void SETVALUE(struct script_buf *buf, int i, int n) VECTOR_INDEX(*buf, i+2) = GetByte(n, 2); } -const char *script_op2name(int op) +static const char *script_op2name(int op) { #define RETURN_OP_NAME(type) case type: return #type switch( op ) { diff --git a/src/map/skill.c b/src/map/skill.c index 4b6ab7d0d..ad27ef0e3 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -82,7 +82,7 @@ #endif static struct skill_interface skill_s; -struct s_skill_dbs skilldbs; +static struct s_skill_dbs skilldbs; struct skill_interface *skill; diff --git a/src/map/status.c b/src/map/status.c index ba32b267e..71cce28c5 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -11808,10 +11808,10 @@ static int status_change_timer(int tid, int64 tick, int id, intptr_t data) case SC_SPLASHER: #if 0 // custom Venom Splasher countdown timer - if (sce->val4 % 1000 == 0) { + if (sce->val4 % 1000 == 0 && bl && bl->type == BL_PC) { char counter[10]; snprintf (counter, 10, "%d", sce->val4/1000); - clif->message(bl, counter); + clif->message(BL_UCCAST(BL_PC, bl)->fd, counter); } #endif // 0 if((sce->val4 -= 500) > 0) { |