[clang] [clang][bytecode] Check types when loading values (PR #165385)

Oliver Hunt via cfe-commits cfe-commits at lists.llvm.org
Wed Oct 29 04:04:19 PDT 2025


================
@@ -1915,6 +1914,10 @@ bool Load(InterpState &S, CodePtr OpPC) {
     return false;
   if (!Ptr.isBlockPointer())
     return false;
+  if (!(Ptr.getFieldDesc()->isPrimitive() ||
+        Ptr.getFieldDesc()->isPrimitiveArray()) ||
+      Ptr.getFieldDesc()->getPrimType() != Name)
+    return false;
----------------
ojhunt wrote:

```suggestion
  const Descriptor *FieldDesc = Ptr.getFieldDesc();
  if (!(FieldDesc->isPrimitive() || FieldDesc->isPrimitiveArray()) ||
      FieldDesc->getPrimType() != Name)
    return false;
```

and similar below

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


More information about the cfe-commits mailing list