================ @@ -57,6 +57,27 @@ std::optional<RootConstants> RootSignatureParser::parseRootConstants() { RootConstants Constants; + auto Params = parseRootConstantParams(); + if (!Params.has_value()) + return std::nullopt; + + // Check mandatory parameters were provided + if (!Params->Num32BitConstants.has_value()) { + getDiags().Report(CurToken.TokLoc, diag::err_hlsl_rootsig_missing_param) + << TokenKind::kw_num32BitConstants; + return std::nullopt; + } + + Constants.Num32BitConstants = Params->Num32BitConstants.value(); ---------------- V-FEXrt wrote:
nit: You can dereference an optional to get the value ```suggestion Constants.Num32BitConstants = *Params->Num32BitConstants; ``` https://github.com/llvm/llvm-project/pull/138002 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits