[Bug libstdc++/48526] [C++0x] std::is_constructible<void, Args...>::value shall be false

paolo at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Apr 13 22:53:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48526

--- Comment #2 from paolo at gcc dot gnu.org <paolo at gcc dot gnu.org> 2011-04-13 22:52:48 UTC ---
Author: paolo
Date: Wed Apr 13 22:52:45 2011
New Revision: 172401

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=172401
Log:
2011-04-13  Daniel Krugler  <daniel.kruegler@googlemail.com>
        Paolo Carlini  <paolo.carlini@oracle.com>

    PR libstdc++/48526
    * include/std/type_traits (struct is_constructible): Re-implement,
    according to n3290.
    (struct is_default_constructible): Add.
    (struct is_destructible): Likewise.
    (struct __and_, __or_, __not_): Add and use throughout; reorder some
    facilities, other minor tweaks.
    * testsuite/util/testsuite_tr1.h: Add test types.
    * testsuite/20_util/is_constructible/value-2.cc: New.
    * testsuite/20_util/is_default_constructible/value.cc: Likewise.
    * testsuite/20_util/is_default_constructible/requirements/typedefs.cc:
    Likewise.
    * testsuite/20_util/is_default_constructible/requirements/
    explicit_instantiation.cc: Likewise.
    * testsuite/20_util/is_destructible/value.cc: Likewise.
    * testsuite/20_util/is_destructible/requirements/typedefs.cc:
    Likewise.
    * testsuite/20_util/is_destructible/requirements/
    explicit_instantiation.cc: Likewise.
    * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
    dg-error line numbers.
    * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
    Likewise.
    * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
    * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.

2011-04-13  Paolo Carlini  <paolo.carlini@oracle.com>

    * testsuite/20_util/is_function/value.cc: Add, adapted from the tr
    testsuite. 
    * testsuite/20_util/is_function/requirements/typedefs.cc: Likewise.
    * testsuite/20_util/is_function/requirements/
    explicit_instantiation.cc: Likewise.
    * testsuite/20_util/is_function/24808.cc: Likewise.
    * testsuite/20_util/is_function/35637.cc: Likewise.
    * testsuite/20_util/is_object/value.cc: Likewise.
    * testsuite/20_util/is_object/requirements/typedefs.cc: Likewise.
    * testsuite/20_util/is_object/requirements/explicit_instantiation.cc:
    : Likewise.
    * testsuite/20_util/is_object/24808.cc: Likewise.
    * testsuite/20_util/is_compound/value.cc: Likewise.
    * testsuite/20_util/is_compound/requirements/typedefs.cc: Likewise.
    * testsuite/20_util/is_compound/requirements/
    explicit_instantiation.cc: Likewise.
    * testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
    * testsuite/20_util/is_member_object_pointer/requirements/
    typedefs.cc: Likewise.
    * testsuite/20_util/is_member_object_pointer/requirements/
    explicit_instantiation.cc: Likewise.
    * testsuite/20_util/is_fundamental/value.cc: Likewise.
    * testsuite/20_util/is_fundamental/requirements/typedefs.cc: Likewise.
    * testsuite/20_util/is_fundamental/requirements/
    explicit_instantiation.cc: Likewise.
    * testsuite/20_util/is_member_pointer/value.cc: Likewise.
    * testsuite/20_util/is_member_pointer/requirements/typedefs.cc: 
    Likewise.
    * testsuite/20_util/is_member_pointer/requirements/
    explicit_instantiation.cc: Likewise.
    * testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
    * testsuite/20_util/is_member_function_pointer/
    requirements/typedefs.cc: Likewise.
    * testsuite/20_util/is_member_function_pointer/requirements/
    explicit_instantiation.cc: Likewise.

    * testsuite/20_util/is_convertible/value.cc: Minor tweak, adjust
    Copyright years.

Added:
    trunk/libstdc++-v3/testsuite/20_util/is_compound/
    trunk/libstdc++-v3/testsuite/20_util/is_compound/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_compound/requirements/explicit_instantiation.cc
    trunk/libstdc++-v3/testsuite/20_util/is_compound/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_compound/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_constructible/value-2.cc
    trunk/libstdc++-v3/testsuite/20_util/is_default_constructible/
    trunk/libstdc++-v3/testsuite/20_util/is_default_constructible/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_default_constructible/requirements/explicit_instantiation.cc
   
trunk/libstdc++-v3/testsuite/20_util/is_default_constructible/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_default_constructible/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_destructible/
    trunk/libstdc++-v3/testsuite/20_util/is_destructible/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_destructible/requirements/explicit_instantiation.cc
   
trunk/libstdc++-v3/testsuite/20_util/is_destructible/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_destructible/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_function/
    trunk/libstdc++-v3/testsuite/20_util/is_function/24808.cc
    trunk/libstdc++-v3/testsuite/20_util/is_function/35637.cc
    trunk/libstdc++-v3/testsuite/20_util/is_function/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_function/requirements/explicit_instantiation.cc
    trunk/libstdc++-v3/testsuite/20_util/is_function/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_function/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_fundamental/
    trunk/libstdc++-v3/testsuite/20_util/is_fundamental/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_fundamental/requirements/explicit_instantiation.cc
   
trunk/libstdc++-v3/testsuite/20_util/is_fundamental/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_fundamental/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_member_function_pointer/
   
trunk/libstdc++-v3/testsuite/20_util/is_member_function_pointer/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_member_function_pointer/requirements/explicit_instantiation.cc
   
trunk/libstdc++-v3/testsuite/20_util/is_member_function_pointer/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_member_function_pointer/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_member_object_pointer/
    trunk/libstdc++-v3/testsuite/20_util/is_member_object_pointer/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_member_object_pointer/requirements/explicit_instantiation.cc
   
trunk/libstdc++-v3/testsuite/20_util/is_member_object_pointer/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_member_object_pointer/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_member_pointer/
    trunk/libstdc++-v3/testsuite/20_util/is_member_pointer/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_member_pointer/requirements/explicit_instantiation.cc
   
trunk/libstdc++-v3/testsuite/20_util/is_member_pointer/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_member_pointer/value.cc
    trunk/libstdc++-v3/testsuite/20_util/is_object/
    trunk/libstdc++-v3/testsuite/20_util/is_object/24808.cc
    trunk/libstdc++-v3/testsuite/20_util/is_object/requirements/
   
trunk/libstdc++-v3/testsuite/20_util/is_object/requirements/explicit_instantiation.cc
    trunk/libstdc++-v3/testsuite/20_util/is_object/requirements/typedefs.cc
    trunk/libstdc++-v3/testsuite/20_util/is_object/value.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/std/type_traits
    trunk/libstdc++-v3/testsuite/20_util/declval/requirements/1_neg.cc
    trunk/libstdc++-v3/testsuite/20_util/is_convertible/value.cc
   
trunk/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs_neg.cc
   
trunk/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc
    trunk/libstdc++-v3/testsuite/20_util/ratio/cons/cons_overflow_neg.cc
    trunk/libstdc++-v3/testsuite/util/testsuite_tr1.h



More information about the Gcc-bugs mailing list