This is the mail archive of the gdb-patches@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]

[PATCH] Enable invoking overloaded operator() method on class and union values.


Hello,

The attached patch enables invoking overloaded operator() method on
class and union values when evaluating expressions.

[I expected that once this feature is in, invoking c++ lambdas would
also be possible naturally. However, It does not happen and I am
working on that.]

gdb/ChangeLog:

2014-11-20  Siva Chandra Reddy  <sivachandra@google.com>

        * eval.c (evaluate_subexp_standard): Extend handling of
        OP_FUNCALL operation to enable invoking overloaded
        operator() methods.
        * gdbtypes.c (class_or_union_p): New function.
        * gdbtypes.h (class_or_union_p): Declare.

gdb/testsuite/ChangeLog:

2014-11-20  Siva Chandra Reddy  <sivachandra@google.com>

        * gdb.cp/member-ptr.exp: Modify expected pattern of
        "print diamond.*diamond_pfunc_ptr (20)" and
        "print diamond.*left_vpmf ()".
        * gdb.cp/paren-op.cc: New file.
        * gdb.cp/paren-op.exp: New file.

Regression tested on x86_64 GNU/Linux.

Thank you,
Siva Chandra

Attachment: paren_op_v1.txt
Description: Text document


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