llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang Author: Sarah Spall (spall) <details> <summary>Changes</summary> Remove groupshared from isLambdaSpecifier. Add a test showing this is rejected. --- Full diff: https://github.com/llvm/llvm-project/pull/233621.diff 2 Files Affected: - (modified) clang/lib/Parse/ParseExprCXX.cpp (+2-2) - (modified) clang/test/ParserHLSL/group_shared.hlsl (+5) ``````````diff diff --git a/clang/lib/Parse/ParseExprCXX.cpp b/clang/lib/Parse/ParseExprCXX.cpp index 3745ea53fc6d0..993a688c0ed34 100644 --- a/clang/lib/Parse/ParseExprCXX.cpp +++ b/clang/lib/Parse/ParseExprCXX.cpp @@ -1223,8 +1223,8 @@ bool Parser::isLambdaSpecifier() { return Tok.isOneOf(tok::kw_mutable, tok::arrow, tok::kw___attribute, tok::kw_constexpr, tok::kw_consteval, tok::kw_static, tok::kw___private, tok::kw___global, tok::kw___local, - tok::kw___constant, tok::kw___generic, tok::kw_groupshared, - tok::kw_requires, tok::kw_noexcept) || + tok::kw___constant, tok::kw___generic, tok::kw_requires, + tok::kw_noexcept) || Tok.isRegularKeywordAttribute() || (Tok.is(tok::l_square) && NextToken().is(tok::l_square)); } diff --git a/clang/test/ParserHLSL/group_shared.hlsl b/clang/test/ParserHLSL/group_shared.hlsl index d518f7f69d7ca..3f531a813db9b 100644 --- a/clang/test/ParserHLSL/group_shared.hlsl +++ b/clang/test/ParserHLSL/group_shared.hlsl @@ -8,6 +8,11 @@ extern float groupshared f; // Ok, redeclaration? // expected-warning@#gs_lambda {{'auto' type specifier is a HLSL 202y extension}} auto l = []() groupshared {}; // #gs_lambda +// expected-warning@#gs_no_parens {{lambdas are a clang HLSL extension}} +// expected-warning@#gs_no_parens {{'auto' type specifier is a HLSL 202y extension}} +// expected-error@#gs_no_parens {{expected body of lambda expression}} +auto l_no_parens = [] groupshared {}; // #gs_no_parens + float groupshared [[]] i = 12; // expected-error@-1{{initializer of groupshared variable will be ignored}} `````````` </details> https://github.com/llvm/llvm-project/pull/233621 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
