This is the mail archive of the
archer@sourceware.org
mailing list for the Archer project.
Re: Expressions Status and Oustanding Tasks
- From: Sami Wagiaalla <swagiaal at redhat dot com>
- To: Tom Tromey <tromey at redhat dot com>
- Cc: Keith Seitz <keiths at redhat dot com>, Phil Muldoon <pmuldoon at redhat dot com>, archer at sourceware dot org
- Date: Wed, 17 Jun 2009 11:23:30 -0400
- Subject: Re: Expressions Status and Oustanding Tasks
- References: <49CA7CF3.5020500@redhat.com> <4A376658.1080109@redhat.com> <4A37DD1A.4050905@redhat.com> <m363ev29oy.fsf@fleche.redhat.com>
Tom Tromey wrote:
Keith> "2) Inferior function calls."
This included operator overloading -- I believe Sami is looking into
some of that right now. He mentioned the "cout << foo" case;
Yes I am.
I wasn't sure if he was going to work on explicit use of the operator keyword
as well.
As in directly calling operator<< ?
Yes, operator function calls and inferior function calls take separate
code paths. I was going to look into unifying those after I got cout to
work.
Some other stuff I know or suspect is missing:
* 'new' and 'delete' aren't implemented at all
* I suspect implicit conversions (via constructors) don't work
* C++ cast operators (like reinterpret_cast) are not implemented
* I suspect that default arguments to functions don't work
There's probably more that we haven't stumbled across yet.
In the case of cout << 1 I would add:
* debug info is not loaded without
set debug-file-directory /usr/lib/debug
* operators which are members of the namespace
not the class are not found.
* the namespace of arguments (like cout) are not easy to figure out
during lookup.
Sami