Rearrange declaration ordering to match GCC 4.7 C++ rules.

This commit is contained in:
Jerry James 2012-01-10 16:38:29 -07:00
parent 1af8b5f18c
commit 4c15fd5062
2 changed files with 29 additions and 0 deletions

25
stp-gcc47.patch Normal file
View File

@ -0,0 +1,25 @@
--- ./src/sat/mtl/Map.h.orig 2010-11-27 19:45:43.000000000 -0700
+++ ./src/sat/mtl/Map.h 2012-01-10 16:30:55.918767977 -0700
@@ -29,17 +29,17 @@ namespace Minisat {
// Default hash/equals functions
//
+static inline uint32_t hash(uint32_t x){ return x; }
+static inline uint32_t hash(uint64_t x){ return (uint32_t)x; }
+static inline uint32_t hash(int32_t x) { return (uint32_t)x; }
+static inline uint32_t hash(int64_t x) { return (uint32_t)x; }
+
template<class K> struct Hash { uint32_t operator()(const K& k) const { return hash(k); } };
template<class K> struct Equal { bool operator()(const K& k1, const K& k2) const { return k1 == k2; } };
template<class K> struct DeepHash { uint32_t operator()(const K* k) const { return hash(*k); } };
template<class K> struct DeepEqual { bool operator()(const K* k1, const K* k2) const { return *k1 == *k2; } };
-static inline uint32_t hash(uint32_t x){ return x; }
-static inline uint32_t hash(uint64_t x){ return (uint32_t)x; }
-static inline uint32_t hash(int32_t x) { return (uint32_t)x; }
-static inline uint32_t hash(int64_t x) { return (uint32_t)x; }
-
//=================================================================================================
// Some primes

View File

@ -22,6 +22,9 @@ Source0: stp-%{version}.tar.xz
# This patch has not yet been sent upstream. Fix a bunch of compiler warnings
# that may indicate miscompiled code.
Patch0: stp-warning.patch
# This patch has not yet been sent upstream. Deal with new C++ declaration
# ordering rules in GCC 4.7.
Patch1: stp-gcc47.patch
BuildRequires: bison
BuildRequires: boost-devel
@ -72,6 +75,7 @@ or automated prover). Provides a static library.
%prep
%setup -q
%patch0
%patch1
# Make sure nothing uses the shipped boost sources
rm -fr src/boost