diff options
author | Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | 2003-07-04 01:55:50 +0000 |
---|---|---|
committer | Kaveh Ghazi <ghazi@gcc.gnu.org> | 2003-07-04 01:55:50 +0000 |
commit | 5f1989e65d23624efdbf26bde56f375e3caa6a22 (patch) | |
tree | d40d3df53a09947e306cecdd4c52164ae5ff60fc /gcc/cp | |
parent | 54c378f0438b6a1d718ef626389fff2ca91a0f9f (diff) | |
download | gcc-5f1989e65d23624efdbf26bde56f375e3caa6a22.zip gcc-5f1989e65d23624efdbf26bde56f375e3caa6a22.tar.gz gcc-5f1989e65d23624efdbf26bde56f375e3caa6a22.tar.bz2 |
c-aux-info.c: Include toplev.h after c-tree.h.
gcc:
* c-aux-info.c: Include toplev.h after c-tree.h.
* c-common.c: Likewise.
(GCC_DIAG_STYLE): Undef.
* c-semantics.c (GCC_DIAG_STYLE): Define.
* c-tree.h (GCC_DIAG_STYLE): Likewise.
* diagnostic.h (inform): Move prototype to toplev.h.
* jump.c: Include diagnostic.h before toplev.h.
* toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
(warning, error, fatal_error, pedwarn, sorry, inform,
error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
cp:
* cp-tree.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_CXXDIAG): Define.
(cp_error_at, cp_warning_at, cp_pedwarn_at): Mark with
ATTRIBUTE_GCC_CXXDIAG.
From-SVN: r68910
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/cp-tree.h | 18 |
2 files changed, 20 insertions, 4 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 1e75a34..ba6abbe 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> + + * cp-tree.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_CXXDIAG): Define. + (cp_error_at, cp_warning_at, cp_pedwarn_at): Mark with + ATTRIBUTE_GCC_CXXDIAG. + 2003-07-03 Mark Mitchell <mark@codesourcery.com> * call.c (build_scoped_method_call): Use convert_to_void. diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 8612b8c..1620015 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -3802,10 +3802,6 @@ extern tree set_guard (tree); extern void prepare_assemble_variable (tree); extern void lower_function (tree); -extern void cp_error_at (const char *msgid, ...); -extern void cp_warning_at (const char *msgid, ...); -extern void cp_pedwarn_at (const char *msgid, ...); - /* XXX Not i18n clean. */ #define cp_deprecated(STR) \ do { \ @@ -4344,4 +4340,18 @@ extern bool cp_dump_tree (void *, tree); /* -- end of C++ */ +/* In order for the format checking to accept the C++ frontend + diagnostic framework extensions, you must include this file before + toplev.h, not after. */ +#define GCC_DIAG_STYLE __gcc_cxxdiag__ +#if GCC_VERSION >= 3004 +#define ATTRIBUTE_GCC_CXXDIAG(m, n) __attribute__ ((__format__ (GCC_DIAG_STYLE, m, n))) ATTRIBUTE_NONNULL(m) +#else +#define ATTRIBUTE_GCC_CXXDIAG(m, n) ATTRIBUTE_NONNULL(m) +#endif + +extern void cp_error_at (const char *, ...) ATTRIBUTE_GCC_CXXDIAG(1, 2); +extern void cp_warning_at (const char *, ...) ATTRIBUTE_GCC_CXXDIAG(1, 2); +extern void cp_pedwarn_at (const char *, ...) ATTRIBUTE_GCC_CXXDIAG(1, 2); + #endif /* ! GCC_CP_TREE_H */ |