]>
git.saurik.com Git - bison.git/blob - src/location.c
   2    Copyright (C) 2002 Free Software Foundation, Inc. 
   4    This file is part of Bison, the GNU Compiler Compiler. 
   6    Bison is free software; you can redistribute it and/or modify 
   7    it under the terms of the GNU General Public License as published by 
   8    the Free Software Foundation; either version 2, or (at your option) 
  11    Bison is distributed in the hope that it will be useful, 
  12    but WITHOUT ANY WARRANTY; without even the implied warranty of 
  13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
  14    GNU General Public License for more details. 
  16    You should have received a copy of the GNU General Public License 
  17    along with Bison; see the file COPYING.  If not, write to 
  18    the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 
  19    Boston, MA 02111-1307, USA.  */ 
  27 location 
const empty_location
; 
  29 /* Output to OUT the location LOC. 
  30    Warning: it uses quotearg's slot 3.  */ 
  32 location_print (FILE *out
, location loc
) 
  34   fprintf (out
, "%s:%d.%d", 
  35            quotearg_n_style (3, escape_quoting_style
, loc
.start
.file
), 
  36            loc
.start
.line
, loc
.start
.column
); 
  38   if (loc
.start
.file 
!= loc
.end
.file
) 
  39     fprintf (out
, "-%s:%d.%d", 
  40              quotearg_n_style (3, escape_quoting_style
, loc
.end
.file
), 
  41              loc
.end
.line
, loc
.end
.column 
- 1); 
  42   else if (loc
.start
.line 
< loc
.end
.line
) 
  43     fprintf (out
, "-%d.%d", loc
.end
.line
, loc
.end
.column 
- 1); 
  44   else if (loc
.start
.column 
< loc
.end
.column 
- 1) 
  45     fprintf (out
, "-%d", loc
.end
.column 
- 1);