public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "paolo at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/26099] support for type traits is not available Date: Fri, 30 Mar 2007 19:46:00 -0000 [thread overview] Message-ID: <20070330194618.29967.qmail@sourceware.org> (raw) In-Reply-To: <bug-26099-3238@http.gcc.gnu.org/bugzilla/> ------- Comment #9 from paolo at gcc dot gnu dot org 2007-03-30 20:46 ------- Subject: Bug 26099 Author: paolo Date: Fri Mar 30 20:45:57 2007 New Revision: 123366 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=123366 Log: gcc/ 2007-03-30 Paolo Carlini <pcarlini@suse.de> PR c++/26099 * c-common.h (enum rid): Add RID_HAS_NOTHROW_ASSIGN, RID_HAS_NOTHROW_CONSTRUCTOR, RID_HAS_NOTHROW_COPY, RID_HAS_TRIVIAL_ASSIGN, RID_HAS_TRIVIAL_CONSTRUCTOR, RID_HAS_TRIVIAL_COPY, RID_HAS_TRIVIAL_DESTRUCTOR, RID_HAS_VIRTUAL_DESTRUCTOR, RID_IS_ABSTRACT, RID_IS_BASE_OF, RID_IS_CONVERTIBLE_TO, RID_IS_CLASS, RID_IS_EMPTY, RID_IS_ENUM, RID_IS_POD, RID_IS_POLYMORPHIC, RID_IS_UNION, as C++ extensions. * doc/extend.texi (Extensions to the C++ Language): Add Type Traits. gcc/cp/ 2007-03-30 Paolo Carlini <pcarlini@suse.de> PR c++/26099 * cp-tree.h (enum cp_trait_kind, struct tree_trait_expr, TRAIT_EXPR_TYPE1, TRAIT_EXPR_TYPE2, TRAIT_EXPR_KIND): Add. (enum cp_tree_node_structure_enum, union lang_tree_node): Update. (CLASS_TYPE_NON_UNION_P): Add. (struct lang_type_class): Add has_complex_dflt. (TYPE_HAS_COMPLEX_DFLT, TYPE_HAS_TRIVIAL_DFLT): Add. (locate_copy, locate_ctor, locate_dtor, finish_trait_expr): Declare. * cp-tree.def: Add TRAIT_EXPR. * cp-objcp-common.c (cp_tree_size): Add TRAIT_EXPR case. * lex.c (struct resword): Add __has_nothrow_assign, __has_nothrow_constructor, __has_nothrow_copy, __has_trivial_assign, __has_trivial_constructor, __has_trivial_copy, __has_trivial_destructor, __has_virtual_destructor, __is_abstract, __is_base_of, __is_class, __is_convertible_to, __is_empty, __is_enum, __is_pod, __is_polymorphic, __is_union. * parser.c (cp_parser_primary_expression): Deal with the new RIDs. (cp_parser_trait_expr): New. * semantics.c (finish_trait_expr, trait_expr_value classtype_has_nothrow_copy_or_assign_p): New. * method.c (locate_copy, locate_ctor, locate_dtor): Do not define as static. * decl.c (cp_tree_node_structure): Add TRAIT_EXPR. * class.c (check_bases, check_field_decl, check_bases_and_members): Deal with TYPE_HAS_COMPLEX_DFLT (t) too. * pt.c (uses_template_parms, tsubst_copy_and_build, value_dependent_expression_p, type_dependent_expression_p): Deal with TRAIT_EXPR. * tree.c (cp_walk_subtrees): Deal with TRAIT_EXPR. gcc/testsuite/ 2007-03-30 Paolo Carlini <pcarlini@suse.de> PR c++/26099 * g++.dg/ext/is_base_of.C: New. * g++.dg/ext/has_virtual_destructor.C: New. * g++.dg/ext/is_polymorphic.C: New. * g++.dg/ext/is_base_of_diagnostic.C: New. * g++.dg/ext/is_enum.C: New. * g++.dg/ext/has_nothrow_assign.C: New. * g++.dg/ext/has_nothrow_constructor.C: New. * g++.dg/ext/is_empty.C: New. * g++.dg/ext/has_trivial_copy.C: New. * g++.dg/ext/has_trivial_assign.C: New. * g++.dg/ext/is_abstract.C: New. * g++.dg/ext/is_pod.C: New. * g++.dg/ext/has_nothrow_copy.C: New. * g++.dg/ext/is_class.C: New. * g++.dg/ext/has_trivial_constructor.C: New. * g++.dg/ext/is_union.C: New. * g++.dg/ext/has_trivial_destructor.C: New. * g++.dg/tree-ssa/pr22444.C: Adjust, avoid __is_pod. * g++.dg/template/crash43.C: Likewise. libstdc++-v3/ 2007-03-30 Paolo Carlini <pcarlini@suse.de> PR c++/26099 * include/bits/cpp_type_traits.h (struct __is_pod, struct __is_empty): Remove. * include/bits/valarray_array.h: Adjust. * include/bits/allocator.h: Likewise. * include/bits/stl_tree.h: Likewise. Added: trunk/gcc/testsuite/g++.dg/ext/has_nothrow_assign.C trunk/gcc/testsuite/g++.dg/ext/has_nothrow_constructor.C trunk/gcc/testsuite/g++.dg/ext/has_nothrow_copy.C trunk/gcc/testsuite/g++.dg/ext/has_trivial_assign.C trunk/gcc/testsuite/g++.dg/ext/has_trivial_constructor.C trunk/gcc/testsuite/g++.dg/ext/has_trivial_copy.C trunk/gcc/testsuite/g++.dg/ext/has_trivial_destructor.C trunk/gcc/testsuite/g++.dg/ext/has_virtual_destructor.C trunk/gcc/testsuite/g++.dg/ext/is_abstract.C trunk/gcc/testsuite/g++.dg/ext/is_base_of.C trunk/gcc/testsuite/g++.dg/ext/is_base_of_diagnostic.C trunk/gcc/testsuite/g++.dg/ext/is_class.C trunk/gcc/testsuite/g++.dg/ext/is_empty.C trunk/gcc/testsuite/g++.dg/ext/is_enum.C trunk/gcc/testsuite/g++.dg/ext/is_pod.C trunk/gcc/testsuite/g++.dg/ext/is_polymorphic.C trunk/gcc/testsuite/g++.dg/ext/is_union.C Modified: trunk/gcc/ChangeLog trunk/gcc/c-common.h trunk/gcc/cp/ChangeLog trunk/gcc/cp/class.c trunk/gcc/cp/cp-objcp-common.c trunk/gcc/cp/cp-tree.def trunk/gcc/cp/cp-tree.h trunk/gcc/cp/decl.c trunk/gcc/cp/lex.c trunk/gcc/cp/method.c trunk/gcc/cp/parser.c trunk/gcc/cp/pt.c trunk/gcc/cp/semantics.c trunk/gcc/cp/tree.c trunk/gcc/doc/extend.texi trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/template/crash43.C trunk/gcc/testsuite/g++.dg/tree-ssa/pr22444.C trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/include/bits/allocator.h trunk/libstdc++-v3/include/bits/cpp_type_traits.h trunk/libstdc++-v3/include/bits/stl_tree.h trunk/libstdc++-v3/include/bits/valarray_array.h -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26099
next prev parent reply other threads:[~2007-03-30 19:46 UTC|newest] Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top 2006-02-04 22:10 [Bug c++/26099] New: " stefaan dot deroeck at gmail dot com 2006-02-04 22:17 ` [Bug c++/26099] " pinskia at gcc dot gnu dot org 2006-02-04 23:14 ` stefaan dot deroeck at gmail dot com 2006-02-04 23:22 ` pinskia at gcc dot gnu dot org 2006-02-04 23:41 ` pcarlini at suse dot de 2006-02-04 23:41 ` stefaan dot deroeck at gmail dot com 2006-02-05 3:56 ` gdr at integrable-solutions dot net 2006-02-05 10:22 ` pcarlini at suse dot de 2006-11-21 18:38 ` pcarlini at suse dot de 2007-03-30 19:46 ` paolo at gcc dot gnu dot org [this message] 2008-01-27 10:09 ` ghazi at gcc dot gnu dot org 2008-01-27 10:22 ` ghazi at gcc dot gnu dot org 2008-01-27 12:36 ` pcarlini at suse dot de 2008-01-27 13:27 ` rguenth at gcc dot gnu dot org 2008-01-27 14:14 ` pcarlini at suse dot de 2008-01-27 19:21 ` ghazi at gcc dot gnu dot org 2008-01-27 19:28 ` pcarlini at suse dot de 2008-01-27 19:34 ` pcarlini at suse dot de 2008-01-27 20:48 ` ghazi at gcc dot gnu dot org 2008-01-27 21:10 ` ghazi at gcc dot gnu dot org 2008-01-27 21:11 ` pcarlini at suse dot de 2008-01-27 21:18 ` pcarlini at suse dot de 2008-01-27 21:33 ` pcarlini at suse dot de 2008-01-27 21:36 ` ghazi at gcc dot gnu dot org 2008-01-27 22:04 ` ghazi at gcc dot gnu dot org 2008-01-27 22:27 ` ghazi at gcc dot gnu dot org 2008-01-27 22:49 ` pcarlini at suse dot de 2008-01-27 22:56 ` ghazi at gcc dot gnu dot org 2008-01-27 22:57 ` pcarlini at suse dot de 2009-11-22 17:54 ` ghazi at gcc dot gnu dot org 2009-11-22 19:14 ` paolo dot carlini at oracle dot com 2009-11-22 19:14 ` paolo dot carlini at oracle dot com [not found] <bug-26099-4@http.gcc.gnu.org/bugzilla/> 2011-08-31 17:38 ` paolo.carlini at oracle dot com 2014-09-30 17:44 ` paolo.carlini at oracle dot com 2014-10-01 8:06 ` paolo.carlini at oracle dot com 2014-10-01 8:21 ` paolo.carlini at oracle dot com
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20070330194618.29967.qmail@sourceware.org \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).