diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-04-08 06:08:13 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-04-08 06:08:13 +0000 |
commit | b75fa3a6b883f8aac98675d59cc94729321aaebc (patch) | |
tree | d9df08540a47670491171f7843e50c2e8dc8420f /gcc/cp/name-lookup.c | |
parent | f9c9f8e431cacdd26c670e6fcb86b2b129453c0c (diff) | |
download | ppe42-gcc-b75fa3a6b883f8aac98675d59cc94729321aaebc.tar.gz ppe42-gcc-b75fa3a6b883f8aac98675d59cc94729321aaebc.zip |
PR c++/48481
* cp-tree.h (OVL_ARG_DEPENDENT): New.
* name-lookup.c (add_function): Set it.
* semantics.c (finish_call_expr): Free OVERLOADs if it's set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172163 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/name-lookup.c')
-rw-r--r-- | gcc/cp/name-lookup.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c index 18e34417b26..696a8f5fdcb 100644 --- a/gcc/cp/name-lookup.c +++ b/gcc/cp/name-lookup.c @@ -4725,7 +4725,11 @@ add_function (struct arg_lookup *k, tree fn) else if (fn == k->functions) ; else - k->functions = build_overload (fn, k->functions); + { + k->functions = build_overload (fn, k->functions); + if (TREE_CODE (k->functions) == OVERLOAD) + OVL_ARG_DEPENDENT (k->functions) = true; + } return false; } |