[clang] [sanitizer] [clang] Introduce fsanitize-bounds-strict-flex-arrays (PR #126163)

Vitaly Buka via cfe-commits cfe-commits at lists.llvm.org
Fri Feb 7 16:38:02 PST 2025


================
@@ -1192,13 +1193,40 @@ llvm::Value *CodeGenFunction::EmitLoadOfCountedByField(
   return nullptr;
 }
 
+LangOptions::StrictFlexArraysLevelKind
+CodeGenFunction::effectiveArrayBoundsFlexArraysLevel() {
+  using StrictFlexArraysLevelKind = LangOptions::StrictFlexArraysLevelKind;
+  using ArrayBoundsStrictFlexArraysLevelKind =
+      LangOptions::ArrayBoundsStrictFlexArraysLevelKind;
+  StrictFlexArraysLevelKind StrictFlexArraysLevel;
+  switch (getLangOpts().getArrayBoundsStrictFlexArraysLevel()) {
+  case ArrayBoundsStrictFlexArraysLevelKind::Default:
+    StrictFlexArraysLevel = StrictFlexArraysLevelKind::Default;
----------------
vitalybuka wrote:

https://llvm.org/docs/CodingStandards.html#use-early-exits-and-continue-to-simplify-code

Not about switch but I think it applies.

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


More information about the cfe-commits mailing list