From 8e9eff6bc04068f44def72f44a5f11027d7eb3dc Mon Sep 17 00:00:00 2001 From: Geoffrey Keating Date: Fri, 4 May 2001 06:28:54 +0000 Subject: cp-tree.h (enum cp_tree_index): Add CPTI_PFN_VFLAG_IDENTIFIER. * cp-tree.h (enum cp_tree_index): Add CPTI_PFN_VFLAG_IDENTIFIER. (pfn_vflag_identifier): Define. Update comment about layout of pointer functions. (build_ptrmemfunc1): Update prototype. (expand_ptrmemfunc_cst): Update prototype. * decl.c (initialize_predefined_identifiers): Initialize pfn_vflag_identifier. (build_ptrmemfunc_type): When FUNCTION_BOUNDARY < 16, add an extra field to the type. * expr.c (cplus_expand_constant): Pass 'flag' between expand_ptrmemfunc_cst and build_ptrmemfunc1. * typeck.c (get_member_function_from_ptrfunc): When FUNCTION_BOUNDARY < 16, look at additional field to determine if a pointer-to-member is a real pointer or a vtable offset. (build_ptrmemfunc1): Add new parameter to contain extra field. (build_ptrmemfunc): Pass the extra field around. (expand_ptrmemfunc_cst): Add new parameter to return extra field. (pfn_from_ptrmemfunc): Ignore the extra field. From-SVN: r41824 --- gcc/cp/expr.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gcc/cp/expr.c') diff --git a/gcc/cp/expr.c b/gcc/cp/expr.c index 6855160..7163a5b 100644 --- a/gcc/cp/expr.c +++ b/gcc/cp/expr.c @@ -62,9 +62,10 @@ cplus_expand_constant (cst) { tree delta; tree pfn; + tree flag; - expand_ptrmemfunc_cst (cst, &delta, &pfn); - cst = build_ptrmemfunc1 (type, delta, pfn); + expand_ptrmemfunc_cst (cst, &delta, &pfn, &flag); + cst = build_ptrmemfunc1 (type, delta, pfn, flag); } } break; -- cgit v1.1