I noticed that the semantic analysis sometimes reports "use of deleted function" for functions that are not deleted. Unfortunately, I'm not able to produce a standalone example and only noticed this problem while using LLVM. I'll attach a MWE. Reproducible: Always
Created attachment 82857 [details] MWE The problem is reported on the call to llvm::Module::getContext()
Created attachment 83384 [details] MWE without LLVM When the move assignment ctor of a class is deleted, the semantic analysis wrongly complains about the use of a deleted function when taking a reference to an object of said class. [not always reproducible:] If the '= delete' is changed to '= default' the error remains. KDevelop 4.5.2; KDE 4.11.2
I'm getting the same semantic analysis error. My kdevelop version is 4.6.0. Here's a minimal example to reproduce the issue: class TestClass { public: TestClass() = delete; TestClass(const TestClass& other) = delete; TestClass(int aaa) : aaa_(aaa) {} int aaa_; }; int main(int argc, char **argv) { TestClass test(123); TestClass& ref = test; return 0; } Seems like the semantic analysis module thinks that "TestClass& ref = test;" is invoking a copy constructor, which is not the case.
Any progress on this? This issue still happens in kdevelop 4.7.1
Sorry to say, but so far there has been no progress on our old cpp plugin in that regard. Instead, we concentrate on our replacement cpp plugin based on clang, which won't have this issue (and many others). bye
(In reply to Milian Wolff from comment #5) > Sorry to say, but so far there has been no progress on our old cpp plugin in > that regard. Instead, we concentrate on our replacement cpp plugin based on > clang, which won't have this issue (and many others). > > bye Oh, didn't know that such a refactoring is happening: http://kfunk.org/2014/04/28/gsoc-2014-improving-the-clang-integration-in-kdevelop/ Sounds like much more beneficial than individual bug fixes. Great work! Looking forward to seeing its release.
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.