/* Preprocess only, using cpplib.
Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2007,
- 2008 Free Software Foundation, Inc.
+ 2008, 2009 Free Software Foundation, Inc.
Written by Per Bothner, 1994-95.
This program is free software; you can redistribute it and/or modify it
cb->used_undef = cb_used_undef;
}
- /* Initialize the print structure. Setting print.src_line to -1 here is
- a trick to guarantee that the first token of the file will cause
- a linemarker to be output by maybe_print_line. */
- print.src_line = -1;
+ /* Initialize the print structure. */
+ print.src_line = 1;
print.printed = 0;
print.prev = 0;
print.outf = out_stream;
cpp_hashnode *node)
{
macro_queue *q;
+ if (node->flags & NODE_BUILTIN)
+ return;
q = XNEW (macro_queue);
q->macro = xstrdup ((const char *) cpp_macro_definition (pfile, node));
q->next = define_queue;
if (map != NULL)
{
+ input_location = map->start_location;
if (print.first_time)
{
/* Avoid printing foo.i when the main file is foo.c. */