4.7.0-0.20
This commit is contained in:
parent
8b74069114
commit
ceba2f7e86
1
.gitignore
vendored
1
.gitignore
vendored
@ -25,3 +25,4 @@
|
||||
/gcc-4.7.0-20120227.tar.bz2
|
||||
/gcc-4.7.0-20120229.tar.bz2
|
||||
/gcc-4.7.0-20120308.tar.bz2
|
||||
/gcc-4.7.0-20120315.tar.bz2
|
||||
|
23
gcc.spec
23
gcc.spec
@ -1,9 +1,9 @@
|
||||
%global DATE 20120308
|
||||
%global SVNREV 185099
|
||||
%global DATE 20120315
|
||||
%global SVNREV 185441
|
||||
%global gcc_version 4.7.0
|
||||
# Note, gcc_release must be integer, if you want to add suffixes to
|
||||
# %{release}, append them after %{gcc_release} on Release: line.
|
||||
%global gcc_release 0.19
|
||||
%global gcc_release 0.20
|
||||
%global _unpackaged_files_terminate_build 0
|
||||
%global multilib_64_archs sparc64 ppc64 s390x x86_64
|
||||
%ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha
|
||||
@ -174,6 +174,10 @@ Patch12: gcc47-libstdc++-docs.patch
|
||||
Patch13: gcc47-no-add-needed.patch
|
||||
Patch14: gcc47-ppl-0.10.patch
|
||||
Patch15: gcc47-libitm-fno-exceptions.patch
|
||||
Patch16: gcc47-pr52582.patch
|
||||
Patch17: gcc47-smmintrin.patch
|
||||
Patch18: gcc47-pr52577.patch
|
||||
Patch19: gcc47-pr52521.patch
|
||||
|
||||
Patch1000: fastjar-0.97-segfault.patch
|
||||
Patch1001: fastjar-0.97-len1.patch
|
||||
@ -675,6 +679,10 @@ package or when debugging this package.
|
||||
%patch14 -p0 -b .ppl-0.10~
|
||||
%endif
|
||||
%patch15 -p0 -b .libitm-fno-exceptions~
|
||||
%patch16 -p0 -b .pr52582~
|
||||
%patch17 -p0 -b .smmintrin~
|
||||
%patch18 -p0 -b .pr52577~
|
||||
%patch19 -p0 -b .pr52521~
|
||||
|
||||
%if 0%{?_enable_debug_packages}
|
||||
cat > split-debuginfo.sh <<\EOF
|
||||
@ -2641,6 +2649,15 @@ fi
|
||||
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin
|
||||
|
||||
%changelog
|
||||
* Thu Mar 15 2012 Jakub Jelinek <jakub@redhat.com> 4.7.0-0.20
|
||||
- update from the 4.7 branch
|
||||
- PRs fortran/52469, libitm/52526, libstdc++/52456, target/52450
|
||||
- fix __builtin_ir{ound,int}{,f,l} expansion (#803689, PR middle-end/52592)
|
||||
- fix up devirtualization (#802731, PR c++/52582)
|
||||
- fix up user defined literal operator"" lookup (PR c++/52521)
|
||||
- avoid false positive -Wunused-but-set-* warnings with __builtin_shuffle
|
||||
(PR c/52577)
|
||||
|
||||
* Thu Mar 8 2012 Jakub Jelinek <jakub@redhat.com> 4.7.0-0.19
|
||||
- update from trunk and the 4.7 branch
|
||||
- PRs libstdc++/51785, middle-end/52419, middle-end/52443,
|
||||
|
52
gcc47-pr52521.patch
Normal file
52
gcc47-pr52521.patch
Normal file
@ -0,0 +1,52 @@
|
||||
2012-03-14 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR c++/52521
|
||||
* parser.c (lookup_literal_operator): Return fn only if
|
||||
processed all arguments from args vector and argtypes is
|
||||
void_list_node.
|
||||
|
||||
* g++.dg/cpp0x/udlit-args2.C: New test.
|
||||
|
||||
--- gcc/cp/parser.c (revision 185374)
|
||||
+++ gcc/cp/parser.c (revision 185375)
|
||||
@@ -1,6 +1,6 @@
|
||||
/* C++ Parser.
|
||||
Copyright (C) 2000, 2001, 2002, 2003, 2004,
|
||||
- 2005, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
|
||||
+ 2005, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
|
||||
Written by Mark Mitchell <mark@codesourcery.com>.
|
||||
|
||||
This file is part of GCC.
|
||||
@@ -3581,7 +3581,13 @@ lookup_literal_operator (tree name, VEC(
|
||||
TREE_TYPE (tparm))))
|
||||
found = false;
|
||||
}
|
||||
- if (found)
|
||||
+ if (found
|
||||
+ && ix == VEC_length (tree, args)
|
||||
+ /* May be this should be sufficient_parms_p instead,
|
||||
+ depending on how exactly should user-defined literals
|
||||
+ work in presence of default arguments on the literal
|
||||
+ operator parameters. */
|
||||
+ && argtypes == void_list_node)
|
||||
return fn;
|
||||
}
|
||||
}
|
||||
--- gcc/testsuite/g++.dg/cpp0x/udlit-args2.C (revision 0)
|
||||
+++ gcc/testsuite/g++.dg/cpp0x/udlit-args2.C (revision 185375)
|
||||
@@ -0,0 +1,15 @@
|
||||
+// PR c++/52521
|
||||
+// { dg-do compile }
|
||||
+// { dg-options -std=c++11 }
|
||||
+
|
||||
+#include <cstddef>
|
||||
+
|
||||
+int operator "" _a (const char *);
|
||||
+int operator "" _a (const char *, std::size_t);
|
||||
+int a = 123_a;
|
||||
+int a2 = "abc"_a;
|
||||
+
|
||||
+int operator "" _b (const char *, std::size_t);
|
||||
+int operator "" _b (const char *);
|
||||
+int b = 123_b;
|
||||
+int b2 = "abc"_b;
|
76
gcc47-pr52577.patch
Normal file
76
gcc47-pr52577.patch
Normal file
@ -0,0 +1,76 @@
|
||||
2012-03-13 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR c/52577
|
||||
* c-parser.c (c_parser_postfix_expression)
|
||||
<case RID_BUILTIN_SHUFFLE>: Call mark_exp_read on argument values.
|
||||
|
||||
* gcc.dg/Wunused-var-3.c: New test.
|
||||
|
||||
--- gcc/c-parser.c (revision 185354)
|
||||
+++ gcc/c-parser.c (revision 185355)
|
||||
@@ -1,7 +1,7 @@
|
||||
/* Parser for C and Objective-C.
|
||||
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
|
||||
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
|
||||
- Free Software Foundation, Inc.
|
||||
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011,
|
||||
+ 2012 Free Software Foundation, Inc.
|
||||
|
||||
Parser actions based on the old Bison parser; structure somewhat
|
||||
influenced by and fragments based on the C++ parser.
|
||||
@@ -6647,6 +6647,8 @@ c_parser_postfix_expression (c_parser *p
|
||||
case RID_BUILTIN_SHUFFLE:
|
||||
{
|
||||
VEC(c_expr_t,gc) *cexpr_list;
|
||||
+ unsigned int i;
|
||||
+ c_expr_t *p;
|
||||
|
||||
c_parser_consume_token (parser);
|
||||
if (!c_parser_get_builtin_args (parser,
|
||||
@@ -6657,6 +6659,9 @@ c_parser_postfix_expression (c_parser *p
|
||||
break;
|
||||
}
|
||||
|
||||
+ FOR_EACH_VEC_ELT (c_expr_t, cexpr_list, i, p)
|
||||
+ mark_exp_read (p->value);
|
||||
+
|
||||
if (VEC_length (c_expr_t, cexpr_list) == 2)
|
||||
expr.value =
|
||||
c_build_vec_perm_expr
|
||||
--- gcc/testsuite/gcc.dg/Wunused-var-3.c (revision 0)
|
||||
+++ gcc/testsuite/gcc.dg/Wunused-var-3.c (revision 185355)
|
||||
@@ -0,0 +1,34 @@
|
||||
+/* PR c/52577 */
|
||||
+/* { dg-do compile } */
|
||||
+/* { dg-options "-Wunused" } */
|
||||
+
|
||||
+typedef int V __attribute__((vector_size (sizeof (int) * 4)));
|
||||
+
|
||||
+void
|
||||
+f1 (V *p)
|
||||
+{
|
||||
+ V mask = { 1, 2, 3, 0 };
|
||||
+ *p = __builtin_shuffle (*p, mask);
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+f2 (V *p, V *q)
|
||||
+{
|
||||
+ V mask = { 1, 2, 3, 0 };
|
||||
+ *p = __builtin_shuffle (*p, *q, mask);
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+f3 (V *p, V *mask)
|
||||
+{
|
||||
+ V a = { 1, 2, 3, 0 };
|
||||
+ *p = __builtin_shuffle (a, *mask);
|
||||
+}
|
||||
+
|
||||
+void
|
||||
+f4 (V *p, V *mask)
|
||||
+{
|
||||
+ V a = { 1, 2, 3, 0 };
|
||||
+ V b = { 2, 3, 4, 1 };
|
||||
+ *p = __builtin_shuffle (a, b, *mask);
|
||||
+}
|
15
gcc47-pr52582.patch
Normal file
15
gcc47-pr52582.patch
Normal file
@ -0,0 +1,15 @@
|
||||
2012-03-14 Jason Merrill <jason@redhat.com>
|
||||
|
||||
PR c++/52582
|
||||
* method.c (implicitly_declare_fn): Set DECL_EXTERNAL.
|
||||
|
||||
--- gcc/cp/method.c
|
||||
+++ gcc/cp/method.c
|
||||
@@ -1593,6 +1593,7 @@ implicitly_declare_fn (special_function_kind kind, tree type, bool const_p)
|
||||
DECL_DELETED_FN (fn) = deleted_p;
|
||||
DECL_DECLARED_CONSTEXPR_P (fn) = constexpr_p;
|
||||
}
|
||||
+ DECL_EXTERNAL (fn) = true;
|
||||
DECL_NOT_REALLY_EXTERN (fn) = 1;
|
||||
DECL_DECLARED_INLINE_P (fn) = 1;
|
||||
gcc_assert (!TREE_USED (fn));
|
40
gcc47-smmintrin.patch
Normal file
40
gcc47-smmintrin.patch
Normal file
@ -0,0 +1,40 @@
|
||||
2012-03-13 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* config/i386/smmintrin.h: Avoid /* within a comment.
|
||||
* config/i386/nmmintrin.h: Likewise.
|
||||
|
||||
--- gcc/config/i386/nmmintrin.h (revision 185351)
|
||||
+++ gcc/config/i386/nmmintrin.h (revision 185352)
|
||||
@@ -1,4 +1,4 @@
|
||||
-/* Copyright (C) 2007, 2009 Free Software Foundation, Inc.
|
||||
+/* Copyright (C) 2007, 2009, 2012 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GCC.
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
You should have received a copy of the GNU General Public License and
|
||||
a copy of the GCC Runtime Library Exception along with this program;
|
||||
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
- <http://www.gnu.org/licenses/>.
|
||||
+ <http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* Implemented from the specification included in the Intel C++ Compiler
|
||||
User Guide and Reference, version 10.0. */
|
||||
--- gcc/config/i386/smmintrin.h (revision 185351)
|
||||
+++ gcc/config/i386/smmintrin.h (revision 185352)
|
||||
@@ -1,4 +1,4 @@
|
||||
-/* Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||
+/* Copyright (C) 2007, 2008, 2009, 2010, 2012 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GCC.
|
||||
|
||||
@@ -19,8 +19,7 @@
|
||||
You should have received a copy of the GNU General Public License and
|
||||
a copy of the GCC Runtime Library Exception along with this program;
|
||||
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
- <http://www.gnu.org/licenses/>.
|
||||
-
|
||||
+ <http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* Implemented from the specification included in the Intel C++ Compiler
|
||||
User Guide and Reference, version 10.0. */
|
Loading…
Reference in New Issue
Block a user