Commit 83dd5fae by Tom Tromey Committed by Tom Tromey

parse.y (try_builtin_assignconv): Allow narrowing primitive conversion if…

parse.y (try_builtin_assignconv): Allow narrowing primitive conversion if RHS_TYPE is byte, short, or char.

	* parse.y (try_builtin_assignconv): Allow narrowing primitive
	conversion if RHS_TYPE is byte, short, or char.

From-SVN: r56589
parent d632dee9
2002-08-26 Tom Tromey <tromey@redhat.com>
* parse.y (try_builtin_assignconv): Allow narrowing primitive
conversion if RHS_TYPE is byte, short, or char.
2002-08-22 Tom Tromey <tromey@redhat.com> 2002-08-22 Tom Tromey <tromey@redhat.com>
* gcj.texi (Invoking gij): Document -cp and -classpath. * gcj.texi (Invoking gij): Document -cp and -classpath.
......
...@@ -12915,11 +12915,14 @@ try_builtin_assignconv (wfl_op1, lhs_type, rhs) ...@@ -12915,11 +12915,14 @@ try_builtin_assignconv (wfl_op1, lhs_type, rhs)
new_rhs = convert (lhs_type, rhs); new_rhs = convert (lhs_type, rhs);
/* Try a narrowing primitive conversion (5.1.3): /* Try a narrowing primitive conversion (5.1.3):
- expression is a constant expression of type int AND - expression is a constant expression of type byte, short, char,
  or int, AND
- variable is byte, short or char AND - variable is byte, short or char AND
- The value of the expression is representable in the type of the - The value of the expression is representable in the type of the
variable */ variable */
else if (rhs_type == int_type_node && TREE_CONSTANT (rhs) else if ((rhs_type == byte_type_node || rhs_type == short_type_node
|| rhs_type == char_type_node || rhs_type == int_type_node)
&& TREE_CONSTANT (rhs)
&& (lhs_type == byte_type_node || lhs_type == char_type_node && (lhs_type == byte_type_node || lhs_type == char_type_node
|| lhs_type == short_type_node)) || lhs_type == short_type_node))
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment