This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/13225] GDB fails to find non-overloaded C++ function


http://sourceware.org/bugzilla/show_bug.cgi?id=13225

--- Comment #4 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> 2011-10-14 20:22:26 UTC ---
CVSROOT:    /cvs/src
Module name:    src
Changes by:    kseitz@sourceware.org    2011-10-14 20:22:17

Modified files:
    gdb            : ChangeLog eval.c gdbtypes.h gdbtypes.c 
                     valarith.c valops.c value.h 

Log message:
    PR c++/13225
    * eval.c (evaluate_subexp_standard): Do not construct
    an array of types; pass the value array directly to
    find_overload_match.
    * gdbtypes.h (NULL_POINTER_CONVERSION_BADNESS): Declare.
    (rank_function): Take an array of values instead of types.
    (rank_one_type): Add struct value * parameter.
    * gdbtypes.c (NULL_POINTER_CONVERSION_BADNESS): Define.
    (rank_function): For each argument, pass the argument's
    value to rank_one_type.
    (rank_one_type): Add VALUE parameter.
    If the parameter type is a pointer and the argument type
    is an integer, return NULL_POINTER_CONVERSION_BADNESS if
    VALUE is zero.
    Update all calls to rank_one_type, passing NULL for new
    VALUE parameter.
    * valarith.c (value_user_defined_cpp_op): Do not construct
    an array of types; pass the value array directly to
    find_overload_match.
    * valops.c (find_overload_method_list): Take an array of
    values instead of types.
    Save the type of OBJP for later use.
    Update calls to find_oload_champ, and find_oload_champ_namespace.
    (find_oload_champ_namespace): Take an array of values instead
    of types.
    (find_oload_champ_namespace_loop): Likewise.
    (find_oload_champ): Likewise.
    (classify_oload_match): Inspect all arguments
    until INCOMPATIBLE is found. Return the worst badness found
    otherwise.
    (compare_parameters): Update call to rank_one_type.
    * value.h (find_overload_match): Take an array of values instead
    of types.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/ChangeLog.diff?cvsroot=src&r1=1.13437&r2=1.13438
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/eval.c.diff?cvsroot=src&r1=1.154&r2=1.155
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/gdbtypes.h.diff?cvsroot=src&r1=1.156&r2=1.157
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/gdbtypes.c.diff?cvsroot=src&r1=1.219&r2=1.220
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/valarith.c.diff?cvsroot=src&r1=1.99&r2=1.100
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/valops.c.diff?cvsroot=src&r1=1.287&r2=1.288
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/value.h.diff?cvsroot=src&r1=1.187&r2=1.188

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]