)]}'
{
  "commit": "1923fa0da14ef883a0e94fc0e30f1d35fba6a152",
  "tree": "b00351a0d81fa608633cdeebd71f3668a01cc92a",
  "parents": [
    "a3b51529d1948dee37b5bb44d49fa82b9ea37157"
  ],
  "author": {
    "name": "Bruno Cardoso Lopes",
    "email": "bruno.cardoso@gmail.com",
    "time": "Fri Feb 13 02:38:09 2026 +0100"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Feb 13 02:38:09 2026 +0100"
  },
  "message": "[CIR] Add ASTVarDeclInterface for AST attribute access (#179825)\n\nAdd the ASTVarDeclInterface which provides methods to access clang AST\nVarDecl information from CIR attributes. This interface enables:\n- mangleStaticGuardVariable: Mangle guard variable names using clang\u0027s\n  MangleContext\n- isLocalVarDecl: Check if a variable is function-local\n- getTLSKind: Get thread-local storage kind\n- isInline: Check if the variable is inline\n- getTemplateSpecializationKind: Get template specialization info\n- getVarDecl: Direct access to the underlying VarDecl pointer\n\nThis infrastructure is needed for proper handling of static local\nvariables with guard variables in LoweringPrepare.",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "12a6bfa8691cc573cd4f4664209c814030c1ad32",
      "new_mode": 33188,
      "new_path": "clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c0d4da81cb979924e0b0f5bd6f2fc8532ef4fb6a",
      "new_mode": 33188,
      "new_path": "clang/include/clang/CIR/Interfaces/ASTAttrInterfaces.td"
    },
    {
      "type": "modify",
      "old_id": "bc8d94ff9dc56615b0828c140a37946f05f8ada1",
      "old_mode": 33188,
      "old_path": "clang/include/clang/CIR/Interfaces/CMakeLists.txt",
      "new_id": "b7f8bd2f64cdbda1bb43c8a8856ecab52e0302a3",
      "new_mode": 33188,
      "new_path": "clang/include/clang/CIR/Interfaces/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cffcc94de695da510db6dd6ab906df3183b92cb1",
      "new_mode": 33188,
      "new_path": "clang/lib/CIR/Interfaces/ASTAttrInterfaces.cpp"
    },
    {
      "type": "modify",
      "old_id": "13e4c2040f1c7eb66089a001efe8789d36b84c6b",
      "old_mode": 33188,
      "old_path": "clang/lib/CIR/Interfaces/CMakeLists.txt",
      "new_id": "33eb169708a4ff032b667fd4b8f5010bc91570a3",
      "new_mode": 33188,
      "new_path": "clang/lib/CIR/Interfaces/CMakeLists.txt"
    }
  ]
}
