diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 856f10738e4..73807415a63 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,10 @@ +2011-01-18 Benjamin Kosnik + + * doc/xml/images/confdeps.png: Regenerate. + + * include/std/chrono (duration): Mark copy constructor constexpr. + * testsuite/20_util/duration/cons/constexpr.cc: Add test. + 2011-01-18 Paolo Carlini * include/bits/unique_ptr.h (default_delete<>::default_delete()): diff --git a/libstdc++-v3/doc/xml/images/confdeps.png b/libstdc++-v3/doc/xml/images/confdeps.png index 5075aa869b1..55c07ba015e 100644 Binary files a/libstdc++-v3/doc/xml/images/confdeps.png and b/libstdc++-v3/doc/xml/images/confdeps.png differ diff --git a/libstdc++-v3/include/std/chrono b/libstdc++-v3/include/std/chrono index 25110817a15..b93671f3855 100644 --- a/libstdc++-v3/include/std/chrono +++ b/libstdc++-v3/include/std/chrono @@ -1,6 +1,6 @@ // -*- C++ -*- -// Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc. +// Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -223,6 +223,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std) // 20.8.3.1 construction / copy / destroy constexpr duration() : __r() { } + constexpr duration(const duration&) = default; + template::value && (treat_as_floating_point::value @@ -238,7 +240,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std) : __r(duration_cast(__d).count()) { } ~duration() = default; - duration(const duration&) = default; duration& operator=(const duration&) = default; // 20.8.3.2 observer diff --git a/libstdc++-v3/testsuite/20_util/duration/cons/constexpr.cc b/libstdc++-v3/testsuite/20_util/duration/cons/constexpr.cc index 6f78dbb37e3..ca7716f632e 100644 --- a/libstdc++-v3/testsuite/20_util/duration/cons/constexpr.cc +++ b/libstdc++-v3/testsuite/20_util/duration/cons/constexpr.cc @@ -27,6 +27,7 @@ int main() test1.operator()(); __gnu_test::constexpr_single_value_constructible test2; + test2.operator()(); test2.operator()(); test2.operator()(); return 0;