D15530: kdev-clang : somewhat more complete ObjC(++) support

René J.V. Bertin noreply at phabricator.kde.org
Fri Jan 25 12:41:40 GMT 2019


rjvbb marked 2 inline comments as done.
rjvbb added inline comments.

INLINE COMMENTS

> mwolff wrote in cursorkindtraits.h:62
> so can this be removed? if not, what compile errors do you get?

Sadly, no, it can't go and I still don't understand a thing of the why and how. 35y of programming tell me I should be able to remove the || CK==CXCursor_ObjC* lines from the function above the commentb but when I do event that I get this:

F6567545: wth-clang?.png <https://phabricator.kde.org/F6567545>

I get the same errors if instead I call isClassNoObjc() instead of isClass() in isKDevForwardDeclaration(), also when actually building the files.

This goes way beyond my template-fu, hence the comment.

> mwolff wrote in parsesession.cpp:113
> by moving down the check you break this path, but apparently that will only show up in unit tests

Sorry, comments and code seem to have gone out of sync so this is a bit cryptic. What path do I break? I can see how unittests that didn't set parserOptions will not get relevant options for ObjC so I've tried to address that.
(The out-commented lines are just there to make it easier to revert this change if needed, they'll go otherwise).

> mwolff wrote in parsesession.cpp:132
> ... but do we really want to move these checks down here? is it OK to pass the -nostdinc command e.g. for objc?

It is; ObjC is a superset of C and ObjC++ is a superset of C++ so to the best of my knownledge compiler options for the parent language are OK.

I suppose the alternative is to move the checks upwards so that the options are prepended to the session arguments list, which will be a bit easier with the newly reorganised code. I have slight preference for appending because that ensures the parser is always switched to ObjC mode when the mimetype says it should.

> mwolff wrote in kdevclang.xml:67
> remove all the translations, the KDE translation team will handle this

I presume you mean "all translations you added"? :)

REPOSITORY
  R32 KDevelop

REVISION DETAIL
  https://phabricator.kde.org/D15530

To: rjvbb, #kdevelop, mwolff
Cc: mwolff, aaronpuchert, kossebau, kdevelop-devel, glebaccon, hase, antismap, iodelay, geetamc, Pilzschaf, akshaydeo, surgenight, arrowd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20190125/7ccc7710/attachment.html>


More information about the KDevelop-devel mailing list