diff options
author | Marek Polacek <mpolacek@gcc.gnu.org> | 2018-01-02 15:05:09 +0000 |
---|---|---|
committer | Marek Polacek <mpolacek@gcc.gnu.org> | 2018-01-02 15:05:09 +0000 |
commit | 6ff9491ae9a51c6adada2a667a869861edefcb2b (patch) | |
tree | ce88c7a75ea77d9127b1de11861ac84ba50475de /gcc | |
parent | 0e03860116aa0c55edc15fa25fdbf52369654d83 (diff) | |
download | gcc-6ff9491ae9a51c6adada2a667a869861edefcb2b.zip gcc-6ff9491ae9a51c6adada2a667a869861edefcb2b.tar.gz gcc-6ff9491ae9a51c6adada2a667a869861edefcb2b.tar.bz2 |
re PR c++/81860 (Call to undefined inline function involving inheriting constructors)
PR c++/81860
* g++.dg/cpp0x/inh-ctor30.C: New test.
From-SVN: r256076
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/cpp0x/inh-ctor30.C | 27 |
3 files changed, 34 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 522573f..6cc4c4d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2018-01-02 Richard Biener <rguenther@suse.de> + + * ipa-inline.c (big_speedup_p): Fix expression. + 2018-01-02 Jan Hubicka <hubicka@ucw.cz> PR target/81616 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 223877e..9b88e6c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,6 +1,7 @@ -2018-01-02 Richard Biener <rguenther@suse.de> +2018-01-02 Marek Polacek <polacek@redhat.com> - * ipa-inline.c (big_speedup_p): Fix expression. + PR c++/81860 + * g++.dg/cpp0x/inh-ctor30.C: New test. 2018-01-01 Paul Thomas <pault@gcc.gnu.org> diff --git a/gcc/testsuite/g++.dg/cpp0x/inh-ctor30.C b/gcc/testsuite/g++.dg/cpp0x/inh-ctor30.C new file mode 100644 index 0000000..f40b052 --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp0x/inh-ctor30.C @@ -0,0 +1,27 @@ +// PR c++/81860 +// { dg-do compile { target c++11 } } +// { dg-final { scan-assembler "_ZN1AIjEC2Ev" } } + +template <typename T> +struct A +{ + A() {} +}; + +struct B +{ + template <typename D> + B(D, const A<unsigned>& a = A<unsigned>()) : a(a) {} + + A<unsigned> a; +}; + +struct C : B +{ + using B::B; +}; + +int main() +{ + C c(0); +} |