Commit ff52061e authored by Dale Marchand's avatar Dale Marchand Committed by Erik Verbruggen
Browse files

Fixed compilation error on RHEL 5.10.



Nesting the namespace "Internal" inside of other namespaces and using
sequential "using namespace" directives *or* relying on a "using
namespace" directive to resolve a method name that contained the
"Internal" namespace for resolution resulted in ambiguous resolution
errors when compiling with the RHEL5.10 stock compiler (GCC 4.1.2).  A
sample error is provided below:

Compilation error encountered was:
reference to 'Internal' is ambiguous
/usr/lib/gcc/x86_64-redhat-
candidates are: namespace Internal { }
qt-creator/src/libs/cplusplus/PPToken.h:106: error:
namespace CPlusPlus::Internal { }

Modifying the using namespace directives to reflect the nested nature of
the namespace names resolved the compilation errors.  For example:

using namespace CppEditor;
using namespace Internal;

produced errors.  However,

using namespace CppEditor;
using namespace CppEditor::Internal;

resolved the compilation errors by removing the ambiguity.

Change-Id: I6d5051e20acb2c147bd7ee1c6c6e1e3b2b4ff0f9
Reviewed-by: default avatarErik Verbruggen <erik.verbruggen@digia.com>
parent 6fd6291a
......@@ -32,6 +32,7 @@
#include <cstring>
using namespace CPlusPlus;
using namespace CPlusPlus::Internal;
bool ByteArrayRef::startsWith(const char *s) const
{
......@@ -52,7 +53,7 @@ int ByteArrayRef::count(char ch) const
return num;
}
void Internal::PPToken::squeezeSource()
void PPToken::squeezeSource()
{
if (hasSource()) {
m_src = m_src.mid(offset, f.length);
......
......@@ -42,7 +42,7 @@
#include <QQueue>
using namespace CppEditor;
using namespace Internal;
using namespace CppEditor::Internal;
using namespace CPlusPlus;
namespace {
......
......@@ -50,7 +50,7 @@
#include <QVBoxLayout>
using namespace CppEditor;
using namespace Internal;
using namespace CppEditor::Internal;
using namespace Utils;
namespace CppEditor {
......
......@@ -42,7 +42,7 @@
#include <QCoreApplication>
using namespace CppEditor;
using namespace Internal;
using namespace CppEditor::Internal;
CppSnippetProvider::CppSnippetProvider() :
TextEditor::ISnippetProvider()
......
......@@ -44,7 +44,7 @@
#include <QLabel>
using namespace CppEditor;
using namespace Internal;
using namespace CppEditor::Internal;
using namespace Utils;
namespace {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment