diff options
Diffstat (limited to 'app-text/sword/files/sword-1.6.2-gcc47.patch')
-rw-r--r-- | app-text/sword/files/sword-1.6.2-gcc47.patch | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/app-text/sword/files/sword-1.6.2-gcc47.patch b/app-text/sword/files/sword-1.6.2-gcc47.patch new file mode 100644 index 000000000000..7b55de75b646 --- /dev/null +++ b/app-text/sword/files/sword-1.6.2-gcc47.patch @@ -0,0 +1,35 @@ +https://bugs.gentoo.org/419505 + + +--- a/include/multimapwdef.h ++++ b/include/multimapwdef.h +@@ -12,21 +12,21 @@ class multimapwithdefault : public std::multimap<Key, T, Compare> { + public: + typedef std::pair<const Key, T> value_type; + T& getWithDefault(const Key& k, const T& defaultValue) { +- if (find(k) == this->end()) { +- insert(value_type(k, defaultValue)); ++ if (this->find(k) == this->end()) { ++ this->insert(value_type(k, defaultValue)); + } +- return (*(find(k))).second; ++ return (*(this->find(k))).second; + } + + T& operator[](const Key& k) { +- if (find(k) == this->end()) { +- insert(value_type(k, T())); ++ if (this->find(k) == this->end()) { ++ this->insert(value_type(k, T())); + } +- return (*(find(k))).second; ++ return (*(this->find(k))).second; + } + bool has(const Key& k, const T &val) const { +- typename std::multimap<Key, T, Compare>::const_iterator start = lower_bound(k); +- typename std::multimap<Key, T, Compare>::const_iterator end = upper_bound(k); ++ typename std::multimap<Key, T, Compare>::const_iterator start = this->lower_bound(k); ++ typename std::multimap<Key, T, Compare>::const_iterator end = this->upper_bound(k); + for (; start!=end; start++) { + if (start->second == val) + return true; |