)]}'
{
  "commit": "d5cec386c14ac46ee252da29f5bd766db0adb6d0",
  "tree": "f0bbeafbdc203d14cfa33bfd3c499e752b0e5ba2",
  "parents": [
    "d6599fc3b9e1cf1659999e8a755ae1d68bc3b4b3"
  ],
  "author": {
    "name": "erichkeane",
    "email": "ekeane@nvidia.com",
    "time": "Mon Mar 03 10:26:53 2025 -0800"
  },
  "committer": {
    "name": "erichkeane",
    "email": "ekeane@nvidia.com",
    "time": "Mon Mar 03 13:57:23 2025 -0800"
  },
  "message": "[OpenACC] Implement \u0027cache\u0027 construct AST/Sema\n\nThis statement level construct takes no clauses and has no associated\nstatement, and simply labels a number of array elements as valid for\ncaching. The implementation here is pretty simple, but it is a touch of\na special case for parsing, so the parsing code reflects that.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c50410dc365b6358b554ca085e0a4d5690ed0e0e",
      "old_mode": 33188,
      "old_path": "clang/include/clang-c/Index.h",
      "new_id": "38e2417dcd181fc56bd3907e3789054173d219b2",
      "new_mode": 33188,
      "new_path": "clang/include/clang-c/Index.h"
    },
    {
      "type": "modify",
      "old_id": "b1b4363b65721905df8bb187f3c52cb64b7d0d96",
      "old_mode": 33188,
      "old_path": "clang/include/clang/AST/RecursiveASTVisitor.h",
      "new_id": "89757ddb0781fe3090b4a3841491b627a219cb3c",
      "new_mode": 33188,
      "new_path": "clang/include/clang/AST/RecursiveASTVisitor.h"
    },
    {
      "type": "modify",
      "old_id": "bd6c95d342ce2ec6b893ba9d4ce6cea275fac6e5",
      "old_mode": 33188,
      "old_path": "clang/include/clang/AST/StmtOpenACC.h",
      "new_id": "c2c74f5cf1958f845cccf2d416d44ce12f96a90a",
      "new_mode": 33188,
      "new_path": "clang/include/clang/AST/StmtOpenACC.h"
    },
    {
      "type": "modify",
      "old_id": "b0e5b28e228636ba7bc42b0539726ab42dffc16f",
      "old_mode": 33188,
      "old_path": "clang/include/clang/AST/TextNodeDumper.h",
      "new_id": "0925aca783bba0aa247443504e623c9c0c59cfac",
      "new_mode": 33188,
      "new_path": "clang/include/clang/AST/TextNodeDumper.h"
    },
    {
      "type": "modify",
      "old_id": "0efb15405ed5d2163174b2b8fd15701ed301d535",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Basic/DiagnosticSemaKinds.td",
      "new_id": "d89648a8a2e83f9cfc4c5ea0e878ae4b0909b8e3",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Basic/DiagnosticSemaKinds.td"
    },
    {
      "type": "modify",
      "old_id": "ae49671058a01b14d760aea9691791de82bf7627",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Basic/StmtNodes.td",
      "new_id": "9526fa5808aa54f742e1105d5a0e7ba8d3988b49",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Basic/StmtNodes.td"
    },
    {
      "type": "modify",
      "old_id": "0602f44333b204d5753f5a78fab021db52e56d67",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Parse/Parser.h",
      "new_id": "049156e266c7023072fc8236a5c7aa5800357847",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Parse/Parser.h"
    },
    {
      "type": "modify",
      "old_id": "36a2b6ff7edc3ab7c558d7b98c0d2fd232c8ced4",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Sema/SemaOpenACC.h",
      "new_id": "6edc0d6dd56532c002e7905db3ff9a8ecdb37209",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Sema/SemaOpenACC.h"
    },
    {
      "type": "modify",
      "old_id": "5698bebf134454b92a5e8ef538d304f7534a1752",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Serialization/ASTBitCodes.h",
      "new_id": "efb52cfd536af9d176d9ab6f8d3c248854b20bcb",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Serialization/ASTBitCodes.h"
    },
    {
      "type": "modify",
      "old_id": "11eab0c27579d859b27b305680026f740915f20f",
      "old_mode": 33188,
      "old_path": "clang/lib/AST/StmtOpenACC.cpp",
      "new_id": "8a86074fe68a0e3570d7220ddcdb5dee1294bc24",
      "new_mode": 33188,
      "new_path": "clang/lib/AST/StmtOpenACC.cpp"
    },
    {
      "type": "modify",
      "old_id": "dac9a95e10f3dae62fc83104ce239f0f7c53b6df",
      "old_mode": 33188,
      "old_path": "clang/lib/AST/StmtPrinter.cpp",
      "new_id": "263c1bae8e07572e228a7542a85d899d1f5bdea8",
      "new_mode": 33188,
      "new_path": "clang/lib/AST/StmtPrinter.cpp"
    },
    {
      "type": "modify",
      "old_id": "e283a9ad4a567e317d9b4cd07a5f3bf08e57f345",
      "old_mode": 33188,
      "old_path": "clang/lib/AST/StmtProfile.cpp",
      "new_id": "f9aa7aa079e67d55af2c14f2f9a285ed65343335",
      "new_mode": 33188,
      "new_path": "clang/lib/AST/StmtProfile.cpp"
    },
    {
      "type": "modify",
      "old_id": "063e718454d465e2959b70a3eef86158a430900b",
      "old_mode": 33188,
      "old_path": "clang/lib/AST/TextNodeDumper.cpp",
      "new_id": "9b2abce5421a6a60df58dea8f004dc89c3950833",
      "new_mode": 33188,
      "new_path": "clang/lib/AST/TextNodeDumper.cpp"
    },
    {
      "type": "modify",
      "old_id": "e56ba6c3e8803951bc3e6cbcb43abc146a86e861",
      "old_mode": 33188,
      "old_path": "clang/lib/CodeGen/CGStmt.cpp",
      "new_id": "abe799af32c6e516c3a51542f80cb817fb852562",
      "new_mode": 33188,
      "new_path": "clang/lib/CodeGen/CGStmt.cpp"
    },
    {
      "type": "modify",
      "old_id": "7c0d6c36855978d24462179d1b4d9af6fb125672",
      "old_mode": 33188,
      "old_path": "clang/lib/CodeGen/CodeGenFunction.h",
      "new_id": "018fc66b72a1e3651fbafd50c16ac8260fc7dc42",
      "new_mode": 33188,
      "new_path": "clang/lib/CodeGen/CodeGenFunction.h"
    },
    {
      "type": "modify",
      "old_id": "5eefd3ffb092efb2328d6f90787f1e888b1529b5",
      "old_mode": 33188,
      "old_path": "clang/lib/Parse/ParseOpenACC.cpp",
      "new_id": "1417caae0bbde9ba0e50469f0896e8c05616d0f3",
      "new_mode": 33188,
      "new_path": "clang/lib/Parse/ParseOpenACC.cpp"
    },
    {
      "type": "modify",
      "old_id": "a8eb24133a76d9032552d882683d3a52f5173c0c",
      "old_mode": 33188,
      "old_path": "clang/lib/Sema/SemaExceptionSpec.cpp",
      "new_id": "f358d8342e2f3f49b25921302aad66e1eaf1d72a",
      "new_mode": 33188,
      "new_path": "clang/lib/Sema/SemaExceptionSpec.cpp"
    },
    {
      "type": "modify",
      "old_id": "59583e73952cfec8d56a0ccd28d657d14c159cb5",
      "old_mode": 33188,
      "old_path": "clang/lib/Sema/SemaOpenACC.cpp",
      "new_id": "85fa631d61e8922339eec32ae84b58e989d6cdda",
      "new_mode": 33188,
      "new_path": "clang/lib/Sema/SemaOpenACC.cpp"
    },
    {
      "type": "modify",
      "old_id": "ba56179cad7b1067f8a0a89df44181c515abe3d2",
      "old_mode": 33188,
      "old_path": "clang/lib/Sema/TreeTransform.h",
      "new_id": "cb2f335e4290fb1334508c17970e75e6343e3096",
      "new_mode": 33188,
      "new_path": "clang/lib/Sema/TreeTransform.h"
    },
    {
      "type": "modify",
      "old_id": "835ad4a6589448fb19e36b71ec618959dc60c911",
      "old_mode": 33188,
      "old_path": "clang/lib/Serialization/ASTReaderStmt.cpp",
      "new_id": "48f9f89bd6e4cace1b050f46e206a4e8c2576ea2",
      "new_mode": 33188,
      "new_path": "clang/lib/Serialization/ASTReaderStmt.cpp"
    },
    {
      "type": "modify",
      "old_id": "82738d3a8c88a03ec902685c1a4283904c4f307c",
      "old_mode": 33188,
      "old_path": "clang/lib/Serialization/ASTWriterStmt.cpp",
      "new_id": "aa5a7854394a059e9bdc9c4b77b8d5188bfd7b63",
      "new_mode": 33188,
      "new_path": "clang/lib/Serialization/ASTWriterStmt.cpp"
    },
    {
      "type": "modify",
      "old_id": "318fa3c1caf0608dade63aac5dfeb83efa6e77a5",
      "old_mode": 33188,
      "old_path": "clang/lib/StaticAnalyzer/Core/ExprEngine.cpp",
      "new_id": "b76bbf72768aebe07e8ceb8f6ccaf25d862acf38",
      "new_mode": 33188,
      "new_path": "clang/lib/StaticAnalyzer/Core/ExprEngine.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e98ff3ca67600a34f750e74e5d54e20fe2d50f68",
      "new_mode": 33188,
      "new_path": "clang/test/AST/ast-print-openacc-cache-construct.cpp"
    },
    {
      "type": "modify",
      "old_id": "8937aa095d5eaac5d1342e13b050d0755d9c2ade",
      "old_mode": 33188,
      "old_path": "clang/test/ParserOpenACC/parse-cache-construct.c",
      "new_id": "d52a5e4ea3441355a4f82f97befe1f9a9a795b98",
      "new_mode": 33188,
      "new_path": "clang/test/ParserOpenACC/parse-cache-construct.c"
    },
    {
      "type": "modify",
      "old_id": "374fe2697b63fc79b4d4729a8fb85ba504fb8224",
      "old_mode": 33188,
      "old_path": "clang/test/ParserOpenACC/parse-cache-construct.cpp",
      "new_id": "a5a1e58028c33f625ee19af97289d7dae81ea7db",
      "new_mode": 33188,
      "new_path": "clang/test/ParserOpenACC/parse-cache-construct.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3d2e6a0eb0c3ff0a189c308b689491aec2a5869e",
      "new_mode": 33188,
      "new_path": "clang/test/SemaOpenACC/cache-construct-ast.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0a32754c82710d88e2c614424b2395c43cb739ba",
      "new_mode": 33188,
      "new_path": "clang/test/SemaOpenACC/cache-construct.cpp"
    },
    {
      "type": "modify",
      "old_id": "479490442f3c8fb973a25790ffd48b8661467c36",
      "old_mode": 33188,
      "old_path": "clang/tools/libclang/CIndex.cpp",
      "new_id": "dba5516cec88cd8edd19c61e60b7f3c364f4968e",
      "new_mode": 33188,
      "new_path": "clang/tools/libclang/CIndex.cpp"
    },
    {
      "type": "modify",
      "old_id": "0810c38bb751ba787ff966b12a9e00e8b730fea3",
      "old_mode": 33188,
      "old_path": "clang/tools/libclang/CXCursor.cpp",
      "new_id": "1d151201060174bacd80a8bdc21176bff2d23281",
      "new_mode": 33188,
      "new_path": "clang/tools/libclang/CXCursor.cpp"
    }
  ]
}
