================ @@ -3176,6 +3178,11 @@ def err_alignas_underaligned : Error< "requested alignment is less than minimum alignment of %1 for type %0">; def warn_aligned_attr_underaligned : Warning<err_alignas_underaligned.Summary>, InGroup<IgnoredAttributes>; +def err_ctor_dtor_attr_on_non_void_func : Error< + "%0 attribute can only be applied to a function which accepts no arguments " + "and has a 'void' or 'int' return type">; ---------------- AaronBallman wrote:
Not that I could find -- the function marked `cleanup` needs to accept one argument and it has to be a pointer type: ``` def err_attribute_cleanup_func_must_take_one_arg : Error< "'cleanup' function %0 must take 1 parameter">; def err_attribute_cleanup_func_arg_incompatible_type : Error< "'cleanup' function %0 parameter has " "%diff{type $ which is incompatible with type $|incompatible type}1,2">; ``` I looked around for an existing diagnostic to augment but didn't spot any that worked well. https://github.com/llvm/llvm-project/pull/67360 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits