From b448d263b39c3ce9fb390e41c81a1d43648ee98b Mon Sep 17 00:00:00 2001
From: aldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Mon, 3 Mar 2003 05:31:32 +0000
Subject: [PATCH] 2003-03-02  Aldy Hernandez  <aldyh@redhat.com>

        * cp/decl.c (check_initializer): Check for vector_opaque_p.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63713 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/cp/ChangeLog | 4 ++++
 gcc/cp/decl.c    | 6 ++++++
 2 files changed, 10 insertions(+)

diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 30efcf374645..f9fb1f50d02b 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2003-03-02  Aldy Hernandez  <aldyh@redhat.com>
+
+        * decl.c (check_initializer): Check for vector_opaque_p.
+
 2003-03-02  Ashif Harji  <asharji@uwaterloo.ca>
 
 	* lang-specs.h (default_compilers): Add -no-integrated-cpp flag to
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 2f29c4817566..216d7fef36f6 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -7772,6 +7772,12 @@ check_initializer (tree decl, tree init, int flags)
 	     scalar, so just don't call it.  */
 	  if (CP_AGGREGATE_TYPE_P (type))
 	    init = reshape_init (type, &init);
+
+	  if ((*targetm.vector_opaque_p) (type))
+	    {
+	      error ("opaque vector types cannot be initialized");
+	      init = error_mark_node;
+	    }
 	}
 
       /* If DECL has an array type without a specific bound, deduce the
-- 
GitLab