Commit 3dee4905 by Rainer Orth Committed by Rainer Orth

Fix java bootstrap on 32-bit targets

	* jcf-dump.c (print_constant): Cast JPOOL_USHORT2, JPOOL_USHORT1
	results to long to match formats.

From-SVN: r186330
parent a1fa0e6c
2012-04-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* jcf-dump.c (print_constant): Cast JPOOL_USHORT2, JPOOL_USHORT1
results to long to match formats.
2012-04-11 Andrew Haley <aph@redhat.com> 2012-04-11 Andrew Haley <aph@redhat.com>
* jcf-reader.c (jcf_parse_bootstrap_methods): Add * jcf-reader.c (jcf_parse_bootstrap_methods): Add
......
...@@ -926,19 +926,20 @@ print_constant (FILE *out, JCF *jcf, int index, int verbosity) ...@@ -926,19 +926,20 @@ print_constant (FILE *out, JCF *jcf, int index, int verbosity)
case 3: case 3:
case 4: case 4:
if (verbosity > 0) if (verbosity > 0)
fprintf (out, "Fieldref: %ld=", JPOOL_USHORT2 (jcf, index)); fprintf (out, "Fieldref: %ld=", (long) JPOOL_USHORT2 (jcf, index));
print_constant (out, jcf, JPOOL_USHORT2 (jcf, index), 0); print_constant (out, jcf, JPOOL_USHORT2 (jcf, index), 0);
case 5: case 5:
case 6: case 6:
case 7: case 7:
case 8: case 8:
if (verbosity > 0) if (verbosity > 0)
fprintf (out, "Methodref: %ld=", JPOOL_USHORT2 (jcf, index)); fprintf (out, "Methodref: %ld=", (long) JPOOL_USHORT2 (jcf, index));
print_constant (out, jcf, JPOOL_USHORT2 (jcf, index), 0); print_constant (out, jcf, JPOOL_USHORT2 (jcf, index), 0);
break; break;
case 9: case 9:
if (verbosity > 0) if (verbosity > 0)
fprintf (out, "InterfaceMethodref: %ld=", JPOOL_USHORT2 (jcf, index)); fprintf (out, "InterfaceMethodref: %ld=",
(long) JPOOL_USHORT2 (jcf, index));
print_constant (out, jcf, JPOOL_USHORT2 (jcf, index), 0); print_constant (out, jcf, JPOOL_USHORT2 (jcf, index), 0);
break; break;
} }
...@@ -946,7 +947,7 @@ print_constant (FILE *out, JCF *jcf, int index, int verbosity) ...@@ -946,7 +947,7 @@ print_constant (FILE *out, JCF *jcf, int index, int verbosity)
} }
case CONSTANT_MethodType: case CONSTANT_MethodType:
if (verbosity > 0) if (verbosity > 0)
fprintf (out, "MethodType %ld: ", JPOOL_USHORT1 (jcf, index)); fprintf (out, "MethodType %ld: ", (long) JPOOL_USHORT1 (jcf, index));
print_signature (out, jcf, JPOOL_USHORT1 (jcf, index), 0); print_signature (out, jcf, JPOOL_USHORT1 (jcf, index), 0);
break; break;
case CONSTANT_InvokeDynamic: case CONSTANT_InvokeDynamic:
...@@ -954,7 +955,8 @@ print_constant (FILE *out, JCF *jcf, int index, int verbosity) ...@@ -954,7 +955,8 @@ print_constant (FILE *out, JCF *jcf, int index, int verbosity)
uint16 name_and_type = JPOOL_USHORT2 (jcf, index); uint16 name_and_type = JPOOL_USHORT2 (jcf, index);
if (verbosity > 0) if (verbosity > 0)
fprintf (out, "InvokeDynamic: "); fprintf (out, "InvokeDynamic: ");
fprintf (out, "bootstrap_method: %ld ", JPOOL_USHORT1 (jcf, index)); fprintf (out, "bootstrap_method: %ld ",
(long) JPOOL_USHORT1 (jcf, index));
if (verbosity == 2) if (verbosity == 2)
fprintf (out, " name_and_type: %d=<", name_and_type); fprintf (out, " name_and_type: %d=<", name_and_type);
print_constant_terse (out, jcf, name_and_type, CONSTANT_NameAndType); print_constant_terse (out, jcf, name_and_type, CONSTANT_NameAndType);
......
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