Option to support target-specific DUChain
Open, WishlistPublic

Description

In much the same way that you can switch between "Current Launch Configurations", it would be nice to be able to switch between different build targets that may define macros differently or pass different compilation flags which could affect things like header highlighting and define-use information. In actuality, this information can be specific to simultaneously the exact C file and build target from which a header is included. Actually, Visual Studios seems to handle this by considering highlighting and define-use information according to the context of the most recent C file which directly or indirectly includes the header you are currently looking at. This of course can still be ambiguous given a source file that is used in multiple compilation targets. Users would ideally be able to configure/enable/disable this behaviour.

My suspicion is that this would be a substantial undertaking considering that all the contexts in which DUChain is used, having no notion of there possibly being multiple DUChain's to worry about. In many contexts, it would be likely the case that interactions on DUChain would be translated to those interactions on DUChain mapped over the set of DUChains. In some cases, locking on DUChain would translate into locking on each DUChain in series or locking on only one in total or locking on all simultaneously. Documents are often referenced by URL and so those URL's may need to be qualified to a certain DUChain. Perhaps there may need to always be a default DUChain in cases where a specific DUChain isn't specified. The point is, there are quite a few "hard thoughts" involved in making this sort of feature work which make it somewhat involved.

mswan created this task.Jul 15 2019, 12:58 PM
mswan triaged this task as Wishlist priority.
mswan updated the task description. (Show Details)Jul 15 2019, 1:07 PM
mswan updated the task description. (Show Details)Jul 15 2019, 1:32 PM
mswan updated the task description. (Show Details)Jul 15 2019, 1:45 PM