Your message dated Wed, 23 Jan 2019 10:00:21 +0000 with message-id <[email protected]> and subject line Bug#920166: Removed package(s) from unstable has caused the Debian Bug report #798042, regarding gcc-5: GCC does not reject too small arrays as arguments for arr[static size] type parameters to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 798042: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=798042 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: gcc-5 Version: 5.2.1-16 Severity: normal Tags: upstream Dear Maintainer, GCC 5 does not properly reject or warn about C code which passes insufficiently large arrays as arguments to functions with a declared static size for said parameters. In C-99 function parameters may be declared like this: int arr[static size], where size is the minimum number of elements arr MUST contain in order for the call to be valid. Compilers are supposed to either warn or reject the code, in particular passing NULL pointers as such arguments is invalid. To demonstrate the issue, in the following simple self contained code example each call to the test() function should be either warned about or rejected outright: #include <stdio.h> #define EXPECTED_SIZE (16 * 1024) static int test(int arr[static EXPECTED_SIZE]) { return arr[EXPECTED_SIZE -1]; } int main(int argc, char** argv) { int result; int illegal; int passed[3] = {1,2,3}; result = test(passed); illegal = test(NULL); printf("Test result: 'too short' = %d, 'illegal' = %d\n", result, illegal); return 0; } Unfortunately, gcc-5 will compile such code silently with: gcc-5 -std=c99 -Wall -Werror test.c I had expected gcc-5 to issue at least a -Warray-bounds style warning (and elevate it to error with -Werror). Note that adding -Warray-bounds explicitly does not alter observable behaviour. For more information on the intended semantics/compiler behaviour of this kind of code, please refer to: https://hamberg.no/erlend/posts/2013-02-18-static-array-indices.html#fn1 http://stackoverflow.com/questions/3430315/purpose-of-static-keyword-in-array-parameter-of-function The second link appears to contain the relevant C-99 standards language, but the first link is most useful for understanding expected compiler behaviour with this kind of code. -- System Information: Debian Release: stretch/sid APT prefers testing-updates APT policy: (500, 'testing-updates'), (500, 'unstable'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 4.0.0-1-amd64 (SMP w/4 CPU cores) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages gcc-5 depends on: ii binutils 2.25.1-1 ii cpp-5 5.2.1-16 ii gcc-5-base 5.2.1-16 ii libc6 2.19-19 ii libcc1-0 5.2.1-16 ii libgcc-5-dev 5.2.1-16 ii libgcc1 1:5.2.1-16 ii libgmp10 2:6.0.0+dfsg-7 ii libisl13 0.14-2 ii libmpc3 1.0.3-1 ii libmpfr4 3.1.3-1 ii libstdc++6 5.2.1-16 ii zlib1g 1:1.2.8.dfsg-2+b1 Versions of packages gcc-5 recommends: ii libc6-dev 2.19-19 Versions of packages gcc-5 suggests: pn gcc-5-doc <none> pn gcc-5-locales <none> pn gcc-5-multilib <none> pn libasan2-dbg <none> pn libatomic1-dbg <none> pn libcilkrts5-dbg <none> pn libgcc1-dbg <none> pn libgomp1-dbg <none> pn libitm1-dbg <none> pn liblsan0-dbg <none> pn libmpx0-dbg <none> pn libquadmath0-dbg <none> pn libtsan0-dbg <none> pn libubsan0-dbg <none> -- no debconf information
--- End Message ---
--- Begin Message ---Version: 5.5.0-12+rm Dear submitter, as the package gcc-5 has just been removed from the Debian archive unstable we hereby close the associated bug reports. We are sorry that we couldn't deal with your issue properly. For details on the removal, please see https://bugs.debian.org/920166 The version of this package that was in Debian prior to this removal can still be found using http://snapshot.debian.org/. This message was generated automatically; if you believe that there is a problem with it please contact the archive administrators by mailing [email protected]. Debian distribution maintenance software pp. Scott Kitterman (the ftpmaster behind the curtain)
--- End Message ---

