diff options
-rw-r--r-- | gcc/cp/contracts.cc | 3 | ||||
-rw-r--r-- | gcc/input.cc | 5 | ||||
-rw-r--r-- | gcc/input.h | 2 |
3 files changed, 6 insertions, 4 deletions
diff --git a/gcc/cp/contracts.cc b/gcc/cp/contracts.cc index 38eb4ad9bfe..79374344207 100644 --- a/gcc/cp/contracts.cc +++ b/gcc/cp/contracts.cc @@ -723,7 +723,8 @@ build_comment (cp_expr condition) { /* Try to get the actual source text for the condition; if that fails pretty print the resulting tree. */ - char *str = get_source (condition.get_start (), condition.get_finish ()); + char *str = get_source_text_between (condition.get_start (), + condition.get_finish ()); if (!str) { /* FIXME cases where we end up here diff --git a/gcc/input.cc b/gcc/input.cc index 7166c810892..9b36356338a 100644 --- a/gcc/input.cc +++ b/gcc/input.cc @@ -949,10 +949,11 @@ location_get_source_line (const char *file_path, int line) return char_span (buffer, len); } -/* Return the source text between two locations. */ +/* Return a copy of the source text between two locations. The caller is + responsible for freeing the return value. */ char * -get_source (location_t start, location_t end) +get_source_text_between (location_t start, location_t end) { expanded_location expstart = expand_location_to_spelling_point (start, LOCATION_ASPECT_START); diff --git a/gcc/input.h b/gcc/input.h index c97768ad2f3..f18769950b5 100644 --- a/gcc/input.h +++ b/gcc/input.h @@ -111,7 +111,7 @@ class char_span }; extern char_span location_get_source_line (const char *file_path, int line); -extern char *get_source (location_t, location_t); +extern char *get_source_text_between (location_t, location_t); extern bool location_missing_trailing_newline (const char *file_path); |