eolian-cxx: Fixed double qualifying operator on generated code

Fixed the generation of double qualifying operators on extension
inheritance for classes defined in the global namespace.
This commit is contained in:
Felipe Magno de Almeida 2014-07-16 20:12:58 -03:00
parent e807421f60
commit bb1e5248c4
1 changed files with 5 additions and 3 deletions

View File

@ -43,11 +43,13 @@ operator<<(std::ostream& out, class_extensions const& x)
extensions_container_type::const_iterator last = cls.extensions.end();
for (it = first; it != last; ++it)
{
if (it != first) out << ",";
if (it != first) out << ",\n";
out << tab(2)
<< "efl::eo::detail::extension_inheritance<"
<< *it << ">::type< ::"
<< cls.name_space << "::" << cls.name << ">";
<< *it << ">::template type< ::";
if(!cls.name_space.empty())
out << cls.name_space << "::";
out << cls.name << ">";
}
out << endl;
return out;