aboutsummaryrefslogtreecommitdiff
path: root/libcpp/include/line-map.h
diff options
context:
space:
mode:
Diffstat (limited to 'libcpp/include/line-map.h')
-rw-r--r--libcpp/include/line-map.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/libcpp/include/line-map.h b/libcpp/include/line-map.h
index 9bdd5b9..50207ca 100644
--- a/libcpp/include/line-map.h
+++ b/libcpp/include/line-map.h
@@ -757,6 +757,7 @@ struct GTY(()) location_adhoc_data {
location_t locus;
source_range src_range;
void * GTY((skip)) data;
+ unsigned discriminator;
};
struct htab;
@@ -1034,12 +1035,14 @@ LINEMAPS_LAST_ALLOCATED_MACRO_MAP (const line_maps *set)
}
extern location_t get_combined_adhoc_loc (line_maps *, location_t,
- source_range, void *);
+ source_range, void *, unsigned);
extern void *get_data_from_adhoc_loc (const line_maps *, location_t);
+extern unsigned get_discriminator_from_adhoc_loc (const line_maps *, location_t);
extern location_t get_location_from_adhoc_loc (const line_maps *,
location_t);
extern source_range get_range_from_loc (line_maps *set, location_t loc);
+extern unsigned get_discriminator_from_loc (line_maps *set, location_t loc);
/* Get whether location LOC is a "pure" location, or
whether it is an ad-hoc location, or embeds range information. */
@@ -1058,9 +1061,10 @@ inline location_t
COMBINE_LOCATION_DATA (class line_maps *set,
location_t loc,
source_range src_range,
- void *block)
+ void *block,
+ unsigned discriminator)
{
- return get_combined_adhoc_loc (set, loc, src_range, block);
+ return get_combined_adhoc_loc (set, loc, src_range, block, discriminator);
}
extern void rebuild_location_adhoc_htab (class line_maps *);