===================================================================
@@ -521,11 +521,11 @@ int linemap_location_in_system_header_p
source_location);
/* Return TRUE if LOCATION is a source code location of a token coming
from a macro replacement-list at a macro expansion point, FALSE
otherwise. */
-bool linemap_location_from_macro_expansion_p (struct line_maps *,
+bool linemap_location_from_macro_expansion_p (const struct line_maps *,
source_location);
/* source_location values from 0 to RESERVED_LOCATION_COUNT-1 will
be reserved for libcpp user as special values, no token from libcpp
will contain any of those locations. */
@@ -597,13 +597,14 @@ bool linemap_location_from_macro_expansi
extern source_location
linemap_position_for_column (struct line_maps *, unsigned int);
/* Encode and return a source location from a given line and
column. */
-source_location linemap_position_for_line_and_column (struct line_map *,
- linenum_type,
- unsigned int);
+source_location
+linemap_position_for_line_and_column (const struct line_map *,
+ linenum_type, unsigned int);
+
/* Return the file this map is for. */
#define LINEMAP_FILE(MAP) \
(linemap_check_ordinary (MAP)->d.ordinary.to_file)
/* Return the line number this map started encoding location from. */
===================================================================
@@ -29,12 +29,10 @@ along with this program; see the file CO
static void trace_include (const struct line_maps *, const struct line_map *);
static const struct line_map * linemap_ordinary_map_lookup (struct line_maps *,
source_location);
static const struct line_map* linemap_macro_map_lookup (struct line_maps *,
source_location);
-static source_location linemap_macro_map_loc_to_def_point
-(const struct line_map*, source_location);
static source_location linemap_macro_map_loc_unwind_toward_spelling
(const struct line_map*, source_location);
static source_location linemap_macro_map_loc_to_exp_point
(const struct line_map*, source_location);
static source_location linemap_macro_loc_to_spelling_point
@@ -482,11 +480,11 @@ linemap_enter_macro (struct line_maps *s
definition, it is the locus in the macro definition; otherwise it
is a location in the context of the caller of this macro expansion
(which is a virtual location or a source location if the caller is
itself a macro expansion or not).
- MACRO_DEFINITION_LOC is the location in the macro definition,
+ ORIG_PARM_REPLACEMENT_LOC is the location in the macro definition,
either of the token itself or of a macro parameter that it
replaces. */
source_location
linemap_add_macro_token (const struct line_map *map,
@@ -619,11 +617,11 @@ linemap_position_for_column (struct line
/* Encode and return a source location from a given line and
column. */
source_location
-linemap_position_for_line_and_column (struct line_map *map,
+linemap_position_for_line_and_column (const struct line_map *map,
linenum_type line,
unsigned column)
{
linemap_assert (ORDINARY_MAP_STARTING_LINE_NUMBER (map) <= line);
@@ -770,19 +768,17 @@ linemap_macro_map_loc_to_exp_point (cons
< MACRO_MAP_NUM_MACRO_TOKENS (map));
return MACRO_MAP_EXPANSION_POINT_LOCATION (map);
}
-/* If LOCATION is the source location of a token that belongs to a
- macro replacement-list -- as part of a macro expansion -- then
- return the location of the token at the definition point of the
- macro. Otherwise, return LOCATION. SET is the set of maps
- location come from. ORIGINAL_MAP is an output parm. If non NULL,
- the function sets *ORIGINAL_MAP to the ordinary (non-macro) map the
- returned location comes from. */
+/* LOCATION is the source location of a token that belongs to a macro
+ replacement-list as part of the macro expansion denoted by MAP.
-source_location
+ Return the location of the token at the definition point of the
+ macro. */
+
+static source_location
linemap_macro_map_loc_to_def_point (const struct line_map *map,
source_location location)
{
unsigned token_no;
@@ -938,11 +934,11 @@ linemap_location_in_system_header_p (str
/* Return TRUE if LOCATION is a source code location of a token coming
from a macro replacement-list at a macro expansion point, FALSE
otherwise. */
bool
-linemap_location_from_macro_expansion_p (struct line_maps *set,
+linemap_location_from_macro_expansion_p (const struct line_maps *set,
source_location location)
{
if (IS_ADHOC_LOC (location))
location = set->location_adhoc_data_map.data[location
& MAX_SOURCE_LOCATION].locus;
@@ -1231,13 +1227,13 @@ linemap_macro_loc_to_exp_point (struct l
If LOC is the locus of a token that is not an argument of a
function-like macro, then the function behaves as if LRK was set to
LRK_SPELLING_LOCATION.
- If LOC_MAP is not NULL, *LOC_MAP is set to the map encoding the
+ If MAP is not NULL, *MAP is set to the map encoding the
returned location. Note that if the returned location wasn't originally
- encoded by a map, the *MAP is set to NULL. This can happen if LOC
+ encoded by a map, then *MAP is set to NULL. This can happen if LOC
resolves to a location reserved for the client code, like
UNKNOWN_LOCATION or BUILTINS_LOCATION in GCC. */
source_location
linemap_resolve_location (struct line_maps *set,