This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
questions
- From: "The Deus" <thedeus at milcis dot net>
- To: <gcc at gcc dot gnu dot org>
- Date: Fri, 8 Aug 2003 22:53:40 +0200
- Subject: questions
Hi !
First, I would like to thank you about this great documentation
(http://gcc.gnu.org/onlinedocs/gccint/Trees.html#Trees).
It's helpful !
I need some enlightments about somethings. Sorry for my bad english
speaking...
1) pointers/references
I can't understand how are used the nodes indirectref, nop, convert,
mustnotthow, nonlvalue, addr.
I have done some tests with pointers and references. I can't know when the
node describe the unreference action or address computing action.
indirect seems to be like * C operator and addr seems to be like & C
operator but it's not true.
Could i get an explain ?
2) plus operator
The "plus" node has 2 behaviors.
The first one is the standard +. It describes an expression like a + b. a
and b are 2 integers or any arithmetic types.
The second one is an address computing operator. It describes an expression
like p + i. p is a pointer and i is an index.
struct a {
int x;
int y;
};
if i write the expression "a.y", the internal GCC represention is sometimes
a set of nodes using 'plus' node instead of a single 'ComponentRef' node.
Why ? Some informations seems to be lost. I can't get the name of the field.
In others words, i get "&a+4" instead of "a.y". Can i retrieve this
information ?
Best regards
Richard Buchmann