In cases where the function argument was an EvalMemberAccess with an
ownerEval storing the evaluation for the implicit 'this', the field
EvalFunctionCall.fImplicitThis was duplicating this storage, leading
to exponential space usage in chained method calls.
Change-Id: I56e775143b47a3a7f986c2d86312f122c2d4bcff
Some of the PDOMNode initData() methods clobbered each other
by overriding each other. Fixed by renaming relevant ones
to initConstructorData().
Change-Id: Ib290dcd861d6aff5466520886bc3c5433b4a269b
In an SWT label, '&' characters are treated as mnemonics.
Some labels can contain this character as their content
(e.g. if they represent the signature of a function with
arguments of C++ reference type), so they need to be
escaped.
Change-Id: I8ca57308f5dc3fa06648ce7f76df003e76fac3b6
Compute and store in the index an enclosing definition for
macro reference names. This allows showing the enclosing
definition when such a name appears in a search result.
Change-Id: I91eee4ad80c86d7ef90c69c1436387393fca2a19
We previously guarded against recursion in this case, but the
result was an invalid composite value that could cause problems
down the line.
This patch avoids getting into the recursion to begin with by
skipping the processing of static fields in a case where it's
not necessary to begin with.
Change-Id: Ic3a346092bb7ad5c94cd15871110dd17ecd64886
Since we don't have a semantic model of assembly code, just look
for a CElement with a name matching the selected identifier in the
assembly file, and search for the selected identifier in the index.
Change-Id: Ifae8e7f608ca27b06fdb4d1d9d1797c88469a6c5
Currently, it only does something useful for include statements.
It uses the C model to resolve the include, much like clicking
on the include in the Outline view.
Change-Id: I4c50ff4b477721795d58f44acc5c0389c05d4768
The help feature in Oxygen has different dependencies so the plug-ins
included in the product have to change.
Change-Id: I2fbcccad82460a60eb571c0ec2faab277487ab80
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
- Avoid a ClassCastException in CPPConstructor.getMemberEvaluation()
- Fix an unsafe method call in EvalCompositeAccess.getType()
- Emit a log message in an error case in ASTInternal.getDefinitionOfBinding()
- Emit a log message in an error case in CompositeValue.setSubValue()
Change-Id: I5932c8b661e31eff32c2bb138efdb3029894d0ab
This catches recursion along paths in EvalUtil.getVariableValue() that don't
go through CPPVariabble.getInitialValue().
The patch also improves caching in EvalInitList.
Change-Id: I343bbf1bb7493b2c83771de3659209e5d512fd80
The CDT does not need to depend on itself.
I believe this dependency was added while troubleshooting another
problem.
Change-Id: Ic79cc8c00c67f323198bb49d1596e4d254bbd924