Thanks for your replies.
I was looking for a way that the toolchain
could help optimize the indexer time by re-using a pre-parsed index of the “built-ins”.
This could be created once for a particular toolchain configuration and then
shared by different projects. When working with projects that use a large class
library, more time is spent in parsing the infrastructure, than in the user’s
code.
Does the “scanner discovery profile” have some documentation? I don’t
see it in the 3.0.1 MBS Extensibility Doc.
Regards,
-Stan
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Doug Schaefer
Sent: Wednesday, April 05, 2006
7:16 AM
To: CDT General developers list.
Subject: RE: [cdt-dev] Toolchain
Builtins and Indexing
Yes, the indexer
doesn’t really know what’s a built in versus a user include path or
macro. And, yes, the indexer only indexes header files that are not part of the
project when they are included by files in the project. Our “Full”
indexer operates just like a compiler and will parse header files every time
they included by a file that has changed. The new “Fast” indexer
(which is introduced as part of the PDOM feature) will only parse each header
file once.
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Sennikovsky, Mikhail
Sent: Wednesday, April 05, 2006 8:01
AM
To: CDT
General developers list.
Subject: RE: [cdt-dev] Toolchain
Builtins and Indexing
Hi Stan,
From the MBS point of view, the option
“built-ins” information is taken into account only in case the
tool-chain does not have the scanner discovery profile associated with it,
otherwise the scanner discovery profile is used for builtin calculation.
Include paths and defined symbols are presented to the core via the PathEntry
framework, which, AFAIK does not contain any information of whether the given include
path/symbol is built-in or not.
As for indexing, Doug might correct me if
I’m wrong, includes are parsed only as they are referenced in the source
code, and with the new PDOM functionality the index information is stored in
the database and includes that are already parsed and indexed are not reparsed
each time the include is referenced or the source code is modified.
Regards,
Mikhail
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Stan
Mitchell
Sent: Tuesday, April 04, 2006
10:57 PM
To: cdt-dev@xxxxxxxxxxx
Subject: [cdt-dev] Toolchain
Builtins and Indexing
Include paths and defined symbols can be tagged as
“built-ins” for a toolchain, to indicate that these are not changed
by the user.
How does the Indexer treat these include paths and symbols
differently – or does it?
I would expect the indexer to parse and index builtin
includes just once;
only the user portion of a project would be reparsed when
source changes are made.
Is that a fair assumption?
Regards,
Stan Mitchell