aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/java-tree.h
diff options
context:
space:
mode:
authorTom Tromey <tromey@cygnus.com>2000-05-19 16:04:10 +0000
committerTom Tromey <tromey@gcc.gnu.org>2000-05-19 16:04:10 +0000
commit67db0ce7480b53fbf7d9b632cae0b7c15b3bfdc8 (patch)
tree0416c1ff3b56daf1ff3a14bd481b259133e60841 /gcc/java/java-tree.h
parent43490bec9d0db6490c1232fb83c69633da67e5ab (diff)
downloadgcc-67db0ce7480b53fbf7d9b632cae0b7c15b3bfdc8.zip
gcc-67db0ce7480b53fbf7d9b632cae0b7c15b3bfdc8.tar.gz
gcc-67db0ce7480b53fbf7d9b632cae0b7c15b3bfdc8.tar.bz2
java-tree.h: Added init state enum.
* java-tree.h: Added init state enum. * decl.c (emit_init_test_initialization): Initialize class initialization check variable by looking at class' state. From-SVN: r34022
Diffstat (limited to 'gcc/java/java-tree.h')
-rw-r--r--gcc/java/java-tree.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h
index a27b6b0..2b77434 100644
--- a/gcc/java/java-tree.h
+++ b/gcc/java/java-tree.h
@@ -1165,4 +1165,25 @@ extern int java_error_count; \
return; \
}
+/* These are the possible values for the `state' field of the class
+ structure. This must be kept in sync with libgcj. */
+enum
+{
+ JV_STATE_NOTHING = 0, /* Set by compiler. */
+
+ JV_STATE_PRELOADING = 1, /* Can do _Jv_FindClass. */
+ JV_STATE_LOADING = 3, /* Has super installed. */
+ JV_STATE_LOADED = 5, /* Is complete. */
+
+ JV_STATE_COMPILED = 6, /* This was a compiled class. */
+
+ JV_STATE_PREPARED = 7, /* Layout & static init done. */
+ JV_STATE_LINKED = 9, /* Strings interned. */
+
+ JV_STATE_IN_PROGRESS = 10, /* <Clinit> running. */
+ JV_STATE_DONE = 12,
+
+ JV_STATE_ERROR = 14 /* must be last. */
+};
+
#undef DEBUG_JAVA_BINDING_LEVELS