)]}'
{
  "log": [
    {
      "commit": "2214a1ce1753e19799a3c559f9e6bc9854052975",
      "tree": "2e8a95fdb20a84df569f98ecd59ff274253e682f",
      "parents": [
        "85ef3b5b80da353afa24d0ab21c35be01951e0b7"
      ],
      "author": {
        "name": "m4tx",
        "email": "m4tx@m4tx.pl",
        "time": "Sun Sep 14 16:41:31 2014 +0200"
      },
      "committer": {
        "name": "m4tx",
        "email": "m4tx@m4tx.pl",
        "time": "Sun Sep 14 16:41:31 2014 +0200"
      },
      "message": "Fix filename in comment in cmath\n\nIt looks like the file comment was copy-pasted from ctime. Fixed filename in comment to \"math.h\".\n\nChange-Id: I27b0c2a7827076a91fc7b63913fad6eee4d6a79e\nSigned-off-by: m4tx \u003cm4tx@m4tx.pl\u003e\n"
    },
    {
      "commit": "ae558d6b4bcee740f7e61434982eb5f2c999fb97",
      "tree": "443b26ce7513f9ee430e4f639c5436fd11dbc9a5",
      "parents": [
        "a4a8c4feb8cf3cebf8aceace70e699e128095b5c"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Aug 25 12:08:19 2014 -0700"
      },
      "committer": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Aug 25 21:16:14 2014 +0000"
      },
      "message": "Add standard throw() spec to delete operators.\n\nWithout these specs, clang will reports mismatch between standard definitions and these declarations/definitions. These specs are ignored when compiled with -fno-exceptions.\n\nBUG: 17136236\nChange-Id: I386c712a61dc4fc74dfde45f9ec2d3d037f2e9f1"
    },
    {
      "commit": "fd5ee9aebc0a43c7f36a0778c7f416b39ddb870e",
      "tree": "bfbf039f3d95eeb4be2da89a325317e422fcc383",
      "parents": [
        "2b6cdb5e459661727c99e81660c7c3df5cdbe024"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Aug 15 14:20:04 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Aug 18 12:01:01 2014 -0700"
      },
      "message": "Hide C++ stuff in libc. Put it back in libstdc++.\n\nBug: 17062445\nChange-Id: I027b186719654c2865b08c3fa83f90fa00c1e838\n"
    },
    {
      "commit": "f4c1a36a4500bc7f12e3065be3da4e8669ee011d",
      "tree": "22654356b6c7febe5ad131e6bd4f9f13c3818d21",
      "parents": [
        "2b591b37420b4186bda7fa823b9058d4b19565f6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 29 16:43:55 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 29 16:57:47 2014 -0700"
      },
      "message": "Remove declarations for things that don\u0027t exist.\n\nThe \u003cgrp.h\u003e ones prevent gdb from building out of the box.\n\nChange-Id: I0efbffad2215cfcd75b4d442dfc972444b51d97c\n"
    },
    {
      "commit": "3758a244cf758046b40f630a11aed41e68c9cfc2",
      "tree": "0865c62cfa06f9d0c6d5d3c5406835a5cced92b2",
      "parents": [
        "4d421901e587fd1563da94baf59b015017c01b91"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 22 21:24:47 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jul 22 21:29:00 2014 -0700"
      },
      "message": "Fix a couple of bugs in generate-NOTICE and regenerate the NOTICE files.\n\nChange-Id: Id6fcb74292e661504d0758bfce24abdc18cb8d32\n"
    },
    {
      "commit": "15581383153c5da29befb7f5cdc30bc21e9da54b",
      "tree": "faac05b43d3e17c3ada6fda63e5cd6d3a8a61fc1",
      "parents": [
        "2b2916d15458671babed9e250b4d98f1980a976d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 07 15:42:06 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jul 07 15:42:06 2014 -0700"
      },
      "message": "Regenerate the bionic NOTICE files.\n\nAlso fix a few formatting issues in copyright headers that were confusing\nthe script (though obviously it would be better if the script were smarter).\n\nChange-Id: I7f561bef4f84fdcbd84f375ee226bd65db0e507b\n"
    },
    {
      "commit": "9635046e53e14ff44348853a9cacdffd444b35ae",
      "tree": "9f2a9c023d1e981cedc9811e25035f82783c092c",
      "parents": [
        "1ef3ba2b4fd2408cdd78828ec2930ce31ce8cee7"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Jun 17 23:31:21 2014 +0000"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Jun 17 17:37:06 2014 -0700"
      },
      "message": "Hide declaration of gets(3) for C11 and later.\n\ngets(3) was removed from C11.\n\nThis reverts commit 1291680c2a0c23b2163198d27e00261ca206298b.\n\nBug: 14500800\nChange-Id: I5e5146bdbb80f2be818a17f287b112bab37d1f6d\n"
    },
    {
      "commit": "1291680c2a0c23b2163198d27e00261ca206298b",
      "tree": "e4b34e6e1b1d2c8e182e5afa18651870779b5665",
      "parents": [
        "c0ce5908277a9bf18628946629dba4277e9a2281"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Jun 17 23:23:59 2014 +0000"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Jun 17 23:28:38 2014 +0000"
      },
      "message": "Revert \"Hide declaration of gets(3) for C11 and later.\"\n\nBreaks stlport. checkbuild lied to me?\n\nThis reverts commit c0ce5908277a9bf18628946629dba4277e9a2281.\n\nChange-Id: I72fb21aba7eaea96a7c3208236fd03411527fa5e"
    },
    {
      "commit": "c0ce5908277a9bf18628946629dba4277e9a2281",
      "tree": "202bb9620430a58b0899a7948c36dc4be3cad272",
      "parents": [
        "b656410a73c4dfa2a3f8deba0a673080320f8605"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Jun 17 15:33:31 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Jun 17 15:52:07 2014 -0700"
      },
      "message": "Hide declaration of gets(3) for C11 and later.\n\ngets(3) was removed from C11.\n\nChange-Id: I4040a8a6c6d5d2a86878e8a80ca67964fbbb82a8\n"
    },
    {
      "commit": "15b641a26731a7e42455c3ed22e1e9bdf31ea79c",
      "tree": "c06577c257be144af1d59f9f23e1f1117b22c3aa",
      "parents": [
        "bc7f8a791b4a510914fd5cac713415acb80fb806"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 18:18:55 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 18:18:55 2014 -0700"
      },
      "message": "Move libstdc++ into libc.\n\nThe Android build system always links against libstdc++.so anyway. Having\noperator new and operator delete in a separate library means we can\u0027t use\nconstructors and destructors on heap-allocated objects inside the C library,\nwhich is quite an unfortunate limitation.\n\nThis will be cheaper too; on LP64 we can stop linking against the [now empty]\nlibstdc++.so giving the dynamic linker one less library to worry about for\nevery process.\n\nThere\u0027s precedent too --- we already have no libpthread or librt.\n\nFor now I\u0027m leaving the include files where they are, and I\u0027m generating a\ndummy libstdc++.so and libstdc++.a. We can come back and clean that up later\nif all goes well.\n\nBug: 13367666\nChange-Id: I6f3e27ea7c30d03d6394965d0400c9dc87fa83db\n"
    },
    {
      "commit": "240f1e2940e7e23811ec091d3dc354550a13a385",
      "tree": "0e3587ce2aba99ba938ab6d9df9057efb3d0538c",
      "parents": [
        "d4bc9ef83b36916d5e63c4c3e4a092381473ea52"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 18 12:02:37 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 18 12:02:37 2014 -0800"
      },
      "message": "Clean up warnings in libstdc++.\n\nChange-Id: Ie71a2fdf227e7a5fc9a446bb1be110da9b3a4280\n"
    },
    {
      "commit": "eb847bc8666842a3cfc9c06e8458ad1abebebaf0",
      "tree": "15e070fb706ba7599d5f402a8f934a7399541a6a",
      "parents": [
        "0c17099a71cb5d1b36b7aab66fd7341b3fc9106d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 09 15:50:50 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Oct 09 16:00:17 2013 -0700"
      },
      "message": "Fix x86_64 build, clean up intermediate libraries.\n\nThe x86_64 build was failing because clone.S had a call to __thread_entry which\nwas being added to a different intermediate .a on the way to making libc.so,\nand the linker couldn\u0027t guarantee statically that such a relocation would be\npossible.\n\n  ld: error: out/target/product/generic_x86_64/obj/STATIC_LIBRARIES/libc_common_intermediates/libc_common.a(clone.o): requires dynamic R_X86_64_PC32 reloc against \u0027__thread_entry\u0027 which may overflow at runtime; recompile with -fPIC\n\nThis patch addresses that by ensuring that the caller and callee end up in the\nsame intermediate .a. While I\u0027m here, I\u0027ve tried to clean up some of the mess\nthat led to this situation too. In particular, this removes libc/private/ from\nthe default include path (except for the DNS code), and splits out the DNS\ncode into its own library (since it\u0027s a weird special case of upstream NetBSD\ncode that\u0027s diverged so heavily it\u0027s unlikely ever to get back in sync).\n\nThere\u0027s more cleanup of the DNS situation possible, but this is definitely a\nstep in the right direction, and it\u0027s more than enough to get x86_64 building\ncleanly.\n\nChange-Id: I00425a7245b7a2573df16cc38798187d0729e7c4\n"
    },
    {
      "commit": "8f2a5a0b40fc82126c691d5c30131d908772aab7",
      "tree": "0b29a5dc82395c076387edb5af9ca271a91264c0",
      "parents": [
        "e23ed8c6441389a79c6504295184f7249e01a197"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 15 15:30:25 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 15 16:12:58 2013 -0700"
      },
      "message": "Clean up internal libc logging.\n\nWe only need one logging API, and I prefer the one that does no\nallocation and is thus safe to use in any context.\n\nAlso use O_CLOEXEC when opening the /dev/log files.\n\nMove everything logging-related into one header file.\n\nChange-Id: Ic1e3ea8e9b910dc29df351bff6c0aa4db26fbb58\n"
    },
    {
      "commit": "32dbc03c73dc1f9d1fcd072086d894a9eb25aecd",
      "tree": "cd9ba7f5de95b4435c6eb99695ba15246806d9de",
      "parents": [
        "fe43c768ec803a1febde0424bb5e69c343dd7ae9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 15 15:43:13 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Aug 15 15:43:13 2012 -0700"
      },
      "message": "Regenerate all NOTICE files with the latest version of the script.\n\nThis sorts every entry, so we should have more stability and fewer\nmerge conflicts in future.\n\nChange-Id: Ifc5347dc53352da22c82d41ca59b483966fcfc6b\n"
    },
    {
      "commit": "ae5c64413bf72bc18d7fc81e1f5761824bc01f49",
      "tree": "910859328e35be8af64308ad002b0d290bc738f1",
      "parents": [
        "66fba00991f03d07c72f809d033b88748f839bda"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Aug 13 14:06:05 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Aug 13 14:06:05 2012 -0700"
      },
      "message": "Add dependencies on all the makefiles.\n\nThis should help prevent broken builds next time I\u0027m messing with\nassembler/compiler/linker flags...\n\nChange-Id: I30f15a3ce3c3f3c60cad7bc59aaba9f42d792224\n"
    },
    {
      "commit": "387d4b7de9af2afd0c37a895ff9d012eb1f66156",
      "tree": "a515a4be8d2881d734a6b1c2a2e4f1fdd0c43e1d",
      "parents": [
        "709bb0f79ced522e5fb145182472ee4063b85368"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Aug 09 15:17:46 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Aug 09 16:05:31 2012 -0700"
      },
      "message": "Auto-generate a complete NOTICE file.\n\nRemove the hand-collated ones, and switch to a script that pulls the\ncopyright headers out of every file and collects the unique ones.\n\nChange-Id: Ied3b98b3f56241df97166c410ff81de4e0157c9d\n"
    },
    {
      "commit": "52d6233296ec84eb5b58fcbf7bc9da4b96a943aa",
      "tree": "b0186ce62c2aedc309501f0bfc641a291d91d3e6",
      "parents": [
        "a7916509a3446afd0e863b03e4204cee73e81555"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 27 17:40:29 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jul 27 17:43:38 2012 -0700"
      },
      "message": "Report errors to the log, not just stderr.\n\nIn particular this affects assert(3) and __cxa_pure_virtual, both of\nwhich have managed to confuse people this week by apparently aborting\nwithout reason. (Because stderr goes nowhere, normally.)\n\nBug: 6852995\nBug: 6840813\nChange-Id: I7f5d17d5ddda439e217b7932096702dc013b9142\n"
    },
    {
      "commit": "762a4fe2eed6a36b14d3b378c2974ad355d97d54",
      "tree": "a430b718a10128db36185033de5d2c30f87a6ff5",
      "parents": [
        "f848321c4feb0a8b194a2148c3a9d6d65280f924",
        "35d592cc5ac72b851bc2bfb66b159cd62c68a634"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 16 14:40:26 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 16 14:40:26 2012 -0700"
      },
      "message": "resolved conflicts for merge of 35d592cc to master\n\nChange-Id: I8184302daf61814d26c837f9920b4e68d96d7f65\n"
    },
    {
      "commit": "ee18fb4aacc9b67b397a0b000dda6e350ad5b3f0",
      "tree": "1b0359779dc381a7f2cf91220c5318ba2e4b87b9",
      "parents": [
        "6bc18fa58849a4307cf6ddcfd526d9258e8175fc"
      ],
      "author": {
        "name": "Fengwei Yin",
        "email": "fengwei.yin@intel.com",
        "time": "Wed Mar 28 17:25:17 2012 +0800"
      },
      "committer": {
        "name": "Jack Ren",
        "email": "jack.ren@intel.com",
        "time": "Mon Apr 16 14:20:30 2012 +0800"
      },
      "message": "libstdc++: Fix x86 thread-safe one-time-construction implementation.\n\nThe root of the problem is that the existing implementation is based on the\nARM C++ ABI, which mandates a different guard variable layout than the\nItanium/x86 C++ one.\n\nThis patch modifies the implementation in a way that satisfies both ABIs (and\ndoesn\u0027t require changing the toolchains).\n\nChange-Id: I885e9adc7f088b9c0a78355bd752f1e6aeec9f07\nSigned-off-by: Fengwei Yin \u003cfengwei.yin@intel.com\u003e\nSigned-off-by: Jack Ren \u003cjack.ren@intel.com\u003e\nSigned-off-by: Bruce Beare \u003cbruce.j.beare@intel.com\u003e\n"
    },
    {
      "commit": "e31bfae2baa96742f998155ee26e56c826a8ce3a",
      "tree": "b12cfb44ad035c26278f42fa9b19095e90b79e95",
      "parents": [
        "8180b08fb2f27052f9df2ae4787bb5bf409f13e0"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Tue Nov 15 15:47:02 2011 +0100"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Wed Nov 16 16:28:10 2011 +0100"
      },
      "message": "bionic: Do not use \u003csys/atomics.h\u003e for platform code.\n\nWe\u0027re going to modify the __atomic_xxx implementation to provide\nfull memory barriers, to avoid problems for NDK machine code that\nlink to these functions.\n\nFirst step is to remove their usage from our platform code.\nWe now use inlined versions of the same functions for a slight\nperformance boost.\n\n+ remove obsolete atomics_x86.c (was never compiled)\n\nNOTE: This improvement was benchmarked on various devices.\n      Comparing a pthread mutex lock + atomic increment + unlock\n      we get:\n\n  - ARMv7 emulator, running on a 2.4 GHz Xeon:\n       before: 396 ns    after: 288 ns\n\n  - x86 emulator in KVM mode on same machine:\n       before: 27 ns     after: 27 ns\n\n  - Google Nexus S, in ARMv7 mode (single-core):\n       before: 82 ns     after: 76 ns\n\n  - Motorola Xoom, in ARMv7 mode (multi-core):\n       before: 121 ns    after: 120 ns\n\nThe code has also been rebuilt in ARMv5TE mode for correctness.\n\nChange-Id: Ic1dc72b173d59b2e7af901dd70d6a72fb2f64b17\n"
    },
    {
      "commit": "7c72513bfa2a10f48e3205e7d8bf66f6ee1a7082",
      "tree": "cb3a3a0498560224a923bbf912b90062cc3bdd09",
      "parents": [
        "b127b1f208e67d74a7ee94ad2bd0ffb2fed3af6b"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Tue Jun 14 21:58:55 2011 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@android.com",
        "time": "Tue Jun 14 21:58:55 2011 +0200"
      },
      "message": "libstdc++: make operator new call abort on failure.\n\nThis change ensures that operator new will call abort() in case\nof memory allocation failure. Note that due to our usage of memory\novercommit, this can only happen under very rare circumstances\n(i.e. trying to allocate memory larger than the larger free range\nof virtual address space, or when memory is corrutped in various\nways).\n\nChange-Id: I128b8bf626216e899c22a00f24492cd148a1fc94\n"
    },
    {
      "commit": "1aa6708cc2b7792a647ada960a66a1e0146fb209",
      "tree": "5508a8b1b3137bc9ef874959c99476aca60db4d5",
      "parents": [
        "b8d2233e8abc30f33be7d7acc7f3ef6e6aabebac"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Mon Oct 11 15:27:39 2010 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Mon Oct 11 15:27:39 2010 +0200"
      },
      "message": "Fix the build. Oops.\n\n(We remove the declaration for on_exit() from the C library headers,\nso do the same for the C++ \u003ccstdlib\u003e)\n\nChange-Id: I31a21d5643068cd160724908dd8156863a44d95a\n"
    },
    {
      "commit": "d466780c7cedb41edcf13f28ad900556c6aaa5b2",
      "tree": "cbbc780df9598adb5788824075f2519c54f22fff",
      "parents": [
        "519763265ec0b634bd9c264a0aca034882458ecc"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jun 11 13:18:41 2010 -0700"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Wed Jul 07 14:18:20 2010 -0700"
      },
      "message": "Add missing SMP barriers to libstdc++\n\nChange-Id: I20a8dcd2e3316ac60237e800c682cacc8e59e187\n"
    },
    {
      "commit": "0621a279adfb981ea1f0564e7fc8280cda78e043",
      "tree": "9763ca0fde6d2ece1ba2e19a3146a9c9f905b195",
      "parents": [
        "fa5755ae980b6f4ac5df37b263ba20f472db31ca"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jun 25 16:53:37 2010 -0700"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jun 25 16:53:37 2010 -0700"
      },
      "message": "libstdc++: use extern \"C++\" in all our C++ system headers.\n\nThis is needed to build an independent toolchain with g++ that doesn\u0027t think\nthat all these headers are in C.\n\nChange-Id: Ie9a8ccfcab7780d6a4e5722777d61c2b1b312001\n"
    },
    {
      "commit": "8f92500fa93d174d077af28d8af3e3cb732e0aff",
      "tree": "8dbb819efaf6b071dab7467dd23d8db15aa59ec6",
      "parents": [
        "95604529ec25fe7923ba88312c590f38aa5e3d9e"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Jan 30 22:26:30 2010 -0200"
      },
      "committer": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Jan 30 22:26:30 2010 -0200"
      },
      "message": "optimize delete/delete[] operators by removing unneeded branch\n\nRemove redundant not NULL check already done in free().\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\n"
    },
    {
      "commit": "194d3fa048cf909ca592dd56fa538dc9cd3f5ddb",
      "tree": "3a00bb9e267cf952d7d1140ff9a39ca07ee6c994",
      "parents": [
        "fde8642fc43bdd224e43e5ee9583a49a758fb03c"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Nov 12 18:45:14 2009 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Nov 12 18:45:14 2009 -0800"
      },
      "message": "eclair snapshot\n"
    },
    {
      "commit": "348065586a2e6154d6cff36afa6e00af6bbc5918",
      "tree": "20ad478d6e6cd40db0625fc2b31403aabc9d791e",
      "parents": [
        "db4616b2d3234a1916cafb48e65c50cf302afcde"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jul 10 12:23:09 2009 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jul 10 18:40:55 2009 +0200"
      },
      "message": "Add new C++ headers \u003ccerrno\u003e and \u003ccfloat\u003e\n\nAlso add std::malloc/realloc/calloc/free to \u003ccstdlib\u003e\nRename \u003ccwchar_is_not_supported\u003e to \u003ccwchar\u003e\n"
    },
    {
      "commit": "8169573c8744ee3a484ea74bd5e06a8a4f708e37",
      "tree": "bb3a8c126cedbdd584a96faeb50e8ea19b9f3ba8",
      "parents": [
        "d386afcc41e92c96778d9b1a498199f48fa2d4aa"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Mon May 18 23:23:32 2009 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Mon May 18 23:34:13 2009 +0200"
      },
      "message": "Add \u003ccmath\u003e standard C++ header.\nThis is needed for upcoming STLport experimentation.\n"
    },
    {
      "commit": "89b62a18a00f89b0b5f215a1f461aa432421fb63",
      "tree": "84ee971b987d2208048c41fb7e5eafa5364c25cd",
      "parents": [
        "00a18f62a7c97299cea017578ec7ec179215492b"
      ],
      "author": {
        "name": "Niko Catania",
        "email": "",
        "time": "Fri Apr 10 10:51:53 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Apr 10 10:51:53 2009 -0700"
      },
      "message": "AI 145714: Added cstring wrapper around string.h.\n  In new, include cstddef which declares std::size_t.\n  BUG\u003d1601432\n\nAutomated import of CL 145714\n"
    },
    {
      "commit": "00a18f62a7c97299cea017578ec7ec179215492b",
      "tree": "fbe60e1001658ca6848940d460664a56f8949865",
      "parents": [
        "88f8a4ab8534cb21280f8aa0bf557f81ba4e31fa"
      ],
      "author": {
        "name": "Niko Catania",
        "email": "",
        "time": "Wed Apr 08 09:01:36 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Apr 08 09:01:36 2009 -0700"
      },
      "message": "AI 145059: (Almost) final set of wrapper around the C headers for stdc++ and their tests.\n  The only one left is cstring.\n  * bionic/libstdc++/include/cstdlib:\n  * bionic/libstdc++/include/cstdio:\n  * bionic/libstdc++/include/cstdint:\n  * bionic/libstdc++/include/csignal:\n  * bionic/libstdc++/include/csetjmp:\n  Added header file.\n  Checks the bionic headers file were picked up instead of the host ones.\n  Added test for new header files\n  * system/extras/tests/bionic/libstdc++/Android.mk:\n  Added tests for the new header files.\n  EXTRA_CFLAGS: include the bionic header files.\n  BUG\u003d1601432\n\nAutomated import of CL 145059\n"
    },
    {
      "commit": "88f8a4ab8534cb21280f8aa0bf557f81ba4e31fa",
      "tree": "bfc1a22ade4bb5469f0bf80ff69dce20f4c36799",
      "parents": [
        "416ceb861c4daf1bc36809e007ae245814794bd0"
      ],
      "author": {
        "name": "Niko Catania",
        "email": "",
        "time": "Thu Apr 02 09:31:46 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Apr 02 09:31:46 2009 -0700"
      },
      "message": "AI 144236: Added new C to stdc++ header files: cassert, cctype, climits, ctime.\n  QA Impact:None\n  BUG\u003d1601432\n\nAutomated import of CL 144236\n"
    },
    {
      "commit": "416ceb861c4daf1bc36809e007ae245814794bd0",
      "tree": "1e94a93cd2f438fa39283754454b950bc248b688",
      "parents": [
        "a43b482c5415c0bdeb3ac47441e966ee1f071365"
      ],
      "author": {
        "name": "Niko Catania",
        "email": "",
        "time": "Mon Mar 30 12:50:56 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Mar 30 12:50:56 2009 -0700"
      },
      "message": "AI 143504: Completed cstddef to be non empty and similar to the gnu stl implementation.\n  Even if we don\u0027t want to have a bloated stl implementation, having empty\n  files around is probably not very good either.\n  Added a test to make sure the header file compiles on host and kila-eng.\n  QA Impact: In system/extras/test/bionic/libstdc++ build the tests using:\n  mm BIONIC_TESTS\u003d1\n  to build the host and target tests.\n  BUG\u003d1601432\n\nAutomated import of CL 143504\n"
    },
    {
      "commit": "1dc9e472e19acfe6dc7f41e429236e7eef7ceda1",
      "tree": "3be0c520fae17689bbf5584e1136fb820caef26f",
      "parents": [
        "1767f908af327fa388b1c66883760ad851267013"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:28:35 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:28:35 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "1767f908af327fa388b1c66883760ad851267013",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [
        "a799b53f10e5a6fd51fef4436cfb7ec99836a516"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:13 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:13 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "4e468ed2eb86a2406e14f1eca82072ee501d05fd",
      "tree": "4e05b3c66eef86531e464521a3bf96a1864d4bf5",
      "parents": [
        "a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Dec 17 18:03:48 2008 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Dec 17 18:03:48 2008 -0800"
      },
      "message": "Code drop from //branches/cupcake/...@124589\n"
    },
    {
      "commit": "a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349",
      "tree": "defd1cc07d16ad2f3b21154114e092d11c94c5bb",
      "parents": [],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "message": "Initial Contribution\n"
    }
  ]
}
