]> granicus.if.org Git - clang/commit
Mark TypeDecls used in member initializers as referenced.
authorNico Weber <nicolasweber@gmx.de>
Wed, 12 Nov 2014 03:52:25 +0000 (03:52 +0000)
committerNico Weber <nicolasweber@gmx.de>
Wed, 12 Nov 2014 03:52:25 +0000 (03:52 +0000)
commit09a479e2eb4e2ee5ef9fcc206ad072dbea2aeab7
treee65d3af232a5ea511dbd5230376b576dab7ee54e
parent4e7c8db83d7c2b1ffdccd1b2554157f1c430a6fd
Mark TypeDecls used in member initializers as referenced.

Without this, -Wunused-local-typedef would incorrectly warn on the two typedefs
in this program:

void foo() {
  struct A {};
  struct B : public A {
    typedef A INHERITED;
    B() : INHERITED() {}

    typedef B SELF;
    B(int) : SELF() {}
  };
}

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@221765 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaDeclCXX.cpp
test/SemaCXX/warn-unused-local-typedef.cpp