Implement no_stack_protector attribute.
gcc/ChangeLog:
2020-05-18 Martin Liska <mliska@suse.cz>
PR c/94722
* cfgexpand.c (stack_protect_decl_phase):
Guard with lookup_attribute("no_stack_protector") at
various places.
(expand_used_vars): Likewise here.
* doc/extend.texi: Document no_stack_protector attribute.
gcc/ada/ChangeLog:
2020-05-18 Martin Liska <mliska@suse.cz>
PR c/94722
* gcc-interface/utils.c (handle_no_stack_protect_attribute):
New.
(handle_stack_protect_attribute): Add error message for a
no_stack_protector function.
gcc/c-family/ChangeLog:
2020-05-18 Martin Liska <mliska@suse.cz>
PR c/94722
* c-attribs.c (handle_no_stack_protect_function_attribute): New.
(handle_stack_protect_attribute): Add error message for a
no_stack_protector function.
gcc/testsuite/ChangeLog:
2020-05-18 Martin Liska <mliska@suse.cz>
PR c/94722
* g++.dg/no-stack-protector-attr-2.C: New test.
* g++.dg/no-stack-protector-attr-3.C: New test.
* g++.dg/no-stack-protector-attr.C: New test.