diff options
author | Eric Fiselier <eric@efcs.ca> | 2015-08-18 19:39:35 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2015-08-18 19:39:35 +0000 |
commit | 556f9340f75ab0300ec194d27e115be8a91d849e (patch) | |
tree | 8825422962a1ab04ba2f8337361c014f6067d549 /clang/lib/Frontend/CompilerInstance.cpp | |
parent | 519ec4b9be17bcf300ade6abfae237d076ca5809 (diff) | |
download | llvm-556f9340f75ab0300ec194d27e115be8a91d849e.zip llvm-556f9340f75ab0300ec194d27e115be8a91d849e.tar.gz llvm-556f9340f75ab0300ec194d27e115be8a91d849e.tar.bz2 |
[libcxx] Disable -Wnon-virtual-dtor warning in <locale>
Summary:
Normally people won't see warnings in libc++ headers, but if they compile with "-Wsystem-headers -Wnon-virtual-dtor" they will likely see issues in <locale>.
In the libc++ implementation `time_get' has a private base class, `__time_get_c_storage`, with virtual methods but a non-virtual destructor.
`time_get` itself can safely be used as a polymorphic base class because it inherits a virtual destructor from `locale::facet`. To placate the compiler we change `__time_get_c_storage`'s destructor from public to protected, ensuring that it will never be deleted polymorphically.
Reviewers: mclow.lists
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D11670
llvm-svn: 245333
Diffstat (limited to 'clang/lib/Frontend/CompilerInstance.cpp')
0 files changed, 0 insertions, 0 deletions