cp: PR c++/2645, DR 295 * cp-tree.h (tsubst_flags_t): Add tf_ignore_bad_quals, tf_keep_type_decl. (make_typename_type): Use tsubst_flags_t. * decl.c (make_typename_type): Adjust. Return non-artificial TYPE_DECLs, if required. (grokdeclarator): Simplify CVR qualification handling. Allow bad qualifiers on typedef types. * decl2.c (handle_class_head): Adjust make_typename_type call. * parse.y (nested_name_specifier): Likewise. (typename_sub0): Likewise. (typename_sub1): Likewise. * pt.c (convert_template_argument): Adjust make_typename_type return value. (tsubst): Adjust cp_build_qualified_type_real calls. (check_cv_quals_for_unify): Cope with alowing bad qualifications on template type parms. (instantiate_decl): Recheck substitutions to give warnings on bad qualifications. * tree.c (cp_build_qualified_type_real): Use tf_allow_bad_quals. testsuite: * g++.dg/template/qualttp19.C: New test. * g++.dg/template/qualttp20.C: New test. * g++.old-deja/g++.jason/report.C: Adjust expected errors * g++.old-deja/g++.other/qual1.C: Likewise. From-SVN: r49961
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
.cvsignore | Loading commit data... | |
ChangeLog | Loading commit data... | |
ChangeLog.1 | Loading commit data... | |
ChangeLog.2 | Loading commit data... | |
ChangeLog.egcs | Loading commit data... | |
Make-lang.in | Loading commit data... | |
NEWS | Loading commit data... | |
call.c | Loading commit data... | |
cfns.gperf | Loading commit data... | |
cfns.h | Loading commit data... | |
class.c | Loading commit data... | |
config-lang.in | Loading commit data... | |
cp-lang.c | Loading commit data... | |
cp-tree.def | Loading commit data... | |
cp-tree.h | Loading commit data... | |
cvt.c | Loading commit data... | |
decl.c | Loading commit data... | |
decl.h | Loading commit data... | |
decl2.c | Loading commit data... | |
dump.c | Loading commit data... | |
error.c | Loading commit data... | |
except.c | Loading commit data... | |
expr.c | Loading commit data... | |
friend.c | Loading commit data... | |
g++.1 | Loading commit data... | |
g++spec.c | Loading commit data... | |
init.c | Loading commit data... | |
lang-options.h | Loading commit data... | |
lang-specs.h | Loading commit data... | |
lex.c | Loading commit data... | |
lex.h | Loading commit data... | |
mangle.c | Loading commit data... | |
method.c | Loading commit data... | |
mpw-config.in | Loading commit data... | |
mpw-make.sed | Loading commit data... | |
operators.def | Loading commit data... | |
optimize.c | Loading commit data... | |
parse.y | Loading commit data... | |
pt.c | Loading commit data... | |
ptree.c | Loading commit data... | |
repo.c | Loading commit data... | |
rtti.c | Loading commit data... | |
search.c | Loading commit data... | |
semantics.c | Loading commit data... | |
spew.c | Loading commit data... | |
tree.c | Loading commit data... | |
typeck.c | Loading commit data... | |
typeck2.c | Loading commit data... |