12.07.2011, 14:01, [email protected]:
> On Jul 7, 2011, at 19:59, ext Konstantin Tokarev wrote:
>
>>  07.07.2011, 19:20, [email protected]:
>>>  On Jul 7, 2011, at 16:08, ext Konstantin Tokarev wrote:
>>>
>>>  But for code completion, you only need the engine that does the actual 
>>> code completion to handle it, and only that single engine gets those 
>>> defines. That engine just happens to be the one in libclang.so (which does 
>>> not even contain a code generator).
>>>>   2. Clang assumes that anything in AST has its representation in source 
>>>> code. You are creating "phantom" attributes which don't exist in actual 
>>>> code.
>>>  They are just as real as __attribute__((__deprecated__)) when used through 
>>> Q_DECL_DEPRECATED, so nothing phantom.
>>>>   BTW, haven't you considered creation of custom AST nodes (i.e., subclass 
>>>> CXXRecordDecl) with additional fields?
>>>  Yes, but this would be quite a big change (the current patch file is 233 
>>> lines).
>>  But it could be implemented without patching of Clang.
>
> AFAIK, you cannot introduce another AST node without patching clang, nor 
> change the parser (which should create that node) without changing clang.

AFAIU, this is not parser but Sema.

> Then again, if I'm wrong, show me the code to do it right. I will happily use 
> it! :-)

Unfortunately I don't have anything working yet. But if I succeed I'll let you 
know ;)

BTW, is it possible to get somewhere your Clang patch?

-- 
Regards,
Konstantin
_______________________________________________
Qt-creator mailing list
[email protected]
http://lists.qt.nokia.com/mailman/listinfo/qt-creator

Reply via email to