]> git.saurik.com Git - bison.git/commitdiff
lalr1.cc: avoid GCC 4.3 warnings.
authorAkim Demaille <demaille@gostai.com>
Fri, 27 Mar 2009 06:26:24 +0000 (07:26 +0100)
committerAkim Demaille <demaille@gostai.com>
Fri, 27 Mar 2009 06:26:24 +0000 (07:26 +0100)
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.

ChangeLog
data/location.cc

index ec89f00df613163857ff46a1043d18b988555489..619b9736246f7b4ea6f64a066da90c86a803cf2d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2009-03-26  Akim Demaille  <demaille@gostai.com>
+
+       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.
+
 2009-03-26  Akim Demaille  <demaille@gostai.com>
 
        gnulib: update.
index 3ad89b39d74311481bed884f60cbb227dc9b0b58..0f82340c0c3e9ca5dbcbdb62b4ce0204c7ccbaa1 100644 (file)
@@ -1,7 +1,7 @@
 # C++ skeleton for Bison
 
-# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation,
-# Inc.
+# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 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
@@ -17,7 +17,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 m4_pushdef([b4_copyright_years],
-           [2002, 2003, 2004, 2005, 2006, 2007, 2008])
+           [2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009])
 
 # We do want M4 expansion after # for CPP macros.
 m4_changecom()
@@ -121,10 +121,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.