summaryrefslogtreecommitdiff
path: root/gcc/cp/expr.c
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2001-05-04 06:28:54 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2001-05-04 06:28:54 +0000
commit0d1edf04e982ae14b042e5079feda4ffd334b527 (patch)
treed868f5fe0152e84a5178c7af2fe9301e56e71e30 /gcc/cp/expr.c
parentce489707465ef703b6123649d5b11ab65e06bc95 (diff)
downloadgcc-0d1edf04e982ae14b042e5079feda4ffd334b527.tar.gz
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41824 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/expr.c')
-rw-r--r--gcc/cp/expr.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/cp/expr.c b/gcc/cp/expr.c
index 6855160fc19..7163a5b6669 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;