[clang] [llvm] [UBSan] Support src:*=sanitize for multiple ignorelists. (PR #141640)

Shafik Yaghmour via cfe-commits cfe-commits at lists.llvm.org
Thu May 29 22:28:20 PDT 2025


================
@@ -44,20 +45,24 @@ class SanitizerSpecialCaseList : public llvm::SpecialCaseList {
                  StringRef Category = StringRef()) const;
 
   // Query ignorelisted entries if any bit in Mask matches the entry's section.
-  // Return 0 if not found. If found, return the line number (starts with 1).
-  unsigned inSectionBlame(SanitizerMask Mask, StringRef Prefix, StringRef Query,
-                          StringRef Category = StringRef()) const;
+  // Return NotFound (0,0) if not found. If found, return the file index number
+  // and the line number (FileIdx, LineNo) (FileIdx starts with 1 and LineNo
+  // starts with 0).
+  std::pair<unsigned, unsigned>
----------------
shafik wrote:

I feel like this is almost an anti-pattern, using std::pair like this. We have two opaque values that we now have to go back to the function to understand what they mean.

If you had a type (class) with two members (`FileIdx` and `LineNo`) then it would make sense at each use as opposed to `first` and `second` which is not informative.

I actually don't see the values explicitly used but I am assuming they will be in a later change.

https://github.com/llvm/llvm-project/pull/141640


More information about the cfe-commits mailing list