* pt.c (tsubst): Allow an array of explicit size zero.
From-SVN: r25400
This commit is contained in:
parent
69688f1ed7
commit
ddce352881
@ -1,3 +1,7 @@
|
|||||||
|
1999-02-24 Jason Merrill <jason@yorick.cygnus.com>
|
||||||
|
|
||||||
|
* pt.c (tsubst): Allow an array of explicit size zero.
|
||||||
|
|
||||||
1999-02-23 Jason Merrill <jason@yorick.cygnus.com>
|
1999-02-23 Jason Merrill <jason@yorick.cygnus.com>
|
||||||
|
|
||||||
* errfn.c: Change varargs code to look like toplev.c.
|
* errfn.c: Change varargs code to look like toplev.c.
|
||||||
|
12
gcc/cp/pt.c
12
gcc/cp/pt.c
@ -6017,9 +6017,9 @@ tsubst (t, args, complain, in_decl)
|
|||||||
return t;
|
return t;
|
||||||
|
|
||||||
{
|
{
|
||||||
tree max = TREE_OPERAND (TYPE_MAX_VALUE (t), 0);
|
tree max, omax = TREE_OPERAND (TYPE_MAX_VALUE (t), 0);
|
||||||
|
|
||||||
max = tsubst_expr (max, args, complain, in_decl);
|
max = tsubst_expr (omax, args, complain, in_decl);
|
||||||
if (max == error_mark_node)
|
if (max == error_mark_node)
|
||||||
return error_mark_node;
|
return error_mark_node;
|
||||||
|
|
||||||
@ -6032,7 +6032,13 @@ tsubst (t, args, complain, in_decl)
|
|||||||
return itype;
|
return itype;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (integer_zerop (max) || INT_CST_LT (max, integer_zero_node))
|
if (integer_zerop (omax))
|
||||||
|
{
|
||||||
|
/* Still allow an explicit array of size zero. */
|
||||||
|
if (pedantic)
|
||||||
|
pedwarn ("creating array with size zero");
|
||||||
|
}
|
||||||
|
else if (integer_zerop (max) || INT_CST_LT (max, integer_zero_node))
|
||||||
{
|
{
|
||||||
/* [temp.deduct]
|
/* [temp.deduct]
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user