|
Boost : |
Subject: [boost] Friend class with namespace gives compiler error for C6000 TI
From: Alin Popa (alin.popa_at_[hidden])
Date: 2015-02-25 06:15:30
Hi,
I compile my project with boost header only files, the compiler is C6000
Texas Instruments.
The compile errors occurs for example in
"boost/algorithm/string/find_iterator.hpp"
I have extracted the cause of the problem in the next example code:
namespace boost {
namespace iterators {
class iterator_core_access {
public:
iterator_core_access(){}
~iterator_core_access(){}
};
}
using iterators::iterator_core_access;
}
class testFriend {
private:
// don't work, compiler error: error: namespace "boost" has no actual
member "iterator_core_access"
friend class ::boost::iterator_core_access; // here is the problem
// it works, compiles ok, this was my cure
//friend class ::boost::iterators::iterator_core_access;
};
int main ()
{
// it works
::boost::iterator_core_access a;
return 0;
}
Do you guys know what is the reason of this ?
With msvc and g++ works fine.
Thanks and best regards,
Alin
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk