Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tcf-dev] How to distinguish between two symbols with the same name

Hi Eugene,

Good to know this should also work on TCF. Unfortunately, I tried it using a Linux C program but it didn't work on TCF Agent 1.2 ( I get 'Exception: At col 23: Undefined identifier 'myfunc'. Invalid expression")

I opened bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=444058

- Christophe


On 09/12/2014 06:25 PM, Eugene Tarassov wrote:
Right, I forgot you can use ::. "file.c"::x (and function::x) should work in TCF already, because "file.c" resolves to DWARF compilation unit and the rest is regular C++ syntax for qualified name.

Eugene

-----Original Message-----
From: tcf-dev-bounces@xxxxxxxxxxx [mailto:tcf-dev-bounces@xxxxxxxxxxx] On Behalf Of Christophe Augier
Sent: Friday, September 12, 2014 3:01 AM
To: tcf-dev@xxxxxxxxxxx
Subject: Re: [tcf-dev] How to distinguish between two symbols with the same name

Ok. I see that gdb proposes to solve that by prefixing the symbol with
"file.c::" or "function::".

Is this something that would make sense to add in the TCF expression
evaluator?

- Christophe


On 09/11/2014 07:57 PM, Eugene Tarassov wrote:
Hi Christophe,

Expression are evaluated in the context of current selection in the Debug view.
If the selection has a PC, the debugger uses visibility rules of C/C++ to resolve the ambiguity.
This kind of automatic disambiguation covers most of use cases.

However, if user want to see symbol that is not related to current PC, the only way today is the ${symbol_ID} syntax.

Regards,
Eugene


-----Original Message-----
From: tcf-dev-bounces@xxxxxxxxxxx [mailto:tcf-dev-bounces@xxxxxxxxxxx] On Behalf Of Christophe Augier
Sent: Thursday, September 11, 2014 2:36 AM
To: tcf-dev@xxxxxxxxxxx
Subject: [tcf-dev] How to distinguish between two symbols with the same name

Hi,

In some cases the symbol files used to debug a program includes multiple
symbols with the same name. When debugging using Eclipse, is there a way
to discriminate which symbol we want to resolve (in the Expressions view
for instance)?

I could not find any documentation mentioning that use case. The only
piece that could be useful (but is completely cryptic from the user
point of view) is the ${symbol_ID} syntax for expressions.

Is this missing in the expressions parser?

- Christophe
_______________________________________________
tcf-dev mailing list
tcf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tcf-dev


This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.

_______________________________________________
tcf-dev mailing list
tcf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tcf-dev
_______________________________________________
tcf-dev mailing list
tcf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tcf-dev


This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.

_______________________________________________
tcf-dev mailing list
tcf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tcf-dev



Back to the top