summaryrefslogtreecommitdiff
path: root/gcc/java/parse.y
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/java/parse.y')
-rw-r--r--gcc/java/parse.y10
1 files changed, 7 insertions, 3 deletions
diff --git a/gcc/java/parse.y b/gcc/java/parse.y
index d457f1a046d..d117368445f 100644
--- a/gcc/java/parse.y
+++ b/gcc/java/parse.y
@@ -48,6 +48,8 @@ definitions and other extensions. */
%{
#include "config.h"
#include "system.h"
+#include "coretypes.h"
+#include "tm.h"
#include <dirent.h>
#include "tree.h"
#include "rtl.h"
@@ -5195,7 +5197,9 @@ obtain_incomplete_type (type_name)
else
abort ();
+ /* Workaround from build_pointer_type for incomplete types. */
BUILD_PTR_FROM_NAME (ptr, name);
+ TYPE_MODE (ptr) = ptr_mode;
layout_type (ptr);
return ptr;
@@ -7485,7 +7489,7 @@ source_end_java_method ()
patched. Dump it to a file if the user requested it. */
dump_java_tree (TDI_original, fndecl);
- java_optimize_inline (fndecl);
+ java_optimize_inline (fndecl);
/* Generate function's code */
if (BLOCK_EXPR_BODY (DECL_FUNCTION_BODY (fndecl))
@@ -8145,9 +8149,9 @@ java_expand_method_bodies (class)
/* Save the function for inlining. */
if (flag_inline_trees)
- DECL_SAVED_TREE (decl) =
+ DECL_SAVED_TREE (decl) =
BLOCK_EXPR_BODY (DECL_FUNCTION_BODY (decl));
-
+
/* It's time to assign the variable flagging static class
initialization based on which classes invoked static methods
are definitely initializing. This should be flagged. */