Index: textproc/aspell/files/patch-common_hash.hpp =================================================================== RCS file: textproc/aspell/files/patch-common_hash.hpp diff -N textproc/aspell/files/patch-common_hash.hpp --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ textproc/aspell/files/patch-common_hash.hpp 8 May 2011 21:07:32 -0000 @@ -0,0 +1,11 @@ +--- common/hash.hpp.orig 2007-10-09 08:24:55.000000000 +0200 ++++ common/hash.hpp 2011-05-02 18:24:03.000000000 +0200 +@@ -318,7 +318,7 @@ namespace acommon { + : Base(s, Parms(h,e)) {} + data_type & operator[](const key_type & k) + { +- return (*((insert(value_type(k, data_type()))).first)).second; ++ return (*((Base::insert(value_type(k, data_type()))).first)).second; + } + }; + Index: textproc/aspell/files/patch-common_objstack.cpp =================================================================== RCS file: textproc/aspell/files/patch-common_objstack.cpp diff -N textproc/aspell/files/patch-common_objstack.cpp --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ textproc/aspell/files/patch-common_objstack.cpp 8 May 2011 21:07:32 -0000 @@ -0,0 +1,11 @@ +--- common/objstack.cpp.orig 2006-11-24 04:46:09.000000000 +0100 ++++ common/objstack.cpp 2011-05-02 18:24:03.000000000 +0200 +@@ -3,8 +3,6 @@ + + namespace acommon { + +-using namespace std; +- + void ObjStack::setup_chunk() + { + bottom = first_free->data; Index: textproc/aspell/files/patch-common_posib-err.hpp =================================================================== RCS file: textproc/aspell/files/patch-common_posib-err.hpp diff -N textproc/aspell/files/patch-common_posib-err.hpp --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ textproc/aspell/files/patch-common_posib-err.hpp 8 May 2011 21:07:32 -0000 @@ -0,0 +1,36 @@ +--- common/posib_err.hpp.orig 2004-12-17 09:23:33.000000000 +0100 ++++ common/posib_err.hpp 2011-05-02 18:24:03.000000000 +0200 +@@ -158,6 +158,16 @@ namespace acommon { + void del(); + }; + ++ template <> ++ class PosibErr : public PosibErrBase ++ { ++ public: ++ PosibErr(const PosibErrBase & other) ++ : PosibErrBase(other) {} ++ ++ PosibErr() {} ++ }; ++ + template + class PosibErr : public PosibErrBase + { +@@ -186,16 +196,6 @@ namespace acommon { + Ret data; + }; + +- template <> +- class PosibErr : public PosibErrBase +- { +- public: +- PosibErr(const PosibErrBase & other) +- : PosibErrBase(other) {} +- +- PosibErr() {} +- }; +- + // + // + // Index: textproc/aspell/files/patch-common_vararray.hpp =================================================================== RCS file: textproc/aspell/files/patch-common_vararray.hpp diff -N textproc/aspell/files/patch-common_vararray.hpp --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ textproc/aspell/files/patch-common_vararray.hpp 8 May 2011 21:07:32 -0000 @@ -0,0 +1,20 @@ +--- common/vararray.hpp.orig 2004-07-24 14:03:58.000000000 +0200 ++++ common/vararray.hpp 2011-05-02 18:24:03.000000000 +0200 +@@ -8,7 +8,7 @@ + #ifndef ASPELL_VARARRAY__HPP + #define ASPELL_VARARRAY__HPP + +-#ifndef __GNUC__ ++#if !defined __GNUC__ || defined __clang__ + # include + #endif + +@@ -16,7 +16,7 @@ namespace acommon { + + // only use this on types with a trivial constructors destructor + +-#ifdef __GNUC__ // use variable arrays ++#if defined __GNUC__ && !defined __clang__ // use variable arrays + + #define VARARRAY(type, name, num) type name[num] + #define VARARRAYM(type, name, num, max) type name[num] Index: textproc/aspell/files/patch-common_vector.hpp =================================================================== RCS file: textproc/aspell/files/patch-common_vector.hpp diff -N textproc/aspell/files/patch-common_vector.hpp --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ textproc/aspell/files/patch-common_vector.hpp 8 May 2011 21:07:32 -0000 @@ -0,0 +1,15 @@ +--- common/vector.hpp.orig 2007-12-03 09:32:55.000000000 +0100 ++++ common/vector.hpp 2011-05-02 18:24:03.000000000 +0200 +@@ -24,10 +24,10 @@ namespace acommon + this->push_back(t); + } + void append(const T * begin, unsigned int size) { +- insert(this->end(), begin, begin+size); ++ std::vector::insert(this->end(), begin, begin+size); + } + void append(const T * begin, const T * end) { +- insert(this->end(), begin, end); ++ std::vector::insert(this->end(), begin, end); + } + int alloc(int s) { + int pos = this->size();