From 22d663823adbd7b1a17e0c7b89ab8c489ae6c8f4 Mon Sep 17 00:00:00 2001 From: Mikhail Maltsev Date: Wed, 21 Oct 2015 22:22:03 +0000 Subject: [PATCH] [PATCH 2/9] ENABLE_CHECKING refactoring: libcpp [PATCH 2/9] ENABLE_CHECKING refactoring: libcpp * include/line-map.h: Use CHECKING_P instead of ENABLE_CHECKING. * init.c: Likewise. * macro.c (struct macro_arg_token_iter, set_arg_token, macro_arg_token_iter_init, macro_arg_token_iter_forward, macro_arg_token_iter_get_token, macro_arg_token_iter_get_location, alloc_expanded_arg_mem, _cpp_backup_tokens): Likewise. From-SVN: r229154 --- libcpp/ChangeLog | 7 +++++++ libcpp/include/line-map.h | 2 +- libcpp/init.c | 2 +- libcpp/macro.c | 38 +++++++++++++++----------------------- 4 files changed, 24 insertions(+), 25 deletions(-) diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 972e9a5606f..f474fe7db7f 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,5 +1,12 @@ 2015-10-21 Mikhail Maltsev + * include/line-map.h: Use CHECKING_P instead of ENABLE_CHECKING. + * init.c: Likewise. + * macro.c (struct macro_arg_token_iter, set_arg_token, + macro_arg_token_iter_init, macro_arg_token_iter_forward, + macro_arg_token_iter_get_token, macro_arg_token_iter_get_location, + alloc_expanded_arg_mem, _cpp_backup_tokens): Likewise. + * config.in: Regenerate. * configure: Regenerate. * configure.ac (CHECKING_P): Define. diff --git a/libcpp/include/line-map.h b/libcpp/include/line-map.h index bc747c116bb..e718fc24bb4 100644 --- a/libcpp/include/line-map.h +++ b/libcpp/include/line-map.h @@ -272,7 +272,7 @@ struct GTY((tag ("2"))) line_map_macro : public line_map { source_location expansion; }; -#if defined ENABLE_CHECKING && (GCC_VERSION >= 2007) +#if CHECKING_P && (GCC_VERSION >= 2007) /* Assertion macro to be used in line-map code. */ #define linemap_assert(EXPR) \ diff --git a/libcpp/init.c b/libcpp/init.c index 2d5626fd9ab..0419e954905 100644 --- a/libcpp/init.c +++ b/libcpp/init.c @@ -535,7 +535,7 @@ cpp_init_builtins (cpp_reader *pfile, int hosted) /* Sanity-checks are dependent on command-line options, so it is called as a subroutine of cpp_read_main_file (). */ -#if ENABLE_CHECKING +#if CHECKING_P static void sanity_checks (cpp_reader *); static void sanity_checks (cpp_reader *pfile) { diff --git a/libcpp/macro.c b/libcpp/macro.c index 786c21beba3..60a07533394 100644 --- a/libcpp/macro.c +++ b/libcpp/macro.c @@ -73,7 +73,7 @@ struct macro_arg_token_iter -ftrack-macro-expansion is used this location tracks loci across macro expansion. */ const source_location *location_ptr; -#ifdef ENABLE_CHECKING +#if CHECKING_P /* The number of times the iterator went forward. This useful only when checking is enabled. */ size_t num_forwards; @@ -1310,14 +1310,11 @@ set_arg_token (macro_arg *arg, const cpp_token *token, if (loc != NULL) { -#ifdef ENABLE_CHECKING - if (kind == MACRO_ARG_TOKEN_STRINGIFIED - || !track_macro_exp_p) - /* We can't set the location of a stringified argument - token and we can't set any location if we aren't tracking - macro expansion locations. */ - abort (); -#endif + /* We can't set the location of a stringified argument + token and we can't set any location if we aren't tracking + macro expansion locations. */ + gcc_checking_assert (kind != MACRO_ARG_TOKEN_STRINGIFIED + && track_macro_exp_p); *loc = location; } } @@ -1403,7 +1400,7 @@ macro_arg_token_iter_init (macro_arg_token_iter *iter, iter->location_ptr = NULL; if (track_macro_exp_p) iter->location_ptr = get_arg_token_location (arg, kind); -#ifdef ENABLE_CHECKING +#if CHECKING_P iter->num_forwards = 0; if (track_macro_exp_p && token_ptr != NULL @@ -1428,14 +1425,14 @@ macro_arg_token_iter_forward (macro_arg_token_iter *it) it->location_ptr++; break; case MACRO_ARG_TOKEN_STRINGIFIED: -#ifdef ENABLE_CHECKING +#if CHECKING_P if (it->num_forwards > 0) abort (); #endif break; } -#ifdef ENABLE_CHECKING +#if CHECKING_P it->num_forwards++; #endif } @@ -1444,7 +1441,7 @@ macro_arg_token_iter_forward (macro_arg_token_iter *it) static const cpp_token * macro_arg_token_iter_get_token (const macro_arg_token_iter *it) { -#ifdef ENABLE_CHECKING +#if CHECKING_P if (it->kind == MACRO_ARG_TOKEN_STRINGIFIED && it->num_forwards > 0) abort (); @@ -1458,7 +1455,7 @@ macro_arg_token_iter_get_token (const macro_arg_token_iter *it) static source_location macro_arg_token_iter_get_location (const macro_arg_token_iter *it) { -#ifdef ENABLE_CHECKING +#if CHECKING_P if (it->kind == MACRO_ARG_TOKEN_STRINGIFIED && it->num_forwards > 0) abort (); @@ -2144,11 +2141,9 @@ tokens_buff_add_token (_cpp_buff *buffer, static void alloc_expanded_arg_mem (cpp_reader *pfile, macro_arg *arg, size_t capacity) { -#ifdef ENABLE_CHECKING - if (arg->expanded != NULL - || arg->expanded_virt_locs != NULL) - abort (); -#endif + gcc_checking_assert (arg->expanded == NULL + && arg->expanded_virt_locs == NULL); + arg->expanded = XNEWVEC (const cpp_token *, capacity); if (CPP_OPTION (pfile, track_macro_expansion)) arg->expanded_virt_locs = XNEWVEC (source_location, capacity); @@ -2709,10 +2704,7 @@ _cpp_backup_tokens (cpp_reader *pfile, unsigned int count) { macro_context *m = pfile->context->c.mc; m->cur_virt_loc--; -#ifdef ENABLE_CHECKING - if (m->cur_virt_loc < m->virt_locs) - abort (); -#endif + gcc_checking_assert (m->cur_virt_loc >= m->virt_locs); } else abort (); -- 2.30.2