[libcxx] r242624 - Fix warnings in test/std/language.support
Eric Fiselier
eric at efcs.ca
Sat Jul 18 14:17:16 PDT 2015
Author: ericwf
Date: Sat Jul 18 16:17:16 2015
New Revision: 242624
URL: http://llvm.org/viewvc/llvm-project?rev=242624&view=rev
Log:
Fix warnings in test/std/language.support
Modified:
libcxx/trunk/test/libcxx/compiler.py
libcxx/trunk/test/libcxx/test/config.py
libcxx/trunk/test/std/language.support/support.dynamic/alloc.errors/new.handler/new_handler.pass.cpp
libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array.pass.cpp
libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.pass.cpp
libcxx/trunk/test/std/language.support/support.exception/exception.terminate/terminate.handler/terminate_handler.pass.cpp
libcxx/trunk/test/std/language.support/support.runtime/csignal.pass.cpp
libcxx/trunk/test/std/language.support/support.runtime/cstdarg.pass.cpp
libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp
libcxx/trunk/test/std/language.support/support.runtime/ctime.pass.cpp
Modified: libcxx/trunk/test/libcxx/compiler.py
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/libcxx/compiler.py?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/libcxx/compiler.py (original)
+++ libcxx/trunk/test/libcxx/compiler.py Sat Jul 18 16:17:16 2015
@@ -150,3 +150,14 @@ class CXXCompiler(object):
cmd, out, err, rc = self.compile(os.devnull, out=os.devnull,
flags=flags)
return rc == 0
+
+ def addCompileFlagIfSupported(self, flag):
+ if isinstance(flag, list):
+ flags = list(flag)
+ else:
+ flags = [flag]
+ if self.hasCompileFlag(flags):
+ self.compile_flags += flags
+ return True
+ else:
+ return False
Modified: libcxx/trunk/test/libcxx/test/config.py
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/libcxx/test/config.py?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/libcxx/test/config.py (original)
+++ libcxx/trunk/test/libcxx/test/config.py Sat Jul 18 16:17:16 2015
@@ -570,10 +570,9 @@ class Configuration(object):
def configure_warnings(self):
enable_warnings = self.get_lit_bool('enable_warnings', False)
if enable_warnings:
- self.cxx.compile_flags += ['-Wsystem-headers', '-Wall', '-Werror']
- if ('clang' in self.config.available_features or
- 'apple-clang' in self.config.available_features):
- self.cxx.compile_flags += ['-Wno-user-defined-literals']
+ self.cxx.compile_flags += ['-D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER',
+ '-Wall', '-Werror']
+ self.cxx.addCompileFlagIfSupported('-Wno-user-defined-literals')
def configure_sanitizer(self):
san = self.get_lit_conf('use_sanitizer', '').strip()
Modified: libcxx/trunk/test/std/language.support/support.dynamic/alloc.errors/new.handler/new_handler.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/alloc.errors/new.handler/new_handler.pass.cpp?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.dynamic/alloc.errors/new.handler/new_handler.pass.cpp (original)
+++ libcxx/trunk/test/std/language.support/support.dynamic/alloc.errors/new.handler/new_handler.pass.cpp Sat Jul 18 16:17:16 2015
@@ -10,10 +10,14 @@
// test new_handler
#include <new>
+#include <type_traits>
+#include <cassert>
void f() {}
int main()
{
+ static_assert(std::is_same<std::new_handler, void(*)()>::value, "");
std::new_handler p = f;
+ assert(p == &f);
}
Modified: libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array.pass.cpp?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array.pass.cpp (original)
+++ libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array.pass.cpp Sat Jul 18 16:17:16 2015
@@ -38,7 +38,8 @@ int main()
std::set_new_handler(new_handler);
try
{
- void*volatile vp = operator new[] (std::numeric_limits<std::size_t>::max());
+ void* volatile vp = operator new[] (std::numeric_limits<std::size_t>::max());
+ ((void)vp);
assert(false);
}
catch (std::bad_alloc&)
Modified: libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.pass.cpp?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.pass.cpp (original)
+++ libcxx/trunk/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.pass.cpp Sat Jul 18 16:17:16 2015
@@ -39,6 +39,7 @@ int main()
try
{
void* vp = operator new (std::numeric_limits<std::size_t>::max());
+ ((void)vp);
assert(false);
}
catch (std::bad_alloc&)
Modified: libcxx/trunk/test/std/language.support/support.exception/exception.terminate/terminate.handler/terminate_handler.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.exception/exception.terminate/terminate.handler/terminate_handler.pass.cpp?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.exception/exception.terminate/terminate.handler/terminate_handler.pass.cpp (original)
+++ libcxx/trunk/test/std/language.support/support.exception/exception.terminate/terminate.handler/terminate_handler.pass.cpp Sat Jul 18 16:17:16 2015
@@ -10,10 +10,14 @@
// test terminate_handler
#include <exception>
+#include <type_traits>
+#include <cassert>
void f() {}
int main()
{
+ static_assert(std::is_same<std::terminate_handler, void(*)()>::value, "");
std::terminate_handler p = f;
+ assert(p == &f);
}
Modified: libcxx/trunk/test/std/language.support/support.runtime/csignal.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.runtime/csignal.pass.cpp?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.runtime/csignal.pass.cpp (original)
+++ libcxx/trunk/test/std/language.support/support.runtime/csignal.pass.cpp Sat Jul 18 16:17:16 2015
@@ -50,7 +50,8 @@
int main()
{
- std::sig_atomic_t sig;
+ std::sig_atomic_t sig = 0;
+ ((void)sig);
typedef void (*func)(int);
static_assert((std::is_same<decltype(std::signal(0, (func)0)), func>::value), "");
static_assert((std::is_same<decltype(std::raise(0)), int>::value), "");
Modified: libcxx/trunk/test/std/language.support/support.runtime/cstdarg.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.runtime/cstdarg.pass.cpp?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.runtime/cstdarg.pass.cpp (original)
+++ libcxx/trunk/test/std/language.support/support.runtime/cstdarg.pass.cpp Sat Jul 18 16:17:16 2015
@@ -32,4 +32,5 @@
int main()
{
std::va_list va;
+ ((void)va);
}
Modified: libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp (original)
+++ libcxx/trunk/test/std/language.support/support.runtime/cstdlib.pass.cpp Sat Jul 18 16:17:16 2015
@@ -11,6 +11,7 @@
#include <cstdlib>
#include <type_traits>
+#include <cassert>
#ifndef EXIT_FAILURE
#error EXIT_FAILURE not defined
@@ -32,12 +33,23 @@
#error RAND_MAX not defined
#endif
+template <class TestType, class IntType>
+void test_div_struct() {
+ TestType obj;
+ static_assert(sizeof(obj) >= sizeof(IntType) * 2, ""); // >= to account for alignment.
+ static_assert(std::is_same<decltype(obj.quot), IntType>::value, "");
+ static_assert(std::is_same<decltype(obj.rem), IntType>::value, "");
+ ((void) obj);
+};
+
int main()
{
std::size_t s = 0;
- std::div_t d;
- std::ldiv_t ld;
- std::lldiv_t lld;
+ ((void)s);
+ static_assert(std::is_same<std::size_t, decltype(sizeof(int))>::value, "");
+ test_div_struct<std::div_t, int>();
+ test_div_struct<std::ldiv_t, long>();
+ test_div_struct<std::lldiv_t, long long>();
char** endptr = 0;
static_assert((std::is_same<decltype(std::atof("")), double>::value), "");
static_assert((std::is_same<decltype(std::atoi("")), int>::value), "");
Modified: libcxx/trunk/test/std/language.support/support.runtime/ctime.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/std/language.support/support.runtime/ctime.pass.cpp?rev=242624&r1=242623&r2=242624&view=diff
==============================================================================
--- libcxx/trunk/test/std/language.support/support.runtime/ctime.pass.cpp (original)
+++ libcxx/trunk/test/std/language.support/support.runtime/ctime.pass.cpp Sat Jul 18 16:17:16 2015
@@ -23,6 +23,7 @@
int main()
{
std::clock_t c = 0;
+ ((void)c);
std::size_t s = 0;
std::time_t t = 0;
std::tm tm = {0};
More information about the cfe-commits
mailing list