gcc/libcpp
David Malcolm c7df95d83e PR preprocessor/69177 and PR c++/68819: libcpp fallbacks and -Wmisleading-indentation
gcc/c-family/ChangeLog:
	PR c++/68819
	* c-indentation.c (get_visual_column): Add location_t param.
	Handle the column number being zero by effectively disabling the
	warning, with an "inform".
	(should_warn_for_misleading_indentation): Add location_t argument
	for all uses of get_visual_column.

gcc/testsuite/ChangeLog:
	PR c++/68819
	PR preprocessor/69177
	* gcc.dg/plugin/location-overflow-test-1.c: New test case.
	* gcc.dg/plugin/location-overflow-test-2.c: New test case.
	* gcc.dg/plugin/location_overflow_plugin.c: New test plugin.
	* gcc.dg/plugin/plugin.exp (plugin_test_list): Add the above.

libcpp/ChangeLog:
	PR preprocessor/69177
	* line-map.c (LINE_MAP_MAX_LOCATION_WITH_PACKED_RANGES): New
	constant.
	(LINE_MAP_MAX_LOCATION_WITH_COLS): Add note about unit tests
	to comment.
	(can_be_stored_compactly_p): Reduce threshold from
	LINE_MAP_MAX_LOCATION_WITH_COLS to
	LINE_MAP_MAX_LOCATION_WITH_PACKED_RANGES.
	(get_combined_adhoc_loc): Likewise.
	(get_range_from_loc): Likewise.
	(linemap_line_start): Ensure that a new ordinary map is created
	when transitioning from range-packing being enabled to disabled,
	at the LINE_MAP_MAX_LOCATION_WITH_PACKED_RANGES threshold.  Set
	range_bits to 0 for new ordinary maps when beyond this limit.
	Prevent the "increase the column bits of a freshly created map"
	optimization if the range bits has reduced.

From-SVN: r232379
2016-01-14 19:10:17 +00:00
..
include Update copyright years. 2016-01-04 15:30:50 +01:00
po
aclocal.m4
ChangeLog PR preprocessor/69177 and PR c++/68819: libcpp fallbacks and -Wmisleading-indentation 2016-01-14 19:10:17 +00:00
ChangeLog.jit
charset.c Update copyright years. 2016-01-04 15:30:50 +01:00
config.in ENABLE_CHECKING refactoring: remove remaining occurrences 2015-11-04 15:01:46 +00:00
configure ENABLE_CHECKING refactoring: remove remaining occurrences 2015-11-04 15:01:46 +00:00
configure.ac ENABLE_CHECKING refactoring: remove remaining occurrences 2015-11-04 15:01:46 +00:00
directives-only.c Update copyright years. 2016-01-04 15:30:50 +01:00
directives.c Update copyright years. 2016-01-04 15:30:50 +01:00
errors.c Update copyright years. 2016-01-04 15:30:50 +01:00
expr.c Update copyright years. 2016-01-04 15:30:50 +01:00
files.c re PR c++/69145 (Bogus 'warning: #pragma implementation for ‘...’ appears after file is included') 2016-01-08 07:43:31 +01:00
identifiers.c Update copyright years. 2016-01-04 15:30:50 +01:00
init.c Update copyright years. 2016-01-04 15:30:50 +01:00
internal.h Update copyright years. 2016-01-04 15:30:50 +01:00
lex.c Update copyright years. 2016-01-04 15:30:50 +01:00
line-map.c PR preprocessor/69177 and PR c++/68819: libcpp fallbacks and -Wmisleading-indentation 2016-01-14 19:10:17 +00:00
location-example.txt Source range tracking in libcpp and C FE, with bit-packing optimization 2015-11-13 16:29:59 +00:00
macro.c Update copyright years. 2016-01-04 15:30:50 +01:00
Makefile.in Update copyright years. 2016-01-04 15:30:50 +01:00
makeucnid.c Update copyright years. 2016-01-04 15:30:50 +01:00
mkdeps.c Update copyright years. 2016-01-04 15:30:50 +01:00
pch.c Update copyright years. 2016-01-04 15:30:50 +01:00
symtab.c Update copyright years. 2016-01-04 15:30:50 +01:00
system.h Update copyright years. 2016-01-04 15:30:50 +01:00
traditional.c Update copyright years. 2016-01-04 15:30:50 +01:00
ucnid.h Update copyright years. 2016-01-04 15:30:50 +01:00
ucnid.tab Update copyright years. 2016-01-04 15:30:50 +01:00