Skip to content
Snippets Groups Projects
  1. May 24, 2004
    • bonzini's avatar
      ChangeLog: · d856c8a6
      bonzini authored
      2004-05-23  Paolo Bonzini  <bonzini@gnu.org>
      
      	* Makefile.def (host_modules): add libcpp.
      	* Makefile.tpl: Add dependencies on and for libcpp.
      	* Makefile.in: Regenerate.
      	* configure.in: Add libcpp host module.
      	* configure: Regenerate.
      
      config/ChangeLog:
      
      2004-05-23  Paolo Bonzini  <bonzini@gnu.org>
      
      	* acx.m4 (ACX_HEADER_STDBOOL, ACX_HEADER_STRING):
      	From gcc.
      
      gcc/ChangeLog:
      
      2004-05-23  Paolo Bonzini  <bonzini@gnu.org>
      
      	Move libcpp to the toplevel.
      	* Makefile.in: Remove references to libcpp files,
      	use CPPLIBS instead of libcpp.a.  Define SYMTAB_H
      	and change hashtable.h to that.
      	* aclocal.m4 (gcc_AC_HEADER_STDBOOL,
      	gcc_AC_HEADER_STRING, gcc_AC_C__BOOL): Remove.
      	* configure.ac (gcc_AC_C__BOOL, HAVE_UCHAR): Remove tests.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      	* c-ppoutput.c: Include ../libcpp/internal.h instead of cpphash.h.
      	* cppcharset.c: Removed.
      	* cpperror.c: Removed.
      	* cppexp.c: Removed.
      	* cppfiles.c: Removed.
      	* cpphash.c: Removed.
      	* cpphash.h: Removed.
      	* cppinit.c: Removed.
      	* cpplex.c: Removed.
      	* cpplib.c: Removed.
      	* cpplib.h: Removed.
      	* cppmacro.c: Removed.
      	* cpppch.c: Removed.
      	* cpptrad.c: Removed.
      	* cppucnid.h: Removed.
      	* cppucnid.pl: Removed.
      	* cppucnid.tab: Removed.
      	* hashtable.c: Removed.
      	* hashtable.h: Removed.
      	* line-map.c: Removed.
      	* line-map.h: Removed.
      	* mkdeps.c: Removed.
      	* mkdeps.h: Removed.
      	* stringpool.h: Include symtab.h instead of hashtable.h.
      	* tree.h: Include symtab.h instead of hashtable.h.
      	* system.h (O_NONBLOCK, O_NOCTTY): Do not define.
      
      gcc/cp/ChangeLog:
      
      2004-05-23  Paolo Bonzini  <bonzini@gnu.org>
      
      	* Make-lang.in: No need to specify $(LIBCPP).
      
      gcc/java/ChangeLog:
      
      2004-05-23  Paolo Bonzini  <bonzini@gnu.org>
      
      	* Make-lang.in: Link in $(LIBCPP) instead of mkdeps.o.
      
      libcpp/ChangeLog:
      
      2004-05-23  Paolo Bonzini  <bonzini@gnu.org>
      
      	Moved libcpp from the gcc subdirectory to the toplevel.
      	* Makefile.am: New file.
      	* Makefile.in: Regenerate.
      	* configure.ac: New file.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      	* charset.c: Moved from gcc/cppcharset.c.  Add note about
      	brokenness of input charset detection.  Adjust for change
      	in name of cppucnid.h.
      	* errors.c: Moved from gcc/cpperror.c.  Do not include intl.h.
      	* expr.c: Moved from gcc/cppexp.c.
      	* files.c: Moved from gcc/cppfiles.c.  Do not include intl.h.
      	Remove #define of O_BINARY, it is in system.h.
      	* identifiers.c: Moved from gcc/cpphash.c.
      	* internal.h: Moved from gcc/cpphash.h.  Change header
      	guard name.  All other files adjusted to match name change.
      	* init.c: Moved from gcc/cppinit.c.
      	(init_library) [ENABLE_NLS]: Call bindtextdomain.
      	* lex.c: Moved from gcc/cpplex.c.
      	* directives.c: Moved from gcc/cpplib.c.
      	* macro.c: Moved from gcc/cppmacro.c.
      	* pch.c: Moved from gcc/cpppch.c.  Do not include intl.h.
      	* traditional.c: Moved from gcc/cpptrad.c.
      	* ucnid.h: Moved from gcc/cppucnid.h.  Change header
      	guard name.
      	* ucnid.pl: Moved from gcc/cppucnid.pl.
      	* ucnid.tab: Moved from gcc/cppucnid.tab.  Change header
      	guard name.
      	* symtab.c: Moved from gcc/hashtable.c.
      	* line-map.c: Moved from gcc.  Do not include intl.h.
      	* mkdeps.c: Moved from gcc.
      	* system.h: New file.
      
      libcpp/include/ChangeLog:
      
      2004-05-23  Paolo Bonzini  <bonzini@gnu.org>
      
      	* cpplib.h: Moved from gcc.  Change header guard name.
      	* line-map.h: Moved from gcc.  Change header guard name.
      	* mkdeps.h: Moved from gcc.  Change header guard name.
      	* symtab.h: Moved from gcc/hashtable.h.  Change header
      	guard name.
      
      libcpp/po/ChangeLog:
      
      2004-05-23  Paolo Bonzini  <bonzini@gnu.org>
      
      	* be.po: Extracted from gcc/po/be.po.
      	* ca.po: Extracted from gcc/po/ca.po.
      	* da.po: Extracted from gcc/po/da.po.
      	* de.po: Extracted from gcc/po/de.po.
      	* el.po: Extracted from gcc/po/el.po.
      	* es.po: Extracted from gcc/po/es.po.
      	* fr.po: Extracted from gcc/po/fr.po.
      	* ja.po: Extracted from gcc/po/ja.po.
      	* nl.po: Extracted from gcc/po/nl.po.
      	* sv.po: Extracted from gcc/po/sv.po.
      	* tr.po: Extracted from gcc/po/tr.po.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82199 138bc75d-0d04-0410-961f-82ee72b054a4
      d856c8a6
  2. Apr 23, 2004
    • bothner's avatar
      · dbddc569
      bothner authored
      	* line-map.h (struct line_maps):  New field highest_line.
      	(linemap_position_for_column):  Make non-inline function.
      	(LINEMAP_POSITION_FOR_COLUMN):  New macro.
      	* line-map.c (linemap_init):  Clear highest_line field.
      	(linemap_add):  Set highest_line field.
      	(linemap_line_start):  Minor optimization - use highest_line field.
      	Reduce maximum column hint to 10000.  Update highest_line field.
      	(linemap_position_for_column):  Moved from line-map.h.  Optimize a bit.
      	* cpphash.h (struct cpp_reader):  Remove line field - instead use
      	line_table->highest_line.
      	(saved_line):  Remove unused field.
      	(CPP_INCREMENT_FILE):  Don't do linemap_lookup - just use newest map.
      	Use  line_table's highest_line field instead of cpp_reader's line.
      	* cpplib.c (start_directive):  Likewise use highest_line field.
      	(do_line, do_linemarker):  Likewise just use newest map.
      	(_cpp_do_file_change):  Don't need to set cpp_reader's line field.
      	* cpperror.c (cpp_error):  Likewise use highest_line field.
      	* cppfiles.c (open_file_failed:  Likewise.
      	(cpp_make_system_header):  Likewise use newest map and highest_line.
      	* cppinit.c (cpp_create_reader):  Don't initialize removed field.
      	* cpplex.c (_cpp_process_line_notes, _cpp_skip_block_comment,
      	skip_line_comment, skip_whitespace, _cpp_get_fresh_line,
      	_cpp_lex_direct):  Likewise use highest_line.
      	(_cpp_lex_direct):  Use new LINEMAP_POSITION_FOR_COLUMN macro.
      	* cppmacro.c (_cpp_builtin_macro_text):  Likewise use highest_line,
      	and use newest map.
      	* cpppch.c (cpp_read_state):  Don't save+restore cpp_reader's line.
      	* cpptrad.c (_cpp_overlay_buffer):  Don't save cpp_reader's line.
      	(copy_comment, _cpp_scan_out_logical_line):  Likewise use highest_line.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81074 138bc75d-0d04-0410-961f-82ee72b054a4
      dbddc569
  3. Feb 16, 2004
  4. Feb 11, 2004
    • bothner's avatar
      · 610625e3
      bothner authored
      	Represent column numbers using line-map's source_location.
      	The "next available source_location" is now managed internally by
      	line-maps.c rather than by clients.
      	* line-map.h (struct line_map):  New field column_bits.
      	<from_line>:  Rename field to start_location.
      	(struct line_maps):  New fields highest_location and max_column_hint.
      	(linemap_check_files_exited):  New declaration.
      	(linemap_line_start):  New declaration.
      	(linemap_add):  Remove from_line parameter; use highest_location field.
      	(SOURCE_LINE, LAST_SOURCE_LINE):  Modify to use column_bits.
      	(SOURCE_COLUMN, LAST_SOURCE_LINE_LOCATION):  New macros.
      	(CURRENT_LINE_MAP):  Remove macro.
      	(linemap_position_for_column):  New inline function.
      	* line-map.c (linemap_init):  Clear new fields.
      	(linemap_check_files_exited):  New function, extracted from ...
      	(linemap_free):  Use linemap_check_files_exited.
      	(linemap_add):  Remove from_line parameter.  Various updates.
      	(linemap_line_start):  New function.
      	(linemap_lookeup):  Update for new field names.
      	* cpphash.h (struct cpp_reader) <map>:  Field removed.  Because
      	linemap_position_for_column may unpredictably change the current map,
      	it is cleaner and simpler for us to not cache it in cpp_reader.
      	(struct cpp_buffer):  New sysp field.
      	Changed warned_cplusplus_comments and from_stage3 to bitfields.
      	* cppinit.c (cpp_read_min_file):  pfile->map no longer exists.
      	* cpplib.c (do_line, do_linemarker, _cpp_do_file_change):  Get
      	current map using linemap_lookup.
      	(do_linemarker):  Also set buffer's sysp field.
      	(destringize_and_run):  No longer need to decrement current line.
      	* cppfiles.c (_cpp_stack_file):  Set sysp from and in buffer.
      	(search_path_head, open_file_failed):  Use buffer's sysp.
      	(cpp_make_system_header):  Get current map using linemap_lookup.
      	Also set buffer's sysp flag.
      	* cppmacro.c (_cpp_builtin_macro_text):  Likewise use linemap_lookup.
      	* cpphash.h (CPP_INCREMENT_LINE):  New macro.
      	(struct cpp_buffer):  Moved fields saved_cur, saved_rlimit to ...
      	(struct cpp_reader):  ... and adding saved_line_base field.
      	* cpptrad.c (_cpp_overlay_buffer, _cpp_remove_overlay):
      	Update accordingly.  Don't adjust line.
      	(_cpp_scan_out_logical_line):  Use CPP_INCREMENT_LINE.
      	* cpphash.c (CPP_IN_SYSTEM_HEADER):  Replaced macro by ...
      	(cpp_in_system_header):  ... new inline function, using buffer's sysp.
      	* cpperror.c (_cpp_begin_message):  Update to use cpp_in_system_header.
      	* cpplex.c (_cpp_lex_direct):  Likewise.
      	* cppmacro.c (_cpp_builtin_macro_text):  Likewise.
      	* cppmacro.c (_cpp_create_definition):  Use buffer's sysp field.
      	* cpplib.h (struct cpp_token):  Rename line field to src_loc.
      	Remove col field as it is now subsumed by src_loc.
      	* cpperror.c:  Update various field, parameter, and macro names.
      	(print_location):  If col==0, try SOURCE_COLUMN of line.
      	(cpp_error):  Use cur_token's src_loc field, rather than line+col.
      	* cpplib.c (do_diagnostic):  Token's src_loc fields replaces line+col.
      	* cpplex.c (_cpp_process_line_notes, _cpp_lex_direct,
      	_cpp_skip_block_comment):  Use CPP_INCREMENT_LINE.
      	(_cpp_temp_token):  Replace cpp_token's line+col fields by src_loc.
      	(_cpp_get_fresh_line):  Don't need to adjust line for missing newline.
      	(_cpp_lex_direct):  Use linemap_position_for_column.
      	* c-ppoutput.c (maybe_print_line, print_line):  Don't take map
      	parameter.  Instead get it from the line_table global.  Adjust callers.
      	(print):  Remove map field.  Replace line field to src_line.
      	(init_pp_output, account_for_newlines, maybe_print_line):  Adjust.
      	(cb_line_change):  Use SOURCE_COLUMN.  Minor optimizations.
      	(pp_file_change):  Use MAIN_FILE_P since we cannot checked print.map.
      	Use LAST_SOURCE_LINE_LOCATION to "catch up" after #include.
      	* cpptrad.c (copy_comment):  Rename variable.
      	* c-lex.c (map):  Remove static variable, for same reason we removed
      	cpp_reader's map field.
      	(cb_line_change, cb_def_pragma, cb_define, cb_undef):  Hence we need
      	to call linemap_lookup.
      	(cb_line_change):  Token's line field replaced by src_loc.
      	(fe_file_change):  Use MAINFILE_P and LAST_SOURCE_LINE macros.
      	Don't save new_map.
      
      	* cpphash.h, cpperror.c, cpplib.h:  Some renames of fileline to
      	source_location.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77663 138bc75d-0d04-0410-961f-82ee72b054a4
      610625e3
  5. Jan 21, 2004
    • kazu's avatar
      * alias.c, basic-block.h, c-common.c, c-common.h, · a8349c62
      kazu authored
      	c-cppbuiltin.c, c-opts.c, c-pragma.c, c-pretty-print.c,
      	calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c,
      	combine.c, cppcharset.c, cpphash.h, cppinit.c, cpplib.c,
      	cpplib.h, cppmacro.c, crtstuff.c, cselib.c, cselib.h,
      	defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c,
      	expr.h, fix-header.c, function.h, gcc.c, gcse.c, genattrtab.c,
      	genautomata.c, genconditions.c, genemit.c, genflags.c,
      	gengtype.c, gengtype.h, genopinit.c, genrecog.c, gensupport.c,
      	ggc-zone.c, graph.c, haifa-sched.c, input.h, integrate.c,
      	langhooks-def.h, langhooks.c, langhooks.h, line-map.c,
      	line-map.h, local-alloc.c, optabs.c, optabs.h, postreload.c,
      	ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c,
      	rtl.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h,
      	target.h, targhooks.c, toplev.h, tree-inline.c, unwind-pe.h,
      	unwind.h, varray.c, varray.h: Update copyright.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76302 138bc75d-0d04-0410-961f-82ee72b054a4
      a8349c62
  6. Jan 20, 2004
    • bothner's avatar
      · 088db31b
      bothner authored
      	Implement a cache for linemap_lookup.
      	* line-map.h (struct_line_maps):  Add cache field.
      	* line-map.c (linemap_init):  Zero cache field.
      	(linemap_add):  Set cache field to offset of newly allocated map.
      	(linemap_lookup):  Use and set cache field.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76197 138bc75d-0d04-0410-961f-82ee72b054a4
      088db31b
  7. Dec 05, 2003
    • bothner's avatar
      · fd3638df
      bothner authored
      	* line-map.h (source_location):  New typedef.
      	(fileline):  Redefined as source_location.
      	(struct line_map, linemap_add, linemap_lookup):  Replace filefile
      	by source_location.
      	* line-map.c (linemap_add, linemap_lookup):  Use source_location.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74344 138bc75d-0d04-0410-961f-82ee72b054a4
      fd3638df
  8. Jul 30, 2003
  9. Jul 22, 2003
    • bothner's avatar
      · 4d1574ae
      bothner authored
      	* line-map.c (add_line_map):  Handle invalid LEAVE request.
      	Fixes PR preprocessor/11361.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69688 138bc75d-0d04-0410-961f-82ee72b054a4
      4d1574ae
    • zack's avatar
      * hashtable.c (approx_sqrt): Make static. · 196ce2be
      zack authored
      	* hashtable.h: Don't prototype approx_sqrt.
      	* line-map.c (init_line_maps): Rename linemap_init.
      	(free_line_maps): Rename linemap_free.
      	(add_line_map): Rename linemap_add.
      	(lookup_line): Rename linemap_lookup.
      	(print_containing_files): Rename linemap_print_containing_files.
      	* linemap.h: Update to match.
      
      	* cpperror.c, cppinit.c, cpplib.c, cppmacro.c: Update calls to
      	linemap routines to use new names.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69672 138bc75d-0d04-0410-961f-82ee72b054a4
      196ce2be
  10. Jul 19, 2003
    • ghazi's avatar
      * alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c · f0af5a88
      ghazi authored
      	c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in
      	c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c
      	collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c
      	cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c
      	cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c
      	dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c
      	fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c
      	gcse.c genattr.c genattrtab.c genautomata.c genconditions.c
      	genemit.c genextract.c genoutput.c genrecog.c gensupport.c
      	ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c
      	integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c
      	loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c
      	postreload.c prefix.c print-tree.c protoize.c ra-build.c
      	ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c
      	regmove.c regrename.c reload.c reload1.c reorg.c resource.c
      	sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c
      	simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c
      	tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c
      	varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary
      	casts.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69587 138bc75d-0d04-0410-961f-82ee72b054a4
      f0af5a88
  11. Jul 13, 2003
    • zack's avatar
      * Makefile.in (LIBCPP_DEPS): Remove coretypes.h and $(TM_H). · 69edc0b3
      zack authored
      	(hashtable.o, line-map.o, mkdeps.o): Likewise, from dependency
      	list.  Move these all together down by cpplib.
      
      	* cpplib.h: Don't refer to MAX_WCHAR_TYPE_SIZE when determining
      	definition of CPPCHAR_SIGNED_T.
      
      	* cppcharset.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c, cppinit.c
      	* cpplex.c, cpplib.c, cppmacro.c, cpppch.c, cpptrad.c, hashtable.c
      	* line-map.c, mkdeps.c: Don't include coretypes.h or tm.h.
      
      	* cpphash.c (_cpp_init_hashtable): Don't use gcc_obstack_init.
      	* cppinit.c (cpp_create_reader): Likewise.
      
      	* cpphash.h (scan_out_logical_line): Rename _cpp_scan_out_logical_line.
      	* cpptrad.c: Likewise.  All callers changed.
      	* cpplib.c: All callers changed.
      	* c-ppoutput.c: Replace 'uchar' with 'unsigned char' throughout.
      	* hashtable.h: Define GTY(x) to nothing here too.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69298 138bc75d-0d04-0410-961f-82ee72b054a4
      69edc0b3
  12. Jul 03, 2003
  13. Jun 20, 2003
  14. Mar 20, 2003
    • bothner's avatar
      · e9f0d687
      bothner authored
      	Various cleanups to help compile server.
      
      	* line-map.c (add_line_map):  Allow leaving the outermost file.
      	Allowing entering an outermost-file after the initial time.
      
      	* toplev.c (pop_srcloc):  Allow popping from initial file.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@64616 138bc75d-0d04-0410-961f-82ee72b054a4
      e9f0d687
  15. Dec 16, 2002
  16. Aug 21, 2001
    • neil's avatar
      * cppfiles.c (stack_include_file): line-map.c now handles include · 4087823d
      neil authored
      	depth.
      	(handle_missing_handler): Similarly.
      	(_cpp_execute_include): Similarly.
      	(_cpp_pop_file_buffer): Similarly.
      	* cpphash.h (struct cpp_reader): Remove system_include_depth,
      	buffer_stack_depth and include_depth.
      	* cpplib.c (do_include_common): line-map.c now handles include depth.
      	(cpp_push_buffer): Similarly.
      	(_cpp_pop_buffer): Similarly.
      	* cppmacro.c (builtin_macro): Update.
      	* line-map.c (init_line_maps): Set depth.
      	(add_line_map): Increment "used" earlier.  Update and use the
      	include depth.
      	(trace_include): Use the include depth.
      	* line-map.h (struct line_maps): New member depth.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45085 138bc75d-0d04-0410-961f-82ee72b054a4
      4087823d
    • neil's avatar
      * cppfiles.c (stack_include_file): Don't handle -H here. · 438ac94c
      neil authored
      	* cppinit.c (cpp_start_read): Set include tracing after
      	cpp_post_options and after stacking the main file.
      	* line-map.c (trace_include): New.
      	(init_line_maps, add_line_map): Update.
      	* line-map.h (struct line_maps): New member trace_includes.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45084 138bc75d-0d04-0410-961f-82ee72b054a4
      438ac94c
  17. Aug 11, 2001
    • neil's avatar
      * c-lex.c (map): Make const. · f85fcf2b
      neil authored
      	(cb_file_change): Update for callback passing a line map.
      	Don't assume we have a previous map.  Remove sanity check
      	about popping too many files.
      	* cpperror.c (print_location): Make map const.
      	* cppfiles.c (stack_include_file): Update; line maps now hold sysp.
      	(cpp_make_system_header): Similarly.
      	(search_from): Similarly.
      	(_cpp_execute_include): Don't remember where we came from.
      	* cpphash.h (struct cpp_buffer): Remove return_to_line, sysp.
      	(struct cpp_reader): Make map const.
      	(CPP_IN_SYSTEM_HEADER, _cpp_do_file_change): Update.
      	* cpplib.c (do_line): Update; line maps now hold sysp.
      	(cpp_push_buffer): Similarly.
      	(_cpp_do_file_change): Similarly; callback with map instead.
      	(cpp_get_line_maps): Constify return value.
      	(_cpp_pop_buffer): Update.
      	* cpplib.h (struct cpp_file_change): Remove.
      	(struct cpp_callbacks): Update.
      	(cpp_get_line_maps): Constify return value.
      	* cppmacro.c (_cpp_create_definition): Update.
      	* cppmain.c (struct printer): Constify map.
      	(maybe_print_line): Similarly.
      	(print_line): Similarly.  Deduce flags 1 and 2 here.
      	(cb_file_change): Update.
      	* line-map.c (free_line_maps): Warn regardless.
      	(add_line_map): Return pointer to const.  When passed NULL to_file
      	with LC_LEAVE, use the obvious values for the return point so the
      	caller doesn't have to figure them out.
      	(lookup_line): Return pointer to const.
      	(print_containing_files): Take pointer to const.
      	* line-map.h (struct line_map): New members reason, sysp.
      	(add_line_map): Return pointer to const.
      	(lookup_line): Similarly.
      	(print_containing_files): Take pointer to const.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44789 138bc75d-0d04-0410-961f-82ee72b054a4
      f85fcf2b
  18. Aug 06, 2001
    • neil's avatar
      * cpperror.c (print_containing_files): Moved to line-map.c. · bd507c05
      neil authored
      	(print_location): line-map.c handles re-listing or otherwise.
      	* cpphash.h (struct lexer_state): Remove next_bol.
      	(struct cpp_buffer): Remove include_stack_listed.
      	* cpplib.c (do_line, cpp_push_buffer, _cpp_pop_buffer):
      	Remove faked buffer handling.
      	(_cpp_do_file_change): Tweak.
      	* cpplib.h (enum cpp_buffer_type): Remove BUF_FAKE.
      	* cppmain.c (struct printer): Remove filename.
      	(print_line, cb_file_change): Update accordingly.
      	* line-map.c: Include intl.h.
      	(init_line_maps): Initialize last_listed.
      	(free_line_maps): Sanity check, warn if ENABLED_CHECKING.
      	(add_line_map): Sanity check inputs, warn if ENABLED_CHECKING.
      	(print_containing_files): New.
      	* line-map.h (struct line_maps): New member last_listed.
      	(print_containing_files, INCLUDED_FROM): New.
      	* Makefile.in: Update.
      	* po/POTFILES.in: Add line-map.c.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44670 138bc75d-0d04-0410-961f-82ee72b054a4
      bd507c05
  19. Aug 05, 2001
  20. Aug 02, 2001
    • neil's avatar
      * line-map.c: New. · 38692459
      neil authored
      	* line-map.h: New.
      	* Makefile.in (line-map.o): New.
      	(LIBCPP_OBJS, LIBCPP_DEPS): Update.
      	* c-lex.c (cb_file_change): Update for new cpp_file_change structure.
      	* cpperror.c (print_containing_files): Similarly.
      	(print_location): Update.  Don't output a space before _Pragma.
      	* cppfiles.c (stack_include_file): Set to line 1 immediately.
      	(stack_include_filee, cpp_make_system_header): Update.
      	(_cpp_execute_include): Get logical line number right for calling
      	as-yet-unterminated #include.
      	* cpphash.h (struct cpp_reader): Add line_maps.
      	(_cpp_do_file_change): Update.
      	* cppinit.c (cpp_create_reader): Initialize line maps.
      	(cpp_destroy): Destroy line maps.
      	(cpp_start_read): Get logical line number right.
      	* cpplex.c (parse_string): Only warn once for multi-line strings.
      	Use boolean variable for null warning.
      	* cpplib.c (_cpp_handle_directive): End the directive if it isn't
      	already.
      	(do_include_common): End the directive early.
      	(do_line): Don't warn about out-of-range lines in preprocessed
      	source.  Update.  Remove unused variables.
      	(_cpp_do_file_change): Update for new line mapping.
      	(pragma_cb): New typedef.
      	(cpp_register_pragma): Stop looking ahead before calling the
      	handler.  Clean up.
      	(do_pragma_system_header): End directive early.
      	(cpp_get_line_maps): New.
      	(cpp_pop_buffer): Fudge logical line.  Update.
      	* cpplib.h: Include line-map.h
      	(enum cpp_fc_reason): Remove.
      	(struct cpp_file_change): Update.
      	(cpp_get_line_maps): New.
      	* cppmain.c (struct_printer): New member map.
      	(cb_file_change): Update for new mappings.
      	* fix-header.c (cb_file_change): Similarly.
      testsuite:
      	* gcc.dg/cpp/19951025-1.c: Update.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44584 138bc75d-0d04-0410-961f-82ee72b054a4
      38692459
Loading