diff options
author | Jason Merrill <jason@redhat.com> | 2020-01-13 17:38:19 -0500 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2020-01-13 20:30:18 -0500 |
commit | 8ca4435f431f9b8049ebf102b5659f2d3e7be198 (patch) | |
tree | 577caca36cad64bb399b2dd2efec17d348921b36 /gcc/alias.c | |
parent | f1ba88b1b20cb579b3b7ce6ce65470205742be7e (diff) | |
download | gcc-8ca4435f431f9b8049ebf102b5659f2d3e7be198.zip gcc-8ca4435f431f9b8049ebf102b5659f2d3e7be198.tar.gz gcc-8ca4435f431f9b8049ebf102b5659f2d3e7be198.tar.bz2 |
PR c++/92582 - ICE with member template as requirement.
Here, we weren't recognizing that the template parameter of A is used by the
reference to d in the requires-clause of f. Fixed by passing down the
active template parameters in the context of normalization, and adding to
the mapping any such parameters shared by a member template used in the
constraint-expression.
* pt.c (struct find_template_parameter_info): Add ctx_parms.
(any_template_parm_r): Handle TEMPLATE_DECL.
(find_template_parameters): Take parms instead of their depth.
* constraint.cc (build_parameter_mapping): Pass them.
Diffstat (limited to 'gcc/alias.c')
0 files changed, 0 insertions, 0 deletions