Issues with KDevelop3 C++ support
David Nolden
zwabel at googlemail.com
Fri Jan 11 09:40:02 UTC 2008
On Thursday 10 January 2008 22:13:25 Andreas Pakulat wrote:
> Hi,
>
> as I'm using KDevelop3 now at work to work on Squish I've found that it
> has quite a lot of issues with the code. Well not "many" but in many
> places. In particular:
>
> - I can't navigate to methods inside ifdefs (I suspect thats not
> fixable, but really annoying) using the toolbar navigator widget
> - I get code-completion only on very few items and the classes are not
> inside any ifdefs or some such.
> - Jump to Def/Decl often doesn't work at all, no matter wether ifdefs
> are involved or not.
>
> In general there's a lot of not resolvable symbols. As I know there's
> only little chance anybody else goes about to fix that: Any hints
> how/where to start finding hints why the types of these variables are
> not found?
>
> Andreas
Are EXPORT macros in class definitions involved? In my experience, there's
often this problem:
"class SOME_EXPORT MyClass {};", where SOME_EXPORT is not known to the
preprocessor. This means that the whole declaration becomes a parsing error,
so the class won't be accessible through quick-jump-to-class, and
jump-to-definition / jump-to-declaration won't work either on member
functions.
It may also be other unresolved macros that make a class-declaration not work,
like:
"DECLARE_METATYPE_MACRO(SomeThing)
class MyClass {};" Will create the same problem if DECLARE_METATYPE_MACRO is
unresolved.
Are all the unresolved symbols within your project, or out of your project?
Here's a thing that might help with missing macros like SOME_EXPORT:
- Either turn on include-path resolver, or if that doesn't work, set a sane
include-path by hand.
- Enable "preprocess included headers" in the C++ options. This will get those
macros, as long as the files that contain them can be found in the include
path. However this will make parsing slower and consume more memory.
- Delete pcs so everything is reparsed.
greetings, David
More information about the KDevelop-devel
mailing list