public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Jakub Jelinek <jakub@fedoraproject.org>
To: git-commits@fedoraproject.org
Subject: [rpms/gcc] rhel-f41-base: 4.3.0-6
Date: Mon, 29 Jun 2026 12:23:46 GMT	[thread overview]
Message-ID: <178273582625.1.6665171676799570933.rpms-gcc-08a0a12f84e1@fedoraproject.org> (raw)

A new commit has been pushed.

Repo   : rpms/gcc
Branch : rhel-f41-base
Commit : 08a0a12f84e1679d0f02bea944f7974ac4e53bd9
Author : Jakub Jelinek <jakub@fedoraproject.org>
Date   : 2008-04-04T12:50:28+00:00
Stats  : +224/-72 in 6 file(s)
URL    : https://src.fedoraproject.org/rpms/gcc/c/08a0a12f84e1679d0f02bea944f7974ac4e53bd9?branch=rhel-f41-base

Log:
4.3.0-6

---
diff --git a/.cvsignore b/.cvsignore
index 232b5fb..68b3b04 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1,2 +1,2 @@
-gcc-4.3.0-20080326.tar.bz2
+gcc-4.3.0-20080404.tar.bz2
 fastjar-0.95.tar.gz

diff --git a/gcc43-pr35546.patch b/gcc43-pr35546.patch
deleted file mode 100644
index bd67623..0000000
--- a/gcc43-pr35546.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-2008-03-25  Jakub Jelinek  <jakub@redhat.com>
-
-	PR c++/35546
-	* pt.c (apply_late_template_attributes): Don't call tsubst on
-	first attribute argument if it is IDENTIFIER_NODE.
-
-	* g++.dg/ext/attrib33.C: New test.
-
---- gcc/cp/pt.c.jj	2008-03-10 17:11:48.000000000 +0100
-+++ gcc/cp/pt.c	2008-03-25 21:32:17.000000000 +0100
-@@ -6717,9 +6717,29 @@ apply_late_template_attributes (tree *de
- 	    {
- 	      *p = TREE_CHAIN (t);
- 	      TREE_CHAIN (t) = NULL_TREE;
--	      TREE_VALUE (t)
--		= tsubst_expr (TREE_VALUE (t), args, complain, in_decl,
--			       /*integral_constant_expression_p=*/false);
-+	      /* If the first attribute argument is an identifier, don't
-+		 pass it through tsubst.  Attributes like mode, format,
-+		 cleanup and several target specific attributes expect it
-+		 unmodified.  */
-+	      if (TREE_VALUE (t)
-+		  && TREE_CODE (TREE_VALUE (t)) == TREE_LIST
-+		  && TREE_VALUE (TREE_VALUE (t))
-+		  && (TREE_CODE (TREE_VALUE (TREE_VALUE (t)))
-+		      == IDENTIFIER_NODE))
-+		{
-+		  tree chain
-+		    = tsubst_expr (TREE_CHAIN (TREE_VALUE (t)), args, complain,
-+				   in_decl,
-+				   /*integral_constant_expression_p=*/false);
-+		  if (chain != TREE_CHAIN (TREE_VALUE (t)))
-+		    TREE_VALUE (t)
-+		      = tree_cons (NULL_TREE, TREE_VALUE (TREE_VALUE (t)),
-+				   chain);
-+		}
-+	      else
-+		TREE_VALUE (t)
-+		  = tsubst_expr (TREE_VALUE (t), args, complain, in_decl,
-+				 /*integral_constant_expression_p=*/false);
- 	      *q = t;
- 	      q = &TREE_CHAIN (t);
- 	    }
---- gcc/testsuite/g++.dg/ext/attrib33.C.jj	2008-03-25 23:05:51.000000000 +0100
-+++ gcc/testsuite/g++.dg/ext/attrib33.C	2008-03-25 23:06:15.000000000 +0100
-@@ -0,0 +1,18 @@
-+// PR c++/35546
-+// { dg-do compile }
-+
-+template <int N>
-+struct T
-+{
-+  void foo (char const * ...) __attribute__ ((format (printf,2,3)));
-+};
-+
-+template struct T<3>;
-+
-+template <typename T>
-+struct U
-+{
-+  typedef T __attribute__((mode (SI))) V;
-+};
-+
-+U<int>::V v;

diff --git a/gcc43-pr35751.patch b/gcc43-pr35751.patch
new file mode 100644
index 0000000..37b8427
--- /dev/null
+++ b/gcc43-pr35751.patch
@@ -0,0 +1,114 @@
+2008-04-03  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c/35751
+	* c-decl.c (finish_decl): If extern or static var has variable
+	size, set TREE_TYPE (decl) to error_mark_node.
+
+	* decl.c (layout_var_decl): If extern or static var has variable
+	size, set TREE_TYPE (decl) to error_mark_node.
+
+	* gcc.dg/gomp/pr35751.c: New test.
+	* g++.dg/gomp/pr35751.C: New test.
+
+--- gcc/c-decl.c.jj	2008-04-03 09:41:42.000000000 +0200
++++ gcc/c-decl.c	2008-04-03 18:20:52.000000000 +0200
+@@ -3481,7 +3481,10 @@ finish_decl (tree decl, tree init, tree 
+ 	  if (TREE_CODE (DECL_SIZE (decl)) == INTEGER_CST)
+ 	    constant_expression_warning (DECL_SIZE (decl));
+ 	  else
+-	    error ("storage size of %q+D isn%'t constant", decl);
++	    {
++	      error ("storage size of %q+D isn%'t constant", decl);
++	      TREE_TYPE (decl) = error_mark_node;
++	    }
+ 	}
+ 
+       if (TREE_USED (type))
+--- gcc/cp/decl.c.jj	2008-03-31 23:54:40.000000000 +0200
++++ gcc/cp/decl.c	2008-04-03 18:30:19.000000000 +0200
+@@ -4442,7 +4442,10 @@ layout_var_decl (tree decl)
+       if (TREE_CODE (DECL_SIZE (decl)) == INTEGER_CST)
+ 	constant_expression_warning (DECL_SIZE (decl));
+       else
+-	error ("storage size of %qD isn't constant", decl);
++	{
++	  error ("storage size of %qD isn't constant", decl);
++	  TREE_TYPE (decl) = error_mark_node;
++	}
+     }
+ }
+ 
+--- gcc/testsuite/gcc.dg/gomp/pr35751.c.jj	2008-04-03 18:26:12.000000000 +0200
++++ gcc/testsuite/gcc.dg/gomp/pr35751.c	2008-04-03 18:25:51.000000000 +0200
+@@ -0,0 +1,34 @@
++/* PR c/35751 */
++/* { dg-do compile } */
++/* { dg-options "-fopenmp" } */
++
++void
++foo (int i)
++{
++  extern int a[i];	/* { dg-error "must have no linkage|storage size of" } */
++  static int b[i];	/* { dg-error "storage size of" } */
++
++#pragma omp parallel
++  {
++    a[0] = 0;
++    b[0] = 0;
++  }
++
++#pragma omp parallel shared (a, b)
++  {
++    a[0] = 0;
++    b[0] = 0;
++  }
++
++#pragma omp parallel private (a, b)
++  {
++    a[0] = 0;
++    b[0] = 0;
++  }
++
++#pragma omp parallel firstprivate (a, b)
++  {
++    a[0] = 0;
++    b[0] = 0;
++  }
++}
+--- gcc/testsuite/g++.dg/gomp/pr35751.C.jj	2008-04-03 18:32:13.000000000 +0200
++++ gcc/testsuite/g++.dg/gomp/pr35751.C	2008-04-03 18:32:32.000000000 +0200
+@@ -0,0 +1,34 @@
++// PR c/35751
++// { dg-do compile }
++// { dg-options "-fopenmp" }
++
++void
++foo (int i)
++{
++  extern int a[i];	// { dg-error "storage size of" }
++  static int b[i];	// { dg-error "storage size of" }
++
++#pragma omp parallel
++  {
++    a[0] = 0;
++    b[0] = 0;
++  }
++
++#pragma omp parallel shared (a, b)
++  {
++    a[0] = 0;
++    b[0] = 0;
++  }
++
++#pragma omp parallel private (a, b)
++  {
++    a[0] = 0;
++    b[0] = 0;
++  }
++
++#pragma omp parallel firstprivate (a, b)
++  {
++    a[0] = 0;
++    b[0] = 0;
++  }
++}

diff --git a/gcc43-rh251682.patch b/gcc43-rh251682.patch
new file mode 100644
index 0000000..e96ae6f
--- /dev/null
+++ b/gcc43-rh251682.patch
@@ -0,0 +1,89 @@
+2008-04-01  Jakub Jelinek  <jakub@redhat.com>
+
+	PR pch/13675
+	* files.c (struct _cpp_file): Remove pch field.
+	(pch_open_file): Don't set file->pch, just file->pchname.
+	(should_stack_file): After pfile->cb.read_pch call
+	free pchname and clear pchname, don't close file->fd.
+	Test file->pchname instead of file->pch.  Don't close fd after cb.
+	(_cpp_stack_include): Test file->pchname instead of file->pch.
+
+	* c-pch.c (c_common_read_pch): On error close (fd) resp. fclose (f).
+
+--- libcpp/files.c.jj	2008-02-18 23:50:17.000000000 +0100
++++ libcpp/files.c	2008-03-31 15:59:01.000000000 +0200
+@@ -106,9 +106,6 @@ struct _cpp_file
+ 
+   /* If BUFFER above contains the true contents of the file.  */
+   bool buffer_valid;
+-
+-  /* File is a PCH (on return from find_include_file).  */
+-  bool pch;
+ };
+ 
+ /* A singly-linked list for all searches for a given file name, with
+@@ -322,9 +319,7 @@ pch_open_file (cpp_reader *pfile, _cpp_f
+ 	    }
+ 	  closedir (pchdir);
+ 	}
+-      if (valid)
+-	file->pch = true;
+-      else
++      if (!valid)
+ 	*invalid_pch = true;
+     }
+ 
+@@ -703,11 +698,12 @@ should_stack_file (cpp_reader *pfile, _c
+     return false;
+ 
+   /* Handle PCH files immediately; don't stack them.  */
+-  if (file->pch)
++  if (file->pchname)
+     {
+       pfile->cb.read_pch (pfile, file->pchname, file->fd, file->path);
+-      close (file->fd);
+       file->fd = -1;
++      free ((void *) file->pchname);
++      file->pchname = NULL;
+       return false;
+     }
+ 
+@@ -916,7 +912,7 @@ _cpp_stack_include (cpp_reader *pfile, c
+      complicates LAST_SOURCE_LINE_LOCATION.  This does not apply if we
+      found a PCH file (in which case linemap_add is not called) or we
+      were included from the command-line.  */
+-  if (! file->pch && file->err_no == 0 && type != IT_CMDLINE)
++  if (file->pchname == NULL && file->err_no == 0 && type != IT_CMDLINE)
+     pfile->line_table->highest_location--;
+ 
+   return _cpp_stack_file (pfile, file, type == IT_IMPORT);
+--- gcc/c-pch.c.jj	2008-02-18 23:46:08.000000000 +0100
++++ gcc/c-pch.c	2008-03-31 15:56:00.000000000 +0200
+@@ -372,6 +372,7 @@ c_common_read_pch (cpp_reader *pfile, co
+   if (f == NULL)
+     {
+       cpp_errno (pfile, CPP_DL_ERROR, "calling fdopen");
++      close (fd);
+       return;
+     }
+ 
+@@ -380,6 +381,7 @@ c_common_read_pch (cpp_reader *pfile, co
+   if (fread (&h, sizeof (h), 1, f) != 1)
+     {
+       cpp_errno (pfile, CPP_DL_ERROR, "reading");
++      fclose (f);
+       return;
+     }
+ 
+@@ -425,7 +427,10 @@ c_common_read_pch (cpp_reader *pfile, co
+   gt_pch_restore (f);
+ 
+   if (cpp_read_state (pfile, name, f, smd) != 0)
+-    return;
++    {
++      fclose (f);
++      return;
++    }
+ 
+   fclose (f);
+ 

diff --git a/gcc43.spec b/gcc43.spec
index 6d06f5b..1b5f7cd 100644
--- a/gcc43.spec
+++ b/gcc43.spec
@@ -1,6 +1,6 @@
-%define DATE 20080326
+%define DATE 20080404
 %define gcc_version 4.3.0
-%define gcc_release 5
+%define gcc_release 6
 %define _unpackaged_files_terminate_build 0
 %define multilib_64_archs sparc64 ppc64 s390x x86_64
 %define include_gappletviewer 1
@@ -142,8 +142,9 @@ Patch12: gcc43-cpp-pragma.patch
 Patch13: gcc43-java-debug-iface-type.patch
 Patch14: gcc43-libgomp-speedup.patch
 Patch15: gcc43-pr35440.patch
-Patch16: gcc43-pr35546.patch
-Patch17: gcc43-i386-libgomp.patch
+Patch16: gcc43-i386-libgomp.patch
+Patch17: gcc43-pr35751.patch
+Patch18: gcc43-rh251682.patch
 
 # On ARM EABI systems, we do want -gnueabi to be part of the
 # target triple.
@@ -443,8 +444,9 @@ which are required to run programs compiled with the GNAT.
 %patch13 -p0 -b .java-debug-iface-type~
 %patch14 -p0 -b .libgomp-speedup~
 %patch15 -p0 -b .pr35440~
-%patch16 -p0 -b .pr35546~
-%patch17 -p0 -b .i386-libgomp~
+%patch16 -p0 -b .i386-libgomp~
+%patch17 -p0 -b .pr35751~
+%patch18 -p0 -b .rh251682~
 
 tar xzf %{SOURCE4}
 
@@ -1660,6 +1662,17 @@ fi
 %doc rpm.doc/changelogs/libmudflap/ChangeLog*
 
 %changelog
+* Fri Apr  4 2008 Jakub Jelinek <jakub@redhat.com> 4.3.0-6
+- update from gcc-4_3-branch
+  - PRs ada/33857, c++/35245, c++/35741, c/35738, fortran/35698,
+	fortran/35699, fortran/35702, fortran/35724, fortran/35740,
+	fortran/35786, libfortran/35699, libstdc++/35725, middle-end/35429,
+	middle-end/35705, middle-end/35818, target/31110, target/31232,
+	target/35657, tree-opt/35431
+- fix OpenMP ICE on invalid extern/static VLA (PR c/35751)
+- fix PCH failure if a precompiled header is included more than
+  once (#251682, PR pch/13675)
+
 * Thu Mar 27 2008 Jakub Jelinek <jakub@redhat.com> 4.3.0-5
 - fix libgomp when sync builtins aren't available
 - on i386 build libgomp and __cxa_guard_* as i486+,

diff --git a/sources b/sources
index 2a16371..d2ea01e 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-115ce1b73cce124647e910bd5da7fcff  gcc-4.3.0-20080326.tar.bz2
+37e8ad834b055b24825a9c1fe383576e  gcc-4.3.0-20080404.tar.bz2
 92a70f9e56223b653bce0f58f90cf950  fastjar-0.95.tar.gz

                 reply	other threads:[~2026-06-29 12:23 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=178273582625.1.6665171676799570933.rpms-gcc-08a0a12f84e1@fedoraproject.org \
    --to=jakub@fedoraproject.org \
    --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