lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <200401091132.NAA27859@home.ntrl.net>
From: guninski at guninski.com (Georgi Guninski)
Subject: gcc: Internal compiler error: program cc1 got
 fatal signal 11

On Thu, 08 Jan 2004 23:04:52 -0500
Valdis.Kletnieks@...edu wrote:

> OK. To sum up:
> 
snip
> 
> 4)  gcc 2.95 is bombing out because it sees that the string is a constant, the index
> is a constant, and it's trying to reduce it at compile time (similar to how if
> you had used "msux"[3] it could replace that with a 'x').  It's failing to note that
> the index is out-of-range of the string.
> 

your arguments don't seem to be consistent with this test ;) :

$ gcc --version
2.95.3
$ cat gcc-no2.c
int main(void)
{
char c="msux"[0x7fffffff];
printf("%c",c);
}
$ gcc gcc-no2.c
$ ./a.out
Memory fault (core dumped)
$ gdb ./a.out ./a.out.core
#0  0x1c000550 in main ()
(gdb) x/i $eip
0x1c000550 <main+16>:   mov    (%edx,%eax,1),%al
(gdb) p/x $eax
$1 = 0x3c000001
(gdb) p/x $edx
$2 = 0x7fffffff


compile passes, but the proggie crashes, so "msux"[INDEX] doesn't seem to be expanded to char at compile time.

iirc the gcc crash is in xstrdup or something like this.

georgi


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ