Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:12.3
gcc41
pr26399.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pr26399.patch of Package gcc41
Jan Hubicka PR profile/20815 PR profile/26399 * coverage.c (coverage_checksum_string): Reorganize loop to not read after buffer. * g++.dg/bprob/g++-bprob-2.C: New testcase. Index: gcc/coverage.c =================================================================== *** gcc/coverage.c (revision 113342) --- gcc/coverage.c (working copy) *************** coverage_checksum_string (unsigned chksu *** 457,486 **** to be no better chance then walk all possible offsets looking for magicnuber. */ if (offset) ! for (;string[offset]; offset++) ! for (i = i + offset; string[i]; i++) ! if (string[i]=='_') ! { ! int y; ! ! for (y = 1; y < 9; y++) ! if (!(string[i + y] >= '0' && string[i + y] <= '9') ! && !(string[i + y] >= 'A' && string[i + y] <= 'F')) ! break; ! if (y != 9 || string[i + 9] != '_') ! continue; ! for (y = 10; y < 18; y++) ! if (!(string[i + y] >= '0' && string[i + y] <= '9') ! && !(string[i + y] >= 'A' && string[i + y] <= 'F')) ! break; ! if (y != 18) ! continue; ! if (!dup) ! string = dup = xstrdup (string); ! for (y = 10; y < 18; y++) ! dup[i + y] = '0'; ! } ! break; } chksum = crc32_string (chksum, string); --- 457,487 ---- to be no better chance then walk all possible offsets looking for magicnuber. */ if (offset) ! { ! for (i = i + offset; string[i]; i++) ! if (string[i]=='_') ! { ! int y; ! ! for (y = 1; y < 9; y++) ! if (!(string[i + y] >= '0' && string[i + y] <= '9') ! && !(string[i + y] >= 'A' && string[i + y] <= 'F')) ! break; ! if (y != 9 || string[i + 9] != '_') ! continue; ! for (y = 10; y < 18; y++) ! if (!(string[i + y] >= '0' && string[i + y] <= '9') ! && !(string[i + y] >= 'A' && string[i + y] <= 'F')) ! break; ! if (y != 18) ! continue; ! if (!dup) ! string = dup = xstrdup (string); ! for (y = 10; y < 18; y++) ! dup[i + y] = '0'; ! } ! break; ! } } chksum = crc32_string (chksum, string); --- /dev/null 2006-03-04 21:11:20.000000000 +0100 +++ gcc/testsuite/g++.dg/bprob/g++-bprob-2.C 2006-04-28 13:46:24.000000000 +0200 @@ -0,0 +1,15 @@ +namespace { + +int calc(int j) +{ + if (j==0) return 0; + return calc(j-1)*j % 17; +} + +} + +int main(void) +{ + return calc(25); +} +
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor