)]}'
{
  "commit": "93cc2d3fa6bdcc7dc580e3382ea40e19feb7f004",
  "tree": "a1ebeb3f542db3ecf599b45b46e70ae6972b7a2d",
  "parents": [
    "e58da9d205c9c6590e04280e74002fded1b27023"
  ],
  "author": {
    "name": "Sylvain Defresne",
    "email": "sdefresne@chromium.org",
    "time": "Thu Jul 31 17:04:02 2025 +0200"
  },
  "committer": {
    "name": "GN LUCI",
    "email": "gn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu Jul 31 09:20:03 2025 -0700"
  },
  "message": "[Apple] Fix `gn gen` when using swift and no_stamp_files\n\nWhen using swift source files, the outputs cannot be derived from\nthe sources (due to the \"whole module optimisation\" model). This\ncaused `gn gen` to fail an assertion when using no_stamp_files\nand whole module optimisation.\n\nWithout this change, generating the build for the sample project\n(in //examples/ios) would fail like this:\n\n  $ ../../out/gn gen out\n  [...:FATAL:ninja_c_binary_target_writer.cc(539)]\n  Check failed: swiftmodule-\u003ehas_dependency_output().\n\n  [...:FATAL:ninja_target_writer.cc(626)]\n  Check failed: files.empty().\n\n  [...:FATAL:ninja_c_binary_target_writer.cc(539)]\n  Check failed: swiftmodule-\u003ehas_dependency_output().\n\nFix this by ensuring HasRealInputs() returns true when the source_set\ncontains any swift source files.\n\nBug: none\nChange-Id: Icb748717e1bcb301e3e32fdbba5293f2d09ad69d\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/19580\nCommit-Queue: Sylvain Defresne \u003csdefresne@chromium.org\u003e\nReviewed-by: Takuto Ikuta \u003ctikuta@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6cb5572a04ced242699bc8f09e432dc9892a52c0",
      "old_mode": 33188,
      "old_path": "src/gn/target.cc",
      "new_id": "1ea129855c5d14c4f9862d5333dbd3d9bdc0d6cd",
      "new_mode": 33188,
      "new_path": "src/gn/target.cc"
    }
  ]
}
