Commit 74118f15 by Kaveh R. Ghazi Committed by Kaveh Ghazi

gjavah.c (error): Add ATTRIBUTE_PRINTF_1.

	* gjavah.c (error): Add ATTRIBUTE_PRINTF_1.
	* java-tree.h (parse_error_context): Move...
	* parse.h (parse_error_context): ... here, add ATTRIBUTE_GCC_DIAG.
	* parse.y (parse_warning_context): Add ATTRIBUTE_GCC_DIAG.
	* verify-impl.c (debug_print): Add ATTRIBUTE_PRINTF_1.

From-SVN: r100795
parent e41d82f5
2005-06-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* gjavah.c (error): Add ATTRIBUTE_PRINTF_1.
* java-tree.h (parse_error_context): Move...
* parse.h (parse_error_context): ... here, add ATTRIBUTE_GCC_DIAG.
* parse.y (parse_warning_context): Add ATTRIBUTE_GCC_DIAG.
* verify-impl.c (debug_print): Add ATTRIBUTE_PRINTF_1.
2005-06-08 Roger Sayle <roger@eyesopen.com> 2005-06-08 Roger Sayle <roger@eyesopen.com>
* typeck.c (convert): Only clear TREE_OVERFLOW on INTEGER_CST nodes. * typeck.c (convert): Only clear TREE_OVERFLOW on INTEGER_CST nodes.
......
...@@ -164,7 +164,7 @@ static const unsigned char * ...@@ -164,7 +164,7 @@ static const unsigned char *
decode_signature_piece (FILE *, const unsigned char *, decode_signature_piece (FILE *, const unsigned char *,
const unsigned char *, int *); const unsigned char *, int *);
static void print_class_decls (FILE *, JCF *, int); static void print_class_decls (FILE *, JCF *, int);
static void error (const char *gmsgid, ...); static void error (const char *gmsgid, ...) ATTRIBUTE_PRINTF_1;
static void usage (void) ATTRIBUTE_NORETURN; static void usage (void) ATTRIBUTE_NORETURN;
static void help (void) ATTRIBUTE_NORETURN; static void help (void) ATTRIBUTE_NORETURN;
static void version (void) ATTRIBUTE_NORETURN; static void version (void) ATTRIBUTE_NORETURN;
......
...@@ -1305,7 +1305,6 @@ extern tree emit_symbol_table (tree, tree, tree, tree, tree, int); ...@@ -1305,7 +1305,6 @@ extern tree emit_symbol_table (tree, tree, tree, tree, tree, int);
extern void lang_init_source (int); extern void lang_init_source (int);
extern void write_classfile (tree); extern void write_classfile (tree);
extern char *print_int_node (tree); extern char *print_int_node (tree);
extern void parse_error_context (tree cl, const char *gmsgid, ...);
extern void finish_class (void); extern void finish_class (void);
extern void java_layout_seen_class_methods (void); extern void java_layout_seen_class_methods (void);
extern void check_for_initialization (tree, tree); extern void check_for_initialization (tree, tree);
......
...@@ -120,6 +120,10 @@ extern tree stabilize_reference (tree); ...@@ -120,6 +120,10 @@ extern tree stabilize_reference (tree);
} }
#endif #endif
#ifdef ATTRIBUTE_GCC_DIAG
extern void parse_error_context (tree cl, const char *gmsgid, ...) ATTRIBUTE_GCC_DIAG(2,3);
#endif
#define ABSTRACT_CHECK(FLAG, V, CL, S) \ #define ABSTRACT_CHECK(FLAG, V, CL, S) \
if ((FLAG) & (V)) \ if ((FLAG) & (V)) \
parse_error_context ((CL), "%s method can't be abstract", (S)); parse_error_context ((CL), "%s method can't be abstract", (S));
......
...@@ -96,7 +96,7 @@ static tree lookup_java_method2 (tree, tree, int); ...@@ -96,7 +96,7 @@ static tree lookup_java_method2 (tree, tree, int);
static tree method_header (int, tree, tree, tree); static tree method_header (int, tree, tree, tree);
static void fix_method_argument_names (tree ,tree); static void fix_method_argument_names (tree ,tree);
static tree method_declarator (tree, tree); static tree method_declarator (tree, tree);
static void parse_warning_context (tree cl, const char *gmsgid, ...); static void parse_warning_context (tree cl, const char *gmsgid, ...) ATTRIBUTE_GCC_DIAG(2,3);
#ifdef USE_MAPPED_LOCATION #ifdef USE_MAPPED_LOCATION
static void issue_warning_error_from_context static void issue_warning_error_from_context
(source_location, const char *gmsgid, va_list *); (source_location, const char *gmsgid, va_list *);
......
...@@ -26,21 +26,16 @@ details. */ ...@@ -26,21 +26,16 @@ details. */
verification. */ verification. */
#define INVALID_STATE ((state *) -1) #define INVALID_STATE ((state *) -1)
#ifdef VERIFY_DEBUG static void ATTRIBUTE_PRINTF_1
static void debug_print (const char *fmt ATTRIBUTE_UNUSED, ...)
debug_print (const char *fmt, ...)
{ {
#ifdef VERIFY_DEBUG
va_list ap; va_list ap;
va_start (ap, fmt); va_start (ap, fmt);
vfprintf (stderr, fmt, ap); vfprintf (stderr, fmt, ap);
va_end (ap); va_end (ap);
}
#else
static void
debug_print (const char *fmt ATTRIBUTE_UNUSED, ...)
{
}
#endif /* VERIFY_DEBUG */ #endif /* VERIFY_DEBUG */
}
/* This started as a fairly ordinary verifier, and for the most part /* This started as a fairly ordinary verifier, and for the most part
it remains so. It works in the obvious way, by modeling the effect it remains so. It works in the obvious way, by modeling the effect
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment