)]}'
{
  "commit": "3ec6b84545c594625bf2277ddf01493e98c02c15",
  "tree": "b5d394c08bb4f843e7f82ba3d820d263c8ae324a",
  "parents": [
    "0a799bd4256f5da5b86d00991bc46ee05f6e3c48"
  ],
  "author": {
    "name": "Eric Fiselier",
    "email": "eric@efcs.ca",
    "time": "Mon Aug 29 20:43:38 2016 +0000"
  },
  "committer": {
    "name": "Eric Fiselier",
    "email": "eric@efcs.ca",
    "time": "Mon Aug 29 20:43:38 2016 +0000"
  },
  "message": "Fix or suppress GCC warnings during build.\n\nSummary:\nCurrently a number of GCC warnings are emitted when building libc++. This patch fixes or ignores all of them. The primary changes are:\n\n* Work around strict aliasing issues in `typeinfo::hash_code()` by using __attribute__((may_alias)). However I think a non-aliasing `hash_code()` implementation is possible. Further investigation needed.\n* Add `_LIBCPP_UNREACHABLE()` to switch in `strstream.cpp` to avoid -Wpotentially-uninitialized.\n* Fix -Wunused-value warning in `__all` by adding a void cast.\n* Ignore -Wattributes for now. There are a number of real attribute issues when using GCC but enabling the warning is too noisy.\n* Ignore -Wliteral-suffix since it warns about the use of reserved identifiers. Note Only GCC 7.0 supports disabling this warning.\n* Ignore -Wc++14-compat since it warns about the sized new/delete overloads.\n\n\n\nReviewers: EricWF\n\nDifferential Revision: https://reviews.llvm.org/D24003\n\ngit-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@280007 91177308-0d34-0410-b5e6-96231b3b80d8\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "64c6c31c48c361efb1eae91cef584af22b5e71b2",
      "old_mode": 33188,
      "old_path": "CMakeLists.txt",
      "new_id": "d0ed9df5e4928258f8d239d5590e0e53c4d2c378",
      "new_mode": 33188,
      "new_path": "CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "353ca10e4e257bb31ab5cf77ed583adfc1bde0ee",
      "old_mode": 33188,
      "old_path": "include/__config",
      "new_id": "bd3f59a27c5ac39c1474d41e7fd96b8abc80ee8b",
      "new_mode": 33188,
      "new_path": "include/__config"
    },
    {
      "type": "modify",
      "old_id": "6d978a2dcc21de548bd17f2e4e5c418d94c38024",
      "old_mode": 33188,
      "old_path": "include/__tuple",
      "new_id": "caa427aa5fea146b887b155a9cdea9bb57b2aa0c",
      "new_mode": 33188,
      "new_path": "include/__tuple"
    },
    {
      "type": "modify",
      "old_id": "10ed231078d8da08ddaf26129d9d2bb86ff5897c",
      "old_mode": 33188,
      "old_path": "include/cstdlib",
      "new_id": "9a775b844846db157a46e70a638ca20bcbe48cf9",
      "new_mode": 33188,
      "new_path": "include/cstdlib"
    },
    {
      "type": "modify",
      "old_id": "fe9123e82e6d9327af6afee6306dade36fe8a62a",
      "old_mode": 33188,
      "old_path": "include/typeinfo",
      "new_id": "d3155e459b93d6e94fa410cba113a58eb36442e1",
      "new_mode": 33188,
      "new_path": "include/typeinfo"
    },
    {
      "type": "modify",
      "old_id": "0e2d7ff21bb97f0cf0d9751f3cb0b1ef858dcb24",
      "old_mode": 33188,
      "old_path": "src/strstream.cpp",
      "new_id": "be94f9c89e837296c77e108623a27f51bc98abda",
      "new_mode": 33188,
      "new_path": "src/strstream.cpp"
    }
  ]
}
