* cp-tree.h (enum cp_tree_index): Add CPTI_PFN_VFLAG_IDENTIFIER.
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 4 May 2001 06:28:54 +0000 (06:28 +0000)
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 4 May 2001 06:28:54 +0000 (06:28 +0000)
commit0d1edf04e982ae14b042e5079feda4ffd334b527
treed868f5fe0152e84a5178c7af2fe9301e56e71e30
parentce489707465ef703b6123649d5b11ab65e06bc95
* 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
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/expr.c
gcc/cp/typeck.c