[arch-commits] Commit in gcc/trunk (PKGBUILD pr65822.patch pr65882.patch)

Allan McRae allan at archlinux.org
Wed May 6 07:50:00 UTC 2015


    Date: Wednesday, May 6, 2015 @ 09:50:00
  Author: allan
Revision: 238535

upgpkg: gcc 5.1.0-3

new snapshot

Added:
  gcc/trunk/pr65882.patch
    (from rev 238529, gcc/trunk/pr65822.patch)
Modified:
  gcc/trunk/PKGBUILD
Deleted:
  gcc/trunk/pr65822.patch

---------------+
 PKGBUILD      |   15 ++++--------
 pr65822.patch |   66 --------------------------------------------------------
 pr65882.patch |   66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 71 insertions(+), 76 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-05-06 07:01:31 UTC (rev 238534)
+++ PKGBUILD	2015-05-06 07:50:00 UTC (rev 238535)
@@ -8,8 +8,8 @@
 pkgver=5.1.0
 _pkgver=5
 _islver=0.14.1
-pkgrel=2
-_snapshot=5-20150428
+pkgrel=3
+_snapshot=5-20150505
 pkgdesc="The GNU Compiler Collection"
 arch=('i686' 'x86_64')
 license=('GPL' 'LGPL' 'FDL' 'custom')
@@ -20,12 +20,10 @@
 source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2
         ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2
         http://isl.gforge.inria.fr/isl-${_islver}.tar.bz2
-        pr65801.patch
-        pr65822.patch
+        pr65882.patch
         pr65873.patch)
-md5sums=('6068bb8e23caa1172a127026e05ed311'
+md5sums=('8acc1b53380be0dd56e67990ba1fc06e'
          '118d1a379abf7606a3334c98a8411c79'
-         '0e0ab8f824573f51733aaeee84254df6'
          '9a9cc98e916fd37c7b3dad50f29d2f48'
          'cad91055efb6e20919fb81aff1600d8e')
 
@@ -54,11 +52,8 @@
   # hack! - some configure tests for header files using "$CPP $CPPFLAGS"
   sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure
 
-  # commit 346ee8b5
-  patch -p1 -i ${srcdir}/pr65801.patch
-
   # https://gcc.gnu.org/ml/gcc-patches/2015-04/msg01558.html
-  patch -p1 -i ${srcdir}/pr65822.patch
+  patch -p1 -i ${srcdir}/pr65882.patch
 
   # commit a64b35493
   patch -p1 -i ${srcdir}/pr65873.patch

Deleted: pr65822.patch
===================================================================
--- pr65822.patch	2015-05-06 07:01:31 UTC (rev 238534)
+++ pr65822.patch	2015-05-06 07:50:00 UTC (rev 238535)
@@ -1,66 +0,0 @@
-diff --git a/gcc/cp/call.c b/gcc/cp/call.c
-index 7bdf236..689d542 100644
---- a/gcc/cp/call.c
-+++ b/gcc/cp/call.c
-@@ -5677,8 +5677,9 @@ build_new_op_1 (location_t loc, enum tree_code code, int flags, tree arg1,
-     case TRUTH_ORIF_EXPR:
-     case TRUTH_AND_EXPR:
-     case TRUTH_OR_EXPR:
--      warn_logical_operator (loc, code, boolean_type_node,
--			     code_orig_arg1, arg1, code_orig_arg2, arg2);
-+      if (complain & tf_warning)
-+	warn_logical_operator (loc, code, boolean_type_node,
-+			       code_orig_arg1, arg1, code_orig_arg2, arg2);
-       /* Fall through.  */
-     case GT_EXPR:
-     case LT_EXPR:
-@@ -5686,8 +5687,9 @@ build_new_op_1 (location_t loc, enum tree_code code, int flags, tree arg1,
-     case LE_EXPR:
-     case EQ_EXPR:
-     case NE_EXPR:
--      if ((code_orig_arg1 == BOOLEAN_TYPE)
--	  ^ (code_orig_arg2 == BOOLEAN_TYPE))
-+      if ((complain & tf_warning)
-+	  && ((code_orig_arg1 == BOOLEAN_TYPE)
-+	      ^ (code_orig_arg2 == BOOLEAN_TYPE)))
- 	maybe_warn_bool_compare (loc, code, arg1, arg2);
-       /* Fall through.  */
-     case PLUS_EXPR:
-diff --git a/gcc/testsuite/g++.dg/diagnostic/inhibit-warn.C b/gcc/testsuite/g++.dg/diagnostic/inhibit-warn.C
-new file mode 100644
-index 0000000..5655eb4
---- /dev/null
-+++ b/gcc/testsuite/g++.dg/diagnostic/inhibit-warn.C
-@@ -0,0 +1,32 @@
-+// PR c++/65882
-+// { dg-do compile { target c++11 } }
-+// { dg-options "-Wbool-compare" }
-+
-+// Check that we don't ICE because of reentering error reporting routines while
-+// evaluating template parameters
-+
-+template<typename>
-+struct type_function {
-+  static constexpr bool value = false;
-+};
-+
-+template<bool>
-+struct dependent_type {
-+  typedef int type;
-+};
-+
-+template<typename T>
-+typename dependent_type<(5 > type_function<T>::value)>::type
-+bar();
-+
-+template<typename T>
-+typename dependent_type<(5 > type_function<T>::value)>::type
-+foo()
-+{
-+  return bar<int>();
-+}
-+
-+int main()
-+{
-+  foo<int>();
-+}

Copied: gcc/trunk/pr65882.patch (from rev 238529, gcc/trunk/pr65822.patch)
===================================================================
--- pr65882.patch	                        (rev 0)
+++ pr65882.patch	2015-05-06 07:50:00 UTC (rev 238535)
@@ -0,0 +1,66 @@
+diff --git a/gcc/cp/call.c b/gcc/cp/call.c
+index 7bdf236..689d542 100644
+--- a/gcc/cp/call.c
++++ b/gcc/cp/call.c
+@@ -5677,8 +5677,9 @@ build_new_op_1 (location_t loc, enum tree_code code, int flags, tree arg1,
+     case TRUTH_ORIF_EXPR:
+     case TRUTH_AND_EXPR:
+     case TRUTH_OR_EXPR:
+-      warn_logical_operator (loc, code, boolean_type_node,
+-			     code_orig_arg1, arg1, code_orig_arg2, arg2);
++      if (complain & tf_warning)
++	warn_logical_operator (loc, code, boolean_type_node,
++			       code_orig_arg1, arg1, code_orig_arg2, arg2);
+       /* Fall through.  */
+     case GT_EXPR:
+     case LT_EXPR:
+@@ -5686,8 +5687,9 @@ build_new_op_1 (location_t loc, enum tree_code code, int flags, tree arg1,
+     case LE_EXPR:
+     case EQ_EXPR:
+     case NE_EXPR:
+-      if ((code_orig_arg1 == BOOLEAN_TYPE)
+-	  ^ (code_orig_arg2 == BOOLEAN_TYPE))
++      if ((complain & tf_warning)
++	  && ((code_orig_arg1 == BOOLEAN_TYPE)
++	      ^ (code_orig_arg2 == BOOLEAN_TYPE)))
+ 	maybe_warn_bool_compare (loc, code, arg1, arg2);
+       /* Fall through.  */
+     case PLUS_EXPR:
+diff --git a/gcc/testsuite/g++.dg/diagnostic/inhibit-warn.C b/gcc/testsuite/g++.dg/diagnostic/inhibit-warn.C
+new file mode 100644
+index 0000000..5655eb4
+--- /dev/null
++++ b/gcc/testsuite/g++.dg/diagnostic/inhibit-warn.C
+@@ -0,0 +1,32 @@
++// PR c++/65882
++// { dg-do compile { target c++11 } }
++// { dg-options "-Wbool-compare" }
++
++// Check that we don't ICE because of reentering error reporting routines while
++// evaluating template parameters
++
++template<typename>
++struct type_function {
++  static constexpr bool value = false;
++};
++
++template<bool>
++struct dependent_type {
++  typedef int type;
++};
++
++template<typename T>
++typename dependent_type<(5 > type_function<T>::value)>::type
++bar();
++
++template<typename T>
++typename dependent_type<(5 > type_function<T>::value)>::type
++foo()
++{
++  return bar<int>();
++}
++
++int main()
++{
++  foo<int>();
++}



More information about the arch-commits mailing list