public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Jakub Jelinek <jakub@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/gcc] f43: 15.3.1-1
Date: Wed, 22 Jul 2026 11:10:18 GMT	[thread overview]
Message-ID: <178471861850.1.9216808720934524445.rpms-gcc-de06b232fcef@fedoraproject.org> (raw)

A new commit has been pushed.

Repo   : rpms/gcc
Branch : f43
Commit : de06b232fcefe33bb14fa0b98da8f6573d5dd3e4
Author : Jakub Jelinek <jakub@redhat.com>
Date   : 2026-07-22T13:10:06+02:00
Stats  : +0/-237 in 4 file(s)
URL    : https://src.fedoraproject.org/rpms/gcc/c/de06b232fcefe33bb14fa0b98da8f6573d5dd3e4?branch=f43

Log:
15.3.1-1

---
diff --git a/gcc.spec b/gcc.spec
index 41c0202..ddc582e 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -312,9 +312,6 @@ Patch9: gcc15-Wno-format-security.patch
 Patch10: gcc15-rh1574936.patch
 Patch11: gcc15-d-shared-libphobos.patch
 Patch12: gcc15-pr119006.patch
-Patch13: gcc15-pr123273.patch
-Patch14: gcc15-pr123667.patch
-Patch15: gcc15-pr123737.patch
 
 Patch50: isl-rh2155127.patch
 

diff --git a/gcc15-pr123273.patch b/gcc15-pr123273.patch
deleted file mode 100644
index 987f6e0..0000000
--- a/gcc15-pr123273.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-2026-01-06  Jakub Jelinek  <jakub@redhat.com>
-
-	PR preprocessor/123273
-	* lex.cc (cpp_directive_only_process): Only go to done_comment
-	for '/' if star is true and esc is false.  When seeing '\\' with
-	esc set to true, clear esc as well as star instead of keeping esc
-	set.
-
-	* c-c++-common/cpp/dir-only-10.c: New test.
-	* c-c++-common/cpp/dir-only-11.c: New test.
-
---- libcpp/lex.cc.jj	2026-01-02 09:56:10.417332292 +0100
-+++ libcpp/lex.cc	2026-01-05 16:40:26.413766032 +0100
-@@ -5461,7 +5461,13 @@ cpp_directive_only_process (cpp_reader *
- 		    switch (c)
- 		      {
- 		      case '\\':
--			esc = true;
-+			if (esc)
-+			  {
-+			    star = false;
-+			    esc = false;
-+			  }
-+			else
-+			  esc = true;
- 			break;
- 
- 		      case '\r':
-@@ -5492,7 +5498,7 @@ cpp_directive_only_process (cpp_reader *
- 			break;
- 
- 		      case '/':
--			if (star)
-+			if (star && !esc)
- 			  goto done_comment;
- 			/* FALLTHROUGH  */
- 
---- gcc/testsuite/c-c++-common/cpp/dir-only-10.c.jj	2026-01-05 17:04:26.144566116 +0100
-+++ gcc/testsuite/c-c++-common/cpp/dir-only-10.c	2026-01-05 17:05:02.226946201 +0100
-@@ -0,0 +1,5 @@
-+/* PR preprocessor/123273 */
-+/* { dg-do preprocess } */
-+/* { dg-options -fdirectives-only } */
-+
-+/* *\/""" */
---- gcc/testsuite/c-c++-common/cpp/dir-only-11.c.jj	2026-01-05 17:05:18.498666647 +0100
-+++ gcc/testsuite/c-c++-common/cpp/dir-only-11.c	2026-01-05 17:06:17.574651691 +0100
-@@ -0,0 +1,6 @@
-+/* PR preprocessor/123273 */
-+/* { dg-do preprocess } */
-+/* { dg-options -fdirectives-only } */
-+
-+/* *\\
-+/""" */

diff --git a/gcc15-pr123667.patch b/gcc15-pr123667.patch
deleted file mode 100644
index be8eb6f..0000000
--- a/gcc15-pr123667.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-2026-01-21  Jakub Jelinek  <jakub@redhat.com>
-
-	PR c++/123667
-	* semantics.cc (finish_decltype_type): Allow a structured binding
-	for ptds.saved to have DECL_HAS_VALUE_EXPR_P cleared, if it is
-	not within current_function_decl, but in that case assert that
-	lookup_decomp_type succeeded.
-
-	* g++.dg/cpp1z/decomp66.C: New test.
-	* g++.dg/cpp1z/decomp67.C: New test.
-
---- gcc/cp/semantics.cc.jj	2026-01-15 16:33:46.000000000 +0100
-+++ gcc/cp/semantics.cc	2026-01-21 17:55:14.272577246 +0100
-@@ -13062,12 +13062,16 @@ finish_decltype_type (tree expr, bool id
- 	{
- 	  if (ptds.saved)
- 	    {
--	      gcc_checking_assert (DECL_HAS_VALUE_EXPR_P (expr));
-+	      gcc_checking_assert (DECL_HAS_VALUE_EXPR_P (expr)
-+				   || (DECL_CONTEXT (expr)
-+				       != current_function_decl));
- 	      /* DECL_HAS_VALUE_EXPR_P is always set if
--		 processing_template_decl.  If lookup_decomp_type
-+		 processing_template_decl at least for structured bindings
-+		 within the template.  If lookup_decomp_type
- 		 returns non-NULL, it is the tuple case.  */
- 	      if (tree ret = lookup_decomp_type (expr))
- 		return ret;
-+	      gcc_checking_assert (DECL_HAS_VALUE_EXPR_P (expr));
- 	    }
- 	  if (DECL_HAS_VALUE_EXPR_P (expr))
- 	    /* Expr is an array or struct subobject proxy, handle
---- gcc/testsuite/g++.dg/cpp1z/decomp66.C.jj	2026-01-21 17:59:28.122275457 +0100
-+++ gcc/testsuite/g++.dg/cpp1z/decomp66.C	2026-01-21 17:58:30.737247916 +0100
-@@ -0,0 +1,23 @@
-+// PR c++/123667
-+// { dg-do compile { target c++14 } }
-+// { dg-options "" }
-+
-+namespace std {
-+  template <typename T> struct tuple_size;
-+  template <int, typename> struct tuple_element;
-+}
-+
-+struct A {
-+  int i;
-+  template <int I> int &get () { return i; }
-+};
-+
-+template <> struct std::tuple_size <A> { static const int value = 2; };
-+template <int I> struct std::tuple_element <I,A> { using type = int; };
-+
-+int
-+main ()
-+{
-+  auto [ x, y ] = A { 0 };	// { dg-warning "structured bindings only available with" "" { target c++14_down } }
-+  [] (auto t) { using z = decltype (x); } (1);
-+}
---- gcc/testsuite/g++.dg/cpp1z/decomp67.C.jj	2026-01-21 17:59:31.139224331 +0100
-+++ gcc/testsuite/g++.dg/cpp1z/decomp67.C	2026-01-21 17:59:07.235629406 +0100
-@@ -0,0 +1,33 @@
-+// PR c++/123667
-+// { dg-do compile { target c++11 } }
-+// { dg-options "" }
-+
-+namespace std {
-+  template <typename T> struct tuple_size;
-+  template <int, typename> struct tuple_element;
-+}
-+
-+struct A {
-+  int i;
-+  template <int I> int &get () { return i; }
-+};
-+
-+template <> struct std::tuple_size <A> { static const int value = 2; };
-+template <int I> struct std::tuple_element <I,A> { using type = int; };
-+
-+auto [ x, y ] = A { 0 };	// { dg-warning "structured bindings only available with" "" { target c++14_down } }
-+
-+template <int N>
-+void
-+foo ()
-+{
-+  using a = decltype (x);
-+  auto [ x, y ] = A { 0 };	// { dg-warning "structured bindings only available with" "" { target c++14_down } }
-+  using b = decltype (x);
-+}
-+
-+void
-+bar ()
-+{
-+  foo <42> ();
-+}

diff --git a/gcc15-pr123737.patch b/gcc15-pr123737.patch
deleted file mode 100644
index 7040ee0..0000000
--- a/gcc15-pr123737.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-2026-01-21  Jakub Jelinek  <jakub@redhat.com>
-
-	PR c++/123737
-	* parser.cc (cp_parser_expression): Don't handle CPP_EMBED just
-	as the last byte in it if expression has or might have overloaded
-	type.  In that case call build_x_compound_expr for each byte
-	in CPP_EMBED separately.
-
-	* g++.dg/cpp/embed-28.C: New test.
-	* g++.dg/parse/comma3.C: New test.
-
---- gcc/cp/parser.cc.jj	2026-01-20 01:13:20.324260446 +0100
-+++ gcc/cp/parser.cc	2026-01-21 14:04:32.086336386 +0100
-@@ -12132,10 +12132,24 @@ cp_parser_expression (cp_parser* parser,
- 	     and one CPP_NUMBER plus CPP_COMMA before it and one
- 	     CPP_COMMA plus CPP_NUMBER after it is guaranteed by
- 	     the preprocessor.  Thus, parse the whole CPP_EMBED just
--	     as a single INTEGER_CST, the last byte in it.  */
-+	     as a single INTEGER_CST, the last byte in it.  Though,
-+	     don't use that shortcut if the comma operator could be
-+	     overloaded.  */
- 	  tree raw_data = cp_lexer_peek_token (parser->lexer)->u.value;
- 	  location_t loc = cp_lexer_peek_token (parser->lexer)->location;
- 	  cp_lexer_consume_token (parser->lexer);
-+	  if (OVERLOAD_TYPE_P (TREE_TYPE (expression))
-+	      || type_dependent_expression_p (expression))
-+	    for (unsigned i = 0; i < RAW_DATA_LENGTH (raw_data) - 1U; ++i)
-+	      {
-+		assignment_expression
-+		  = *raw_data_iterator (raw_data, i);
-+		assignment_expression.set_location (loc);
-+		expression
-+		  = build_x_compound_expr (loc, expression,
-+					   assignment_expression, NULL_TREE,
-+					   complain_flags (decltype_p));
-+	      }
- 	  assignment_expression
- 	    = *raw_data_iterator (raw_data, RAW_DATA_LENGTH (raw_data) - 1);
- 	  assignment_expression.set_location (loc);
---- gcc/testsuite/g++.dg/cpp/embed-28.C.jj	2026-01-21 14:11:14.617520864 +0100
-+++ gcc/testsuite/g++.dg/cpp/embed-28.C	2026-01-21 14:11:01.121749695 +0100
-@@ -0,0 +1,19 @@
-+// PR c++/123737
-+// { dg-do run }
-+// { dg-options "--embed-dir=${srcdir}/c-c++-common/cpp/embed-dir" }
-+
-+struct A {
-+  A (int x) : a (0), e (x) {}
-+  unsigned long a, e;
-+  A &operator, (int) { ++a; return *this; }
-+  ~A () { if (a != e) __builtin_abort (); }
-+};
-+
-+int
-+main ()
-+{
-+  A a = 231;
-+  a,
-+#embed <magna-carta.txt> limit (231)
-+    ;
-+}
---- gcc/testsuite/g++.dg/parse/comma3.C.jj	2026-01-21 14:08:53.834908004 +0100
-+++ gcc/testsuite/g++.dg/parse/comma3.C	2026-01-21 12:15:02.334948163 +0100
-@@ -0,0 +1,22 @@
-+// PR c++/123737
-+// { dg-do run }
-+
-+struct A {
-+  A (int x) : a (0), e (x) {}
-+  unsigned long a, e;
-+  A &operator, (int) { ++a; return *this; }
-+  ~A () { if (a != e) __builtin_abort (); }
-+};
-+
-+int
-+main ()
-+{
-+  A a = 131;
-+  a, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-+     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-+     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-+     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-+     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-+     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-+     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0;
-+}

             reply	other threads:[~2026-07-22 11:10 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-22 11:10 Jakub Jelinek [this message]
  -- strict thread matches above, loose matches on Subject: below --
2026-07-22 10:25 [rpms/gcc] f43: 15.3.1-1 Jakub Jelinek
2026-07-22 10:09 Jakub Jelinek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178471861850.1.9216808720934524445.rpms-gcc-de06b232fcef@fedoraproject.org \
    --to=jakub@redhat.com \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox