rpms/gcc/devel gcc41-pr29097.patch, NONE, 1.1 gcc41-strncat-chk.patch, NONE, 1.1 .cvsignore, 1.171, 1.172 gcc41.spec, 1.104, 1.105 sources, 1.173, 1.174 gcc41-pr28046.patch, 1.1, NONE
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Wed Sep 20 17:51:16 UTC 2006
- Previous message (by thread): rpms/kernel/devel linux-2.6-ext3-16tb-overflow-fixes.patch, NONE, 1.1.2.1 linux-2.6-x86-k8-powernow-clock-disable-fix.patch, NONE, 1.1.2.1 linux-2.6.18.tar.bz2.sign, NONE, 1.1.2.1 .cvsignore, 1.528, 1.528.2.1 kernel-2.6.spec, 1.2670.2.3, 1.2670.2.4 linux-2.6-lockdep-fixes.patch, 1.25, 1.25.8.1 linux-2.6-net-netlabel-cipso.patch, 1.1, 1.1.16.1 linux-2.6-x86-relocatable.patch, 1.6, 1.6.4.1 linux-2.6-xen.patch, 1.67, 1.67.2.1 sources, 1.491, 1.491.2.1 upstream, 1.425, 1.425.2.1
- Next message (by thread): rpms/gcc/devel gcc41-i386-tune-geode.patch,1.1,1.2
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: jakub
Update of /cvs/dist/rpms/gcc/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv24908
Modified Files:
.cvsignore gcc41.spec sources
Added Files:
gcc41-pr29097.patch gcc41-strncat-chk.patch
Removed Files:
gcc41-pr28046.patch
Log Message:
4.1.1-24
gcc41-pr29097.patch:
gcc/fortran/scanner.c | 20 +++++++++++++++++++-
libgomp/testsuite/libgomp.fortran/condinc1.f | 7 +++++++
libgomp/testsuite/libgomp.fortran/condinc1.inc | 2 ++
libgomp/testsuite/libgomp.fortran/condinc2.f | 7 +++++++
libgomp/testsuite/libgomp.fortran/condinc3.f90 | 7 +++++++
libgomp/testsuite/libgomp.fortran/condinc4.f90 | 7 +++++++
6 files changed, 49 insertions(+), 1 deletion(-)
--- NEW FILE gcc41-pr29097.patch ---
2006-09-19 Jakub Jelinek <jakub at redhat.com>
PR fortran/29097
* scanner.c (include_line): Handle conditional include.
* testsuite/libgomp.fortran/condinc1.f: New test.
* testsuite/libgomp.fortran/condinc2.f: New test.
* testsuite/libgomp.fortran/condinc3.f90: New test.
* testsuite/libgomp.fortran/condinc4.f90: New test.
* testsuite/libgomp.fortran/condinc1.inc: New file.
--- gcc/fortran/scanner.c.jj 2006-06-09 14:59:02.000000000 +0200
+++ gcc/fortran/scanner.c 2006-09-19 10:58:31.000000000 +0200
@@ -1212,8 +1212,26 @@ static bool
include_line (char *line)
{
char quote, *c, *begin, *stop;
-
+
c = line;
+
+ if (gfc_option.flag_openmp)
+ {
+ if (gfc_current_form == FORM_FREE)
+ {
+ while (*c == ' ' || *c == '\t')
+ c++;
+ if (*c == '!' && c[1] == '$' && (c[2] == ' ' || c[2] == '\t'))
+ c += 3;
+ }
+ else
+ {
+ if ((*c == '!' || *c == 'c' || *c == 'C' || *c == '*')
+ && c[1] == '$' && (c[2] == ' ' || c[2] == '\t'))
+ c += 3;
+ }
+ }
+
while (*c == ' ' || *c == '\t')
c++;
--- libgomp/testsuite/libgomp.fortran/condinc1.f.jj 2006-09-19 11:01:22.000000000 +0200
+++ libgomp/testsuite/libgomp.fortran/condinc1.f 2006-09-19 11:09:18.000000000 +0200
@@ -0,0 +1,7 @@
+! { dg-options "-fopenmp" }
+ program condinc1
+ logical l
+ l = .false.
+!$ include 'condinc1.inc'
+ stop 2
+ end
--- libgomp/testsuite/libgomp.fortran/condinc1.inc.jj 2006-09-19 11:05:30.000000000 +0200
+++ libgomp/testsuite/libgomp.fortran/condinc1.inc 2006-09-19 11:08:17.000000000 +0200
@@ -0,0 +1,2 @@
+ if (l) stop 3
+ return
--- libgomp/testsuite/libgomp.fortran/condinc2.f.jj 2006-09-19 11:01:22.000000000 +0200
+++ libgomp/testsuite/libgomp.fortran/condinc2.f 2006-09-19 11:09:09.000000000 +0200
@@ -0,0 +1,7 @@
+! { dg-options "-fno-openmp" }
+ program condinc2
+ logical l
+ l = .true.
+C$ include 'condinc1.inc'
+ return
+ end
--- libgomp/testsuite/libgomp.fortran/condinc3.f90.jj 2006-09-19 11:01:22.000000000 +0200
+++ libgomp/testsuite/libgomp.fortran/condinc3.f90 2006-09-19 11:10:23.000000000 +0200
@@ -0,0 +1,7 @@
+ ! { dg-options "-fopenmp" }
+program condinc3
+ logical l
+ l = .false.
+ !$ include 'condinc1.inc'
+ stop 2
+end
--- libgomp/testsuite/libgomp.fortran/condinc4.f90.jj 2006-09-19 11:01:22.000000000 +0200
+++ libgomp/testsuite/libgomp.fortran/condinc4.f90 2006-09-19 11:10:51.000000000 +0200
@@ -0,0 +1,7 @@
+! { dg-options "-fno-openmp" }
+ program condinc4
+ logical l
+ l = .true.
+!$ include 'condinc1.inc'
+ return
+ end
gcc41-strncat-chk.patch:
builtins.c | 22 +++++++++++++++++
testsuite/gcc.dg/builtin-strncat-chk-1.c | 38 +++++++++++++++++++++++++++++++
tree-ssa-propagate.c | 7 +++++
3 files changed, 67 insertions(+)
--- NEW FILE gcc41-strncat-chk.patch ---
2006-09-18 Jakub Jelinek <jakub at redhat.com>
* tree-ssa-propagate.c (set_rhs): Copy EXPR_LOCATION if
needed.
* builtins.c (expand_builtin, maybe_emit_chk_warning): Handle
BUILT_IN_STRNCAT_CHK.
* gcc.dg/builtin-strncat-chk-1.c: New test.
--- gcc/tree-ssa-propagate.c.jj 2006-04-06 11:33:59.000000000 +0200
+++ gcc/tree-ssa-propagate.c 2006-09-18 14:49:57.000000000 +0200
@@ -591,6 +591,13 @@ set_rhs (tree *stmt_p, tree expr)
else if (code == COMPOUND_EXPR)
return false;
+ if (EXPR_HAS_LOCATION (stmt)
+ && EXPR_P (expr)
+ && ! EXPR_HAS_LOCATION (expr)
+ && TREE_SIDE_EFFECTS (expr)
+ && TREE_CODE (expr) != LABEL_EXPR)
+ SET_EXPR_LOCATION (expr, EXPR_LOCATION (stmt));
+
switch (TREE_CODE (stmt))
{
case RETURN_EXPR:
--- gcc/builtins.c.jj 2006-09-02 08:54:22.000000000 +0200
+++ gcc/builtins.c 2006-09-18 16:54:57.000000000 +0200
@@ -6437,6 +6437,7 @@ expand_builtin (tree exp, rtx target, rt
case BUILT_IN_STPCPY_CHK:
case BUILT_IN_STRNCPY_CHK:
case BUILT_IN_STRCAT_CHK:
+ case BUILT_IN_STRNCAT_CHK:
case BUILT_IN_SNPRINTF_CHK:
case BUILT_IN_VSNPRINTF_CHK:
maybe_emit_chk_warning (exp, fcode);
@@ -10128,6 +10129,11 @@ maybe_emit_chk_warning (tree exp, enum b
arg_mask = 6;
is_strlen = 1;
break;
+ case BUILT_IN_STRNCAT_CHK:
+ /* For __strncat_chk the warning will be emitted only if overflowing
+ by at least strlen (dest) + 1 bytes. */
+ arg_mask = 12;
+ break;
case BUILT_IN_STRNCPY_CHK:
arg_mask = 12;
break;
@@ -10165,6 +10171,22 @@ maybe_emit_chk_warning (tree exp, enum b
if (! len || ! host_integerp (len, 1) || tree_int_cst_lt (len, size))
return;
}
+ else if (fcode == BUILT_IN_STRNCAT_CHK)
+ {
+ tree src = TREE_VALUE (TREE_CHAIN (arglist));
+ if (! src || ! host_integerp (len, 1) || tree_int_cst_lt (len, size))
+ return;
+ src = c_strlen (src, 1);
+ if (! src || ! host_integerp (src, 1))
+ {
+ locus = EXPR_LOCATION (exp);
+ warning (0, "%Hcall to %D might overflow destination buffer",
+ &locus, get_callee_fndecl (exp));
+ return;
+ }
+ else if (tree_int_cst_lt (src, size))
+ return;
+ }
else if (! host_integerp (len, 1) || ! tree_int_cst_lt (size, len))
return;
--- gcc/testsuite/gcc.dg/builtin-strncat-chk-1.c.jj 2006-09-18 13:07:54.000000000 +0200
+++ gcc/testsuite/gcc.dg/builtin-strncat-chk-1.c 2006-09-18 16:55:09.000000000 +0200
@@ -0,0 +1,38 @@
+/* Test whether buffer overflow warnings for __strncat_chk builtin
+ are emitted properly. */
+/* { dg-do compile } */
+/* { dg-options "-O2 -std=gnu99" } */
+
+extern void abort (void);
+
+#include "../gcc.c-torture/execute/builtins/chk.h"
+
+char buf1[20];
+char *q;
+
+void
+test (int arg, ...)
+{
+ char *p = &buf1[10];
+
+ *p = 0;
+ strncat (p, "abcdefg", 9);
+ *p = 0;
+ strncat (p, "abcdefghi", 9);
+ *p = 0;
+ strncat (p, "abcdefghij", 9);
+ *p = 0;
+ strncat (p, "abcdefghi", 10);
+ *p = 0;
+ strncat (p, "abcdefghij", 10); /* { dg-warning "will always overflow" } */
+ *p = 0;
+ strncat (p, "abcdefgh", 11);
+ *p = 0;
+ strncat (p, "abcdefghijkl", 11); /* { dg-warning "will always overflow" } */
+ *p = 0;
+ strncat (p, q, 9);
+ *p = 0;
+ strncat (p, q, 10); /* { dg-warning "might overflow" } */
+ *p = 0;
+ strncat (p, q, 11); /* { dg-warning "might overflow" } */
+}
Index: .cvsignore
===================================================================
RCS file: /cvs/dist/rpms/gcc/devel/.cvsignore,v
retrieving revision 1.171
retrieving revision 1.172
diff -u -r1.171 -r1.172
--- .cvsignore 17 Sep 2006 10:53:40 -0000 1.171
+++ .cvsignore 20 Sep 2006 17:51:14 -0000 1.172
@@ -1 +1 @@
-gcc-4.1.1-20060917.tar.bz2
+gcc-4.1.1-20060920.tar.bz2
Index: gcc41.spec
===================================================================
RCS file: /cvs/dist/rpms/gcc/devel/gcc41.spec,v
retrieving revision 1.104
retrieving revision 1.105
diff -u -r1.104 -r1.105
--- gcc41.spec 17 Sep 2006 10:53:40 -0000 1.104
+++ gcc41.spec 20 Sep 2006 17:51:14 -0000 1.105
@@ -1,6 +1,6 @@
-%define DATE 20060917
+%define DATE 20060920
%define gcc_version 4.1.1
-%define gcc_release 23
+%define gcc_release 24
%define _unpackaged_files_terminate_build 0
%define multilib_64_archs sparc64 ppc64 s390x x86_64
%ifarch %{ix86} x86_64 ia64
@@ -144,8 +144,9 @@
Patch36: gcc41-pr26026.patch
Patch37: gcc41-pr28659.patch
Patch38: gcc41-pr27567.patch
-Patch39: gcc41-pr28046.patch
+Patch39: gcc41-pr29097.patch
Patch40: gcc41-pr29059.patch
+Patch41: gcc41-strncat-chk.patch
%define _gnu %{nil}
%ifarch sparc
@@ -467,8 +468,9 @@
%patch36 -p0 -b .pr26026~
%patch37 -p0 -b .pr28659~
%patch38 -p0 -b .pr27567~
-%patch39 -p0 -b .pr28046~
+%patch39 -p0 -b .pr29097~
%patch40 -p0 -b .pr29059~
+%patch41 -p0 -b .strncat-chk~
sed -i -e 's/4\.1\.2/4.1.1/' gcc/BASE-VER gcc/version.c
sed -i -e 's/" (Red Hat[^)]*)"/" (Red Hat %{version}-%{gcc_release})"/' gcc/version.c
@@ -1530,6 +1532,16 @@
%doc rpm.doc/changelogs/libmudflap/ChangeLog*
%changelog
+* Wed Sep 20 2006 Jakub Jelinek <jakub at redhat.com> 4.1.1-24
+- update from gcc-4_1-branch (-r117000:117069)
+ - PRs fortran/21918, fortran/28526, fortran/28817, fortran/29060,
+ fortran/29101, java/28754, java/28892, java/29013,
+ middle-end/27226, middle-end/4520, tree-optimization/28900
+- fix java.utils.logging.Logger (Mark Wielaard, #207111)
+- fix gnu.javax.net.ssl.provider.SSLSocket (Tom Tromey, #206904)
+- add support for Fortran OpenMP conditional inclusion (PR fortran/29097)
+- add some -D_FORTIFY_SOURCE compile time strncat buffer overflow checks
+
* Sun Sep 17 2006 Jakub Jelinek <jakub at redhat.com> 4.1.1-23
- update from gcc-4_1-branch (-r116958:117000)
- PRs fortran/29051, target/28946
Index: sources
===================================================================
RCS file: /cvs/dist/rpms/gcc/devel/sources,v
retrieving revision 1.173
retrieving revision 1.174
diff -u -r1.173 -r1.174
--- sources 17 Sep 2006 10:53:40 -0000 1.173
+++ sources 20 Sep 2006 17:51:14 -0000 1.174
@@ -1 +1 @@
-30d24a5101c7085b47b97a5a6715a6cd gcc-4.1.1-20060917.tar.bz2
+555f825257d7a7976d77ac4e80ec5ca5 gcc-4.1.1-20060920.tar.bz2
--- gcc41-pr28046.patch DELETED ---
- Previous message (by thread): rpms/kernel/devel linux-2.6-ext3-16tb-overflow-fixes.patch, NONE, 1.1.2.1 linux-2.6-x86-k8-powernow-clock-disable-fix.patch, NONE, 1.1.2.1 linux-2.6.18.tar.bz2.sign, NONE, 1.1.2.1 .cvsignore, 1.528, 1.528.2.1 kernel-2.6.spec, 1.2670.2.3, 1.2670.2.4 linux-2.6-lockdep-fixes.patch, 1.25, 1.25.8.1 linux-2.6-net-netlabel-cipso.patch, 1.1, 1.1.16.1 linux-2.6-x86-relocatable.patch, 1.6, 1.6.4.1 linux-2.6-xen.patch, 1.67, 1.67.2.1 sources, 1.491, 1.491.2.1 upstream, 1.425, 1.425.2.1
- Next message (by thread): rpms/gcc/devel gcc41-i386-tune-geode.patch,1.1,1.2
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-cvs-commits
mailing list