]> git.saurik.com Git - bison.git/commitdiff
Sort methods.
authorAkim Demaille <demaille@gostai.com>
Mon, 21 Jul 2008 19:21:04 +0000 (21:21 +0200)
committerAkim Demaille <demaille@gostai.com>
Tue, 4 Nov 2008 20:21:56 +0000 (21:21 +0100)
* data/lalr1-fusion.cc (destroy): Use as() in its definition.
Define it after as().

ChangeLog
data/lalr1-fusion.cc

index a9be89ff77fa6b057327a6310fe35630056f855c..051dced2c49d685ad5ac7ccf08a1ad9bf4f72064 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-11-04  Akim Demaille  <demaille@gostai.com>
+
+       Sort methods.
+       * data/lalr1-fusion.cc (destroy): Use as() in its definition.
+       Define it after as().
+
 2008-11-04  Akim Demaille  <demaille@gostai.com>
 
        Useless parens.
index bae0c49e64f10ae0fe555aa3afb2173fa71c66da..e3cafff83bb9195a354e2224ab94d9153af4fb1a 100644 (file)
@@ -186,14 +186,6 @@ dnl FIXME: This is wrong, we want computed header guards.
       return *new (buffer) T;
     }
 
-    /// Destroy the stored \a T.
-    template <typename T>
-    inline void
-    destroy()
-    {
-      reinterpret_cast<T&>(buffer).~T();
-    }
-
     /// Accessor to a built \a T.
     template <typename T>
     inline T&
@@ -210,6 +202,14 @@ dnl FIXME: This is wrong, we want computed header guards.
       return reinterpret_cast<const T&>(buffer);
     }
 
+    /// Destroy the stored \a T.
+    template <typename T>
+    inline void
+    destroy()
+    {
+      as<T>().~T();
+    }
+
     /// A buffer large enough to store any of the semantic values.
     char buffer[S];
   };