lalr1.cc: avoid GCC 4.3 warnings.

GCC 4.3 now warns about "a || b && c" and asks for explicit
parentheses.
Reported by Alexandre Duret-Lutz.
	* data/location.cc: Update copyright years.
	(Position::operator==): Use parens to make precedence explicit.
	Compare lines and columns first, as they are more likely to be
	different, and they are faster to compare.
This commit is contained in:
Akim Demaille
2009-03-26 23:02:18 +01:00
parent f307943941
commit b328890a9e
2 changed files with 20 additions and 8 deletions

View File

@@ -1,7 +1,7 @@
# C++ skeleton for Bison
# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation,
# Inc.
# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2009
# Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@ m4_changecom()
m4_divert_push(0)dnl
@output(b4_dir_prefix[]position.hh@)
b4_copyright([Positions for Bison parsers in C++],
[2002, 2003, 2004, 2005, 2006])[
[2002, 2003, 2004, 2005, 2006, 2007, 2009])[
/**
** \file position.hh
@@ -116,10 +116,11 @@ b4_copyright([Positions for Bison parsers in C++],
inline bool
operator== (const position& pos1, const position& pos2)
{
return
(pos1.filename == pos2.filename
|| pos1.filename && pos2.filename && *pos1.filename == *pos2.filename)
&& pos1.line == pos2.line && pos1.column == pos2.column;
return (pos1.line == pos2.line
&& pos1.column == pos2.column
&& (pos1.filename == pos2.filename
|| (pos1.filename && pos2.filename
&& *pos1.filename == *pos2.filename)));
}
/// Compare two position objects.
@@ -145,7 +146,7 @@ b4_copyright([Positions for Bison parsers in C++],
#endif // not BISON_POSITION_HH]
@output(b4_dir_prefix[]location.hh@)
b4_copyright([Locations for Bison parsers in C++],
[2002, 2003, 2004, 2005, 2006])[
[2002, 2003, 2004, 2005, 2006, 2007, 2009])[
/**
** \file location.hh