aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2004-10-18 15:01:51 -0700
committerRichard Henderson <rth@gcc.gnu.org>2004-10-18 15:01:51 -0700
commita2d366026e8042675482657128836760d547e593 (patch)
tree0790cb00fd0dad4f3178590f4e96261baeef03a7 /gcc
parent135a488f2327bcf593c089a4dcee7baf48682fa0 (diff)
downloadgcc-a2d366026e8042675482657128836760d547e593.zip
gcc-a2d366026e8042675482657128836760d547e593.tar.gz
gcc-a2d366026e8042675482657128836760d547e593.tar.bz2
c-common.c (handle_mode_attribute): Allow scalar->vector type changes yet.
* c-common.c (handle_mode_attribute): Allow scalar->vector type changes yet. From-SVN: r89248
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/c-common.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ac8efa9..28a3177 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-10-18 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (handle_mode_attribute): Allow scalar->vector
+ type changes yet.
+
2004-10-18 Kazu Hirata <kazu@cs.umass.edu>
* expr.c (expand_expr_real_1) [MODIFY_EXPR]: Don't request a
diff --git a/gcc/c-common.c b/gcc/c-common.c
index c05779c..271b436 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -4386,7 +4386,9 @@ handle_mode_attribute (tree *node, tree name, tree args,
TYPE_PRECISION (type) = TYPE_PRECISION (typefm);
typefm = type;
}
- else if (TREE_CODE (type) != TREE_CODE (typefm))
+ else if (VECTOR_MODE_P (mode)
+ ? TREE_CODE (type) != TREE_CODE (TREE_TYPE (typefm))
+ : TREE_CODE (type) != TREE_CODE (typefm))
{
error ("mode %qs applied to inappropriate type", p);
return NULL_TREE;