OSDN Git Service

Make lambda conversion op and op() non-static.
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 23 Mar 2010 22:29:53 +0000 (22:29 +0000)
committerMasaki Muranaka <monaka@monami-software.com>
Sun, 23 May 2010 05:14:24 +0000 (14:14 +0900)
commitb58323659b7fe5cee660c8fe16a283b9deb78ea2
tree8810c03676fc8f7b1de53b63a4dddb04fc2b2aab
parent9f5f549775467f2c147c41fc531a4a97610bcab2
Make lambda conversion op and op() non-static.
* semantics.c (maybe_add_lambda_conv_op): Make non-static.
Also add the thunk function returned by the conversion op.
Mark the conversion deleted if the op() is variadic.
* decl2.c (mark_used): Give helpful message about deleted conversion.
* parser.c (cp_parser_lambda_declarator_opt): Don't make op() static.
* semantics.c (finish_this_expr): Adjust.
* mangle.c (write_closure_type_name): Adjust.
* decl.c (grok_op_properties): Don't allow it.
* call.c (build_user_type_conversion_1): No static conversion ops.
(build_op_call): Or op().

* decl2.c (change_return_type): Fix 'this' quals.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157681 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/semantics.c
gcc/testsuite/ChangeLog