From: Kriang Lerdsuwanakij Date: Sun, 23 Feb 2003 14:10:50 +0000 (+0000) Subject: re PR c++/7982 (core dump due to recursive definition (using stl set)) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=53be1a8d37abfbfc82c2b9508053d1d00b85ddf8;p=gcc.git re PR c++/7982 (core dump due to recursive definition (using stl set)) PR c++/7982 * g++.dg/warn/implicit-typename1.C: New test. From-SVN: r63318 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 7997b3a2cb1..73d1f2d23c3 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2003-02-23 Kriang Lerdsuwanakij + + PR c++/7982 + * g++.dg/warn/implicit-typename1.C: New test. + 2003-02-22 Kelley Cook * g++.old-deja/g++.other/store-expr1.C: Replace "mcpu" diff --git a/gcc/testsuite/g++.dg/warn/implicit-typename1.C b/gcc/testsuite/g++.dg/warn/implicit-typename1.C new file mode 100644 index 00000000000..ab5587ef72e --- /dev/null +++ b/gcc/testsuite/g++.dg/warn/implicit-typename1.C @@ -0,0 +1,17 @@ +// The -pedantic option must be omitted to trigger the crash. +// { dg-do compile } +// { dg-options "" } + +// PR c++/7982: Crash warning about implicit typename. +// The base class refers to another typename, while the +// name lookup finds a template. + +template struct X {}; + +template struct C { + typedef typename T::X X; +}; + +template struct A : public C { + typedef X X; // { dg-warning "lookup|dependent base|typename" } +};