From: Michael Beck Date: Tue, 25 Mar 2003 14:01:37 +0000 (+0000) Subject: Checks now for "const not on const graph" problem X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=8460bcce8b63e9bfad66f7d7a42fa476e4a1ad4a;p=libfirm Checks now for "const not on const graph" problem [r965] --- diff --git a/ir/tr/trvrfy.h b/ir/tr/trvrfy.h index e147faec9..58eb75be1 100644 --- a/ir/tr/trvrfy.h +++ b/ir/tr/trvrfy.h @@ -20,23 +20,37 @@ #include "firm.h" /** - * possible error codes + * possible trvrfy() error codes */ enum trvrfy_error_codes { - no_error = 0, - error_ent_not_cont = 1, - error_null_mem, - error_const_on_wrong_obstack, + no_error = 0, /**< no error */ + error_ent_not_cont = 1, /**< overwritten entity not in superclass */ + error_null_mem = 2, /**< compound contains NULL member */ + error_const_on_wrong_irg = 3, /**< constant placed on wrong IRG */ }; /** * Walks the type information and performs a set of sanity checks. * + * Currently, the following checks are executed: + * - values of initialized entities must be allocated on the constant IRG + * - class types: doesn't have NULL members + * - class types: all overwrites are existant in the super type + * * @return * 0 if graph is correct * else error code. */ int tr_vrfy(void); +/** + * If NDEBUG is defined performs nothing, else calles the tr_vrfy() function. + */ +#ifdef NDEBUG +#define TR_VRFY() 0 +#else +#define TR_VRFY() tr_vrfy() +#endif + #endif /* TRVRFY_H */