c-common.c (pointer_int_sum): Do not complain about using pointers to pointers-to-members.
* c-common.c (pointer_int_sum): Do not complain about using
pointers to pointers-to-members.
* call.c (build_conditional_expr): Do not call force_rvalue for
operands of void_type when the conditional expression itself has
void type.
* name-lookup.c (pushdecl): Don't consider a declaration of a
function named "main" to be an overload of a type named "main".
* parser.c (cp_parser_template_name): Perform name lookup when the
template name is proceeded by "template" if the qualifying scope
is non-dependent.
* typeck.c (composite_pointer_type_r): Correctly handle
pointer-to-member types.
(build_const_cast): Likewise.
* g++.dg/expr/cond5.C: New test.
* g++.dg/expr/constcast1.C: Likewise.
* g++.dg/expr/ptrmem2.C: Likewise.
* g++.dg/expr/ptrmem3.C: Likewise.
* g++.dg/lookup/main1.C: Likewise.
* g++.dg/template/lookup6.C: Likewise.
From-SVN: r79663