From 80393943c7e03b2f48ed1ac247bbbd10f852598b Mon Sep 17 00:00:00 2001 From: "Kaveh R. Ghazi" Date: Sat, 21 Oct 2000 15:10:38 +0000 Subject: [PATCH] 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 --- gcc/java/ChangeLog | 11 +++++++++++ gcc/java/gjavah.c | 4 ++++ gcc/java/jcf-reader.c | 12 ++++++++++-- gcc/java/parse.h | 6 +++++- gcc/java/verify.c | 2 +- 5 files changed, 31 insertions(+), 4 deletions(-) diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 349d5c5d999..4812eb92441 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,14 @@ +2000-10-21 Kaveh R. Ghazi + + * 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 * jvspec.c (lang_specific_driver): Recognize -MF and -MT. diff --git a/gcc/java/gjavah.c b/gcc/java/gjavah.c index 29cbdf82cef..6aabf1c8adc 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 1b081e54fbe..4db90657d09 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 40fad4aef2d..17c2bd69010 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 5bc82cfe381..463509a3949 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) -- 2.30.2