[cfe-commits] r171267 - in /cfe/trunk: lib/Sema/Sema.cpp test/SemaCXX/warn-unused-filescoped.cpp

David Blaikie dblaikie at gmail.com
Sun Dec 30 16:41:30 PST 2012


On Sun, Dec 30, 2012 at 1:42 PM, Rafael Espindola
<rafael.espindola at gmail.com> wrote:
> Author: rafael
> Date: Sun Dec 30 15:42:26 2012
> New Revision: 171267
>
> URL: http://llvm.org/viewvc/llvm-project?rev=171267&view=rev
> Log:
> Don't warn on unused member functions that are extern because of a typedef.
>
> Modified:
>     cfe/trunk/lib/Sema/Sema.cpp
>     cfe/trunk/test/SemaCXX/warn-unused-filescoped.cpp
>
> Modified: cfe/trunk/lib/Sema/Sema.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/Sema.cpp?rev=171267&r1=171266&r2=171267&view=diff
> ==============================================================================
> --- cfe/trunk/lib/Sema/Sema.cpp (original)
> +++ cfe/trunk/lib/Sema/Sema.cpp Sun Dec 30 15:42:26 2012
> @@ -363,6 +363,9 @@
>        return !SemaRef->ShouldWarnIfUnusedFileScopedDecl(DeclToCheck);
>    }
>
> +  if (D->getLinkage() == ExternalLinkage)
> +    return true;
> +

How did these elements even end up in the UnusedFileScopedDecls  ?
shouldn't we just ensure that they're not added there to begin with?

>    return false;
>  }
>
>
> Modified: cfe/trunk/test/SemaCXX/warn-unused-filescoped.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/warn-unused-filescoped.cpp?rev=171267&r1=171266&r2=171267&view=diff
> ==============================================================================
> --- cfe/trunk/test/SemaCXX/warn-unused-filescoped.cpp (original)
> +++ cfe/trunk/test/SemaCXX/warn-unused-filescoped.cpp Sun Dec 30 15:42:26 2012
> @@ -118,3 +118,17 @@
>      }
>    } x; // expected-warning {{unused variable}}
>  }
> +
> +namespace test6 {
> +  typedef struct {
> +    void bar();
> +  } A;
> +
> +  typedef struct {
> +    void bar();  // expected-warning {{unused member function 'bar'}}
> +  } *B;
> +
> +  struct C {
> +    void bar();
> +  };
> +}
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits



More information about the cfe-commits mailing list