aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>2012-04-23 13:33:32 +0000
committeraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>2012-04-23 13:33:32 +0000
commitbdabd226be0d0b6b33c3ed4d355cf35fb56f31da (patch)
tree9d3e563edb68b9d1e0a814c23ca021eb95c148c4
parent53a87a4b5b721ddabb91eb6b30b0338972fcd1d6 (diff)
2012-04-23 Andrew Haley <aph@redhat.com>
* defineclass.cc (MAJOR_1_7, MINOR_1_7): New. (parse): Allow MAJOR_1_7 classfile version. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186707 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/defineclass.cc6
2 files changed, 9 insertions, 2 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index fa86b07b381..f417a49a5a4 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2012-04-23 Andrew Haley <aph@redhat.com>
+
+ * defineclass.cc (MAJOR_1_7, MINOR_1_7): New.
+ (parse): Allow MAJOR_1_7 classfile version.
+
2012-04-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR libgcj/52645
diff --git a/libjava/defineclass.cc b/libjava/defineclass.cc
index 4c4e0a7f45d..17f60816c69 100644
--- a/libjava/defineclass.cc
+++ b/libjava/defineclass.cc
@@ -361,6 +361,8 @@ _Jv_DefineClass (jclass klass, jbyteArray data, jint offset, jint length,
#define MINOR_1_5 0
#define MAJOR_1_6 50
#define MINOR_1_6 0
+#define MAJOR_1_7 51
+#define MINOR_1_7 0
void
_Jv_ClassReader::parse ()
@@ -371,8 +373,8 @@ _Jv_ClassReader::parse ()
int minor_version = read2u ();
int major_version = read2u ();
- if (major_version < MAJOR_1_1 || major_version > MAJOR_1_6
- || (major_version == MAJOR_1_6 && minor_version > MINOR_1_6))
+ if (major_version < MAJOR_1_1 || major_version > MAJOR_1_7
+ || (major_version == MAJOR_1_7 && minor_version > MINOR_1_7))
throw_class_format_error ("unrecognized class file version");
is_15 = (major_version >= MAJOR_1_5);