Bug 293875 - Contents of inline namespaces not treated as part of surrounding namespace (C++11)
Summary: Contents of inline namespaces not treated as part of surrounding namespace (C...
Status: RESOLVED FIXED
Alias: None
Product: kdevelop
Classification: Applications
Component: Language Support: CPP (old) (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-02-12 05:28 UTC by John
Modified: 2016-01-24 12:16 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John 2012-02-12 05:28:44 UTC
Version:           unspecified (using KDE 4.8.0) 
OS:                Linux

The contents of inline namespaces should in most respects be treated as though they are members of the enclosing namespace. Currently Kdevelop doesn't seem to do that.

Kdevelop Version: 4.2.81

Reproducible: Always

Steps to Reproduce:
Insert the following code in a C++11 project (| is current cursor position):

namespace foo {
inline namespace bar {
void baz();
class clazz { /* ... */};
}
}

int main(int argc, char ** argv) {
foo::|
}


Actual Results:  
Only bar is listed as a completion.

Expected Results:  
baz and clazz should have been listed as completions in addition to bar.

In addition to the above if clazz is manually completed "foo::clazz a1;" then clazz is not underlined (seems accepted as valid syntax) but no completion for members of a1 are provided.
Comment 1 Milian Wolff 2012-02-12 16:26:31 UTC
confirmed
Comment 2 Andrey Cygankov 2016-01-23 23:26:11 UTC
I tried to reproduce the bug - bar, baz, clazz are displayed.
http://i.imgur.com/pV0JkVc.png
Probably it is necessary to close.
Comment 3 Milian Wolff 2016-01-24 12:16:36 UTC
Hello!

We are working on a new clang-based C/C++ language plugin for KDevelop 5 which
supersedes the old C++ plugin in KDevelop 4. See e.g.:
https://www.kdevelop.org/news/first-beta-release-kdevelop-500-available

Due to a lack of manpower, we cannot fix bugs in the old C++ plugin. We rather
want to supply a good Clang based C++ experience for KDevelop 5 than wasting
our time on the legacy C++ support for KDevelop 4.

With the new clang-based C/C++ language plugin, the bug presented here does not
occur. In my testing. For these reasons, I'll close this bug. Please stay tuned
for KDevelop 5.

If you think this bug is applicable to Clang/KDevelop 5, please reopen the
report and add new information on how to reproduce the bug there.

Sorry for the inconvenience, I hope you understand the reasoning above.

Cheers