From 264757fb054a1f3639eafddb72e87c57004c6aaa Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Tue, 14 Jun 2016 23:08:34 +0000 Subject: Introduce gcc_rich_location::add_fixit_misspelled_id gcc/c/ChangeLog: * c-typeck.c (build_component_ref): Simplify fixit code by using gcc_rich_location::add_fixit_misspelled_id. (set_init_label): Likewise. gcc/cp/ChangeLog: * typeck.c: Include "gcc-rich-location.h". (finish_class_member_access_expr): Simplify fixit code by using gcc_rich_location::add_fixit_misspelled_id. gcc/ChangeLog: * gcc-rich-location.c (gcc_rich_location::add_fixit_misspelled_id): New method. * gcc-rich-location.h (gcc_rich_location::add_fixit_misspelled_id): Add decl. From-SVN: r237463 --- gcc/gcc-rich-location.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'gcc/gcc-rich-location.c') diff --git a/gcc/gcc-rich-location.c b/gcc/gcc-rich-location.c index a03ce0e..15c0700 100644 --- a/gcc/gcc-rich-location.c +++ b/gcc/gcc-rich-location.c @@ -60,3 +60,17 @@ gcc_rich_location::maybe_add_expr (tree t) if (EXPR_P (t)) add_expr (t); } + +/* Add a fixit hint suggesting replacing the range at MISSPELLED_TOKEN_LOC + with the identifier HINT_ID. */ + +void +gcc_rich_location::add_fixit_misspelled_id (location_t misspelled_token_loc, + tree hint_id) +{ + gcc_assert (TREE_CODE (hint_id) == IDENTIFIER_NODE); + + source_range misspelled_token_range + = get_range_from_loc (line_table, misspelled_token_loc); + add_fixit_replace (misspelled_token_range, IDENTIFIER_POINTER (hint_id)); +} -- cgit v1.1