------- Additional Comments From tromey at gcc dot gnu dot org  2004-12-03 
23:25 -------
I've looked into this a little.

Apparently we are getting to this line in
resolve_inner_class:

        local_super = do_resolve_class (NULL, local_super, NULL, NULL);

with local_super:

(gdb) pt local_super
 <pointer_type 0xf6d2315c Dialog unsigned SI
    size <integer_cst 0xf6ce9330 type <integer_type 0xf6cf01d0 bit_size_type>
constant invariant 32>
    unit size <integer_cst 0xf6ce9150 type <integer_type 0xf6cf015c> constant
invariant 4>
    align 32 symtab 0 alias set -1>

... but with the wrong `ctxp':

(gdb) p ctxp.filename
$91 = 0x8e3ab1a "./sancho/view/transfer/ClientDetailDialog.java"

Then we proceed to find "Dialog" using ClientDetailDialog's imports,
resulting in the incorrect org.eclipse.swt.widgets.Dialog

You might think we could call do_resolve_class here with "local_enclosing"
as an argument, but unfortunately it does not yet seem to have its
TYPE_IMPORT_DEMAND_LIST set yet.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.0.0                       |---


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18796

Reply via email to