cjdb added inline comments.
================ Comment at: clang/lib/Frontend/SARIFDiagnostic.cpp:51-52 + Diag->getDiags()->getDiagnosticIDs()->getStableName(Diag->getID()).str(); + std::replace(StableName.begin(), StableName.end(), '_', '.'); + SarifRule Rule = SarifRule::create().setRuleId(StableName); ---------------- denik wrote: > ยง3.5.4 says that the hierarchical strings are separated by "/". > > But more generally, are diagnostic names really fall under "hierarchical" > definition? > Words between underscores should be treated as components. And $3.27.5 says > that the leading components have to be the identifier of the rule. > In some cases they look like valid components, e.g. `err_access`, > `err_access_dtor`, `err_access_dtor_exception`. > But in cases like `err_cannot_open_file` neither of the leading components > exists. > > Theoretically we could use groups as the leading component for warnings for > example. For errors the leading components are probably not even necessary, > since if I understood correctly they are needed to suppress subsets of > violations on the SARIF consumer side. > Or we just could keep the names with underscores as is. WDYT? I think in light of what you've said, changing back to underscores is probably best. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146654/new/ https://reviews.llvm.org/D146654 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits