aboutsummaryrefslogtreecommitdiff
path: root/gcc/java
diff options
context:
space:
mode:
authorKaveh R. Ghazi <ghazi@caip.rutgers.edu>2000-10-21 15:10:38 +0000
committerKaveh Ghazi <ghazi@gcc.gnu.org>2000-10-21 15:10:38 +0000
commit80393943c7e03b2f48ed1ac247bbbd10f852598b (patch)
tree9d84b78fd2fc7ca2e27ae97d93b06901304c85a9 /gcc/java
parente62ff0c3ba6ce009edae9b2515947d2fc6192c58 (diff)
downloadgcc-80393943c7e03b2f48ed1ac247bbbd10f852598b.zip
gcc-80393943c7e03b2f48ed1ac247bbbd10f852598b.tar.gz
gcc-80393943c7e03b2f48ed1ac247bbbd10f852598b.tar.bz2
Warning fixes:
* gjavah.c (NEED_PEEK_ATTRIBUTE, NEED_SKIP_ATTRIBUTE): Define * jcf-reader.c (peek_attribute, skip_attribute): Only define when requested. * parse.h (yyerror): If JC1_LITE, mark with ATTRIBUTE_NORETURN. * verify.c (CHECK_PC_IN_RANGE): Cast result of stmt-expr to void. From-SVN: r36994
Diffstat (limited to 'gcc/java')
-rw-r--r--gcc/java/ChangeLog11
-rw-r--r--gcc/java/gjavah.c4
-rw-r--r--gcc/java/jcf-reader.c12
-rw-r--r--gcc/java/parse.h6
-rw-r--r--gcc/java/verify.c2
5 files changed, 31 insertions, 4 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 349d5c5..4812eb9 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,14 @@
+2000-10-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gjavah.c (NEED_PEEK_ATTRIBUTE, NEED_SKIP_ATTRIBUTE): Define
+
+ * jcf-reader.c (peek_attribute, skip_attribute): Only define
+ when requested.
+
+ * parse.h (yyerror): If JC1_LITE, mark with ATTRIBUTE_NORETURN.
+
+ * verify.c (CHECK_PC_IN_RANGE): Cast result of stmt-expr to void.
+
2000-10-16 Tom Tromey <tromey@cygnus.com>
* jvspec.c (lang_specific_driver): Recognize -MF and -MT.
diff --git a/gcc/java/gjavah.c b/gcc/java/gjavah.c
index 29cbdf8..6aabf1c 100644
--- a/gcc/java/gjavah.c
+++ b/gcc/java/gjavah.c
@@ -222,6 +222,10 @@ static int decompiled = 0;
if (out && method_printed && !method_synthetic) \
fputs (decompiled || stubs ? "\n" : ";\n", out);
+/* We're going to need {peek,skip}_attribute, enable their definition. */
+#define NEED_PEEK_ATTRIBUTE
+#define NEED_SKIP_ATTRIBUTE
+
#include "jcf-reader.c"
/* Some useful constants. */
diff --git a/gcc/java/jcf-reader.c b/gcc/java/jcf-reader.c
index 1b081e5..4db9065 100644
--- a/gcc/java/jcf-reader.c
+++ b/gcc/java/jcf-reader.c
@@ -27,8 +27,6 @@ The Free Software Foundation is independent of Sun Microsystems, Inc. */
#include "zipfile.h"
static int get_attribute PARAMS ((JCF *));
-static int peek_attribute PARAMS ((JCF *, int, const char *, int));
-static void skip_attribute PARAMS ((JCF *, int));
static int jcf_parse_preamble PARAMS ((JCF *));
static int jcf_parse_constant_pool PARAMS ((JCF *));
static void jcf_parse_class PARAMS ((JCF *));
@@ -36,12 +34,19 @@ static int jcf_parse_fields PARAMS ((JCF *));
static int jcf_parse_one_method PARAMS ((JCF *));
static int jcf_parse_methods PARAMS ((JCF *));
static int jcf_parse_final_attributes PARAMS ((JCF *));
+#ifdef NEED_PEEK_ATTRIBUTE
+static int peek_attribute PARAMS ((JCF *, int, const char *, int));
+#endif
+#ifdef NEED_SKIP_ATTRIBUTE
+static void skip_attribute PARAMS ((JCF *, int));
+#endif
/* Go through all available attribute (ATTRIBUTE_NUMER) and try to
identify PEEKED_NAME. Return 1 if PEEKED_NAME was found, 0
otherwise. JCF is restored to its initial position before
returning. */
+#ifdef NEED_PEEK_ATTRIBUTE /* Not everyone uses this function */
static int
peek_attribute (jcf, attribute_number, peeked_name, peeked_name_length)
JCF *jcf;
@@ -81,7 +86,9 @@ peek_attribute (jcf, attribute_number, peeked_name, peeked_name_length)
JCF_SEEK (jcf, absolute_offset);
return to_return;
}
+#endif
+#ifdef NEED_SKIP_ATTRIBUTE /* Not everyone uses this function */
static void
skip_attribute (jcf, number_of_attribute)
JCF *jcf;
@@ -94,6 +101,7 @@ skip_attribute (jcf, number_of_attribute)
JCF_SKIP (jcf, JCF_readu4 (jcf));
}
}
+#endif
static int
DEFUN(get_attribute, (jcf),
diff --git a/gcc/java/parse.h b/gcc/java/parse.h
index 40fad4a..17c2bd6 100644
--- a/gcc/java/parse.h
+++ b/gcc/java/parse.h
@@ -940,6 +940,10 @@ extern void java_parser_context_save_global PARAMS ((void));
extern void java_parser_context_restore_global PARAMS ((void));
int yyparse PARAMS ((void));
extern int java_parse PARAMS ((void));
-void yyerror PARAMS ((const char *));
+extern void yyerror PARAMS ((const char *))
+#ifdef JC1_LITE
+ATTRIBUTE_NORETURN
+#endif
+;
extern void java_expand_classes PARAMS ((void));
#endif
diff --git a/gcc/java/verify.c b/gcc/java/verify.c
index 5bc82cf..463509a 100644
--- a/gcc/java/verify.c
+++ b/gcc/java/verify.c
@@ -353,7 +353,7 @@ start_pc_cmp (xp, yp)
goto verify_error; } while (0)
#ifdef __GNUC__
-#define CHECK_PC_IN_RANGE(PC) ({if (PC < 0 || PC > length) goto bad_pc; 1;})
+#define CHECK_PC_IN_RANGE(PC) ({if (PC < 0 || PC > length) goto bad_pc; (void)1;})
#else
#define CHECK_PC_IN_RANGE(PC) (PC < 0 || PC > length ? \
(fatal("Bad byte codes.\n"), 0) : 1)