Fix open solaris build issue with concept checking that breaks std vector for a class of itself. Bug #9523.

This commit is contained in:
Bill Hoffman
2009-09-14 10:31:38 -04:00
parent da29eb892b
commit 6a9a958591
2 changed files with 32 additions and 9 deletions
+27 -4
View File
@@ -70,14 +70,37 @@ public:
private:
class CurrentClass
{
{
public:
cmStdString Name;
std::vector<CurrentClass> NestedClasses;
CurrentClass() {}
std::vector<CurrentClass>* NestedClasses;
CurrentClass()
{
this->NestedClasses = new std::vector<CurrentClass>;
}
~CurrentClass()
{
delete this->NestedClasses;
}
CurrentClass& operator=(CurrentClass const& c)
{
this->NestedClasses->clear();
this->Name = c.Name;
std::copy(
c.NestedClasses->begin(),
c.NestedClasses->end(),
std::back_inserter(
*this->NestedClasses)
);
return *this;
}
CurrentClass(CurrentClass const& c)
{
(*this) = c;
}
void AddFileNamesForPrinting(std::vector<cmStdString> *files,
const char* prefix, const char* sep);
};
};
cmStdString CurrentPackage;
cmStdString::size_type InputBufferPos;
cmStdString InputBuffer;