r266335 - in /trunk/gcc: ChangeLog c-family/Cha...

msebor@gcc.gnu.org msebor@gcc.gnu.org
Wed Nov 21 02:50:00 GMT 2018


Author: msebor
Date: Wed Nov 21 02:50:02 2018
New Revision: 266335

URL: https://gcc.gnu.org/viewcvs?rev=266335&root=gcc&view=rev
Log:

gcc/c/ChangeLog:

	* c-parser.c (c_parser_has_attribute_expression): New function.
	(c_parser_attribute): New function.
	(c_parser_attributes): Move code into c_parser_attribute.
	(c_parser_unary_expression): Handle RID_HAS_ATTRIBUTE_EXPRESSION.

gcc/c-family/ChangeLog:

	* c-attribs.c (type_for_vector_size): New function.
	(type_valid_for_vector_size): Same.
	(handle_vector_size_attribute): Move code to the functions above
	and call them.
	(validate_attribute, has_attribute): New functions.
	* c-common.h (has_attribute): Declare.
	(rid): Add RID_HAS_ATTRIBUTE_EXPRESSION.
	* c-common.c (c_common_resword): Same.

gcc/cp/ChangeLog:

	* cp-tree.h (cp_check_const_attributes): Declare.
	* decl2.c (cp_check_const_attributes): Declare extern.
	* parser.c (cp_parser_has_attribute_expression): New function.
	(cp_parser_unary_expression): Handle RID_HAS_ATTRIBUTE_EXPRESSION.
	(cp_parser_gnu_attribute_list): Add argument.

gcc/ChangeLog:

	* doc/extend.texi (Other Builtins): Add __builtin_has_attribute.

gcc/testsuite/ChangeLog:

	* c-c++-common/builtin-has-attribute-2.c: New test.
	* c-c++-common/builtin-has-attribute-3.c: New test.
	* c-c++-common/builtin-has-attribute-4.c: New test.
	* c-c++-common/builtin-has-attribute.c: New test.
	* gcc.dg/builtin-has-attribute.c: New test.
	* gcc/testsuite/gcc.target/i386/builtin-has-attribute.c: New test.


Added:
    trunk/gcc/testsuite/c-c++-common/builtin-has-attribute-2.c
    trunk/gcc/testsuite/c-c++-common/builtin-has-attribute-3.c
    trunk/gcc/testsuite/c-c++-common/builtin-has-attribute-4.c
    trunk/gcc/testsuite/c-c++-common/builtin-has-attribute.c
    trunk/gcc/testsuite/gcc.dg/builtin-has-attribute.c
    trunk/gcc/testsuite/gcc.target/i386/builtin-has-attribute.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/c-family/ChangeLog
    trunk/gcc/c-family/c-attribs.c
    trunk/gcc/c-family/c-common.c
    trunk/gcc/c-family/c-common.h
    trunk/gcc/c/ChangeLog
    trunk/gcc/c/c-parser.c
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/decl2.c
    trunk/gcc/cp/parser.c
    trunk/gcc/doc/extend.texi
    trunk/gcc/testsuite/ChangeLog



More information about the Gcc-cvs mailing list