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 * 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 * 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