Misinterpretation of Function Implementation

From FetchWiki

Jump to: navigation, search

Contents

[edit] Status

  • Problem described

[edit] Problem description

SourceNavigator misinterprets a function implementation for a method implementation in case the function is declared in a namespace, and the function name is qualified with the namespace name.

Example:

// In file Foo.h:

namespace Foo
{
...
Bar baz(Quuz quuz);
...
}
// In file Foo.cpp:
#include "Foo.h"

using namespace Foo;

Bar baz(Quuz quuz) {
...
}

In this case, the functions database does not mention the function baz. (The function definitions database does contain an entry, but we currently don't use this database.) The method definition database evidently doesn't mention "baz" either, but the method implementation database, however, does. The corresponding line in the method implementation database refers to the namespace Foo as the name of the class declaring the method. This is evidently incorrect.

[edit] Relevance

The function implementation will not be added to the dictionary. The impact of this consequence is unclear.

[edit] Suggested Solutions

None so far.

Personal tools