Message ID | cover.1725115143.git.alx@kernel.org |
---|---|
Headers | show |
Series | c: Add __nelementsof__ operator | expand |
Hi! On Sat, Aug 31, 2024 at 04:56:28PM GMT, Alejandro Colomar wrote: > Hi! > > v12 changes: > > - Fix typo in changelog entry. > > For ISO C2y, I'm proposing either nelementsof() or a contracted version > of that name. However, since in GCC we want an uglified name that > already takes four characters for the __*__, I think this long name > makes sense. See also: > <https://inbox.sourceware.org/gcc/ewksn7n5blrzhvy565ztxnt2pagxy4rdhuq2i4k6beqsimoqgw@74wy7erikpwt/1.2-elementsof.pdf> > > The WG14 discussion seems to have settled, and while the exact name > isn't yet clear, there seems to be rough consensus on something derived > from "number of elements of" (with some votes for "lenght", but not so > many), and the rest of the properties of the operator don't seem to be > questioned. > > Martin, Joseph, can you please review and merge? Thanks! WG14 (the C standard committee) has voted this feature yesterday. A few things to note: - The semantics are accepted exactly as implemented here. - There was divided consensus on the question "Should the name derive from 'number of elements' or 'count' (5 votes) or from something else including mainly length (8 votes) with some abstentions. After that poll, there was another to choose between 'length' or something else, and there was an overwhelming majority to prefer 'length' over anything else. However, that still leaves 'length' vs 'number of elements'/'count' with only a small difference in votes, which I'm not entirely happy with. I will resend this patch with only renaming the operator to lengthof. Have a lovely day! Alex > > Have a lovely day! > Alex > > Alejandro Colomar (4): > contrib/: Add support for Cc: and Link: tags > gcc/: Rename array_type_nelts() => array_type_nelts_minus_one() > Merge definitions of array_type_nelts_top() > c: Add __nelementsof__ operator > > contrib/gcc-changelog/git_commit.py | 5 +- > gcc/c-family/c-common.cc | 26 ++++ > gcc/c-family/c-common.def | 3 + > gcc/c-family/c-common.h | 2 + > gcc/c/c-decl.cc | 32 +++-- > gcc/c/c-fold.cc | 7 +- > gcc/c/c-parser.cc | 62 +++++++-- > gcc/c/c-tree.h | 4 + > gcc/c/c-typeck.cc | 118 +++++++++++++++- > gcc/config/aarch64/aarch64.cc | 2 +- > gcc/config/i386/i386.cc | 2 +- > gcc/cp/cp-tree.h | 1 - > gcc/cp/decl.cc | 2 +- > gcc/cp/init.cc | 8 +- > gcc/cp/lambda.cc | 3 +- > gcc/cp/operators.def | 1 + > gcc/cp/tree.cc | 13 -- > gcc/doc/extend.texi | 30 +++++ > gcc/expr.cc | 8 +- > gcc/fortran/trans-array.cc | 2 +- > gcc/fortran/trans-openmp.cc | 4 +- > gcc/rust/backend/rust-tree.cc | 13 -- > gcc/rust/backend/rust-tree.h | 2 - > gcc/target.h | 3 + > gcc/testsuite/gcc.dg/nelementsof-compile.c | 115 ++++++++++++++++ > gcc/testsuite/gcc.dg/nelementsof-vla.c | 46 +++++++ > gcc/testsuite/gcc.dg/nelementsof.c | 150 +++++++++++++++++++++ > gcc/tree.cc | 17 ++- > gcc/tree.h | 3 +- > 29 files changed, 604 insertions(+), 80 deletions(-) > create mode 100644 gcc/testsuite/gcc.dg/nelementsof-compile.c > create mode 100644 gcc/testsuite/gcc.dg/nelementsof-vla.c > create mode 100644 gcc/testsuite/gcc.dg/nelementsof.c > > Range-diff against v11: > 1: 2e851b8f8d2 ! 1: d7fca49888a contrib/: Add support for Cc: and Link: tags > @@ Commit message > > contrib/ChangeLog: > > - * gcc-changelog/git_commit.py: (GitCommit): > + * gcc-changelog/git_commit.py (GitCommit): > Add support for 'Cc: ' and 'Link: ' tags. > > Cc: Jason Merrill <jason@redhat.com> > 2: d582d12adb8 = 2: e65245ac294 gcc/: Rename array_type_nelts() => array_type_nelts_minus_one() > 3: 34d14beb7da = 3: 03de2d67bb1 Merge definitions of array_type_nelts_top() > 4: 49b8d51db4a = 4: 4373c48205d c: Add __nelementsof__ operator > > base-commit: 9cbcf8d1de159e6113fafb5dc2feb4a7e467a302 > prerequisite-patch-id: 3bb58e302e54b35e987452de2e3cb6da7f6917ce > prerequisite-patch-id: 090612df745c5ed878a75175606ce1deabf61cb0 > prerequisite-patch-id: c3a80d94c326f7402bdf46049c434e809a9f376e > prerequisite-patch-id: 883007acf6a47f51128798dc952895854b40e1ff > prerequisite-patch-id: 93e211483ce2b939ce5e549de78e9ac4606bb114 > prerequisite-patch-id: 008f55a1dc4b0a2551e4682b3319a3b0df86c72e > prerequisite-patch-id: be6ecc95f5fcf2fe9ac44263e6eae8a69068ee53 > prerequisite-patch-id: e64a9e239738ff1af9753893372bb0fff907d8e6 > prerequisite-patch-id: 22cc97d05ab08735db2341f5062c737f9cff9209 > prerequisite-patch-id: 9e9756ca0458d4f6f162229e5ffe5923ffceb9d7 > prerequisite-patch-id: 9d64d075010c059eaceb2fb2326d48f6a8798950 > prerequisite-patch-id: be2e5a5deb6836b4715e4715cddd03018d2f3346 > prerequisite-patch-id: a627d18e62fc98b7ccf11b31b0dc885a52994795 > prerequisite-patch-id: 39aea8b15f043ab5e2804a6e127d2fe5108d814b > prerequisite-patch-id: 8cb26809cc4de24fe408e71a468fbc278241faab > prerequisite-patch-id: 1b0dd932c7637d953a7b7086aa5625287df6c79a > prerequisite-patch-id: 0bb1888a37e3537ba48e69ac378b7b3e41453949 > prerequisite-patch-id: 79657c31c616c9bf477ec015a4ccb94f298193c0 > prerequisite-patch-id: 2506a44e9d695cffa4c710176092c30392037103 > prerequisite-patch-id: da4a114bc9bef4aafb816328f1674b5f85818753 > prerequisite-patch-id: f4a32714d46e022356759a3fb305a8827ef565e9 > prerequisite-patch-id: 08a6388b590804ab3f8da8c03d953e88428228e9 > prerequisite-patch-id: 37fb8203174274fa9e3054ba0d83ff41dd9ba206 > prerequisite-patch-id: 5a6559b661dd999abf5d5b0a40309636faa3504e > prerequisite-patch-id: a66c0ace262f24e19546e0669fecd0bbb6c4b4bf > prerequisite-patch-id: de6b8f05d41b61f29fc517883fafdf89aada7de9 > prerequisite-patch-id: 4412c0ef6909608fc761b86cfb22722d862d61d0 > prerequisite-patch-id: ad452759de17adaaf82c9f30e556fb477e3b1941 > prerequisite-patch-id: 7b8615c4ad8e6c825ee192c8225e7b8f673aaeb4 > prerequisite-patch-id: 7f806ab2c8bac5b2a79fad8eef55c4190ec33d44 > prerequisite-patch-id: 84d3e86a4b573228dab7d37c3d89845ec1989723 > prerequisite-patch-id: 293a69cf606ea42badcc678f43b53f2e47aded19 > prerequisite-patch-id: 1a871a86b6c1b147ed731970f999b5d102444d1d > prerequisite-patch-id: 7798a8ca79c1f13268e3762d47861ff94d8eba02 > prerequisite-patch-id: ea12050f12ad6e1278b695f5fe345ca9bc842b1f > prerequisite-patch-id: 775ec83e6019784675e3412125ae6215b4bf045d > prerequisite-patch-id: 8cc5a6f94523c8120086dcb2217ba8168b045a3e > prerequisite-patch-id: ee9fa7eb9352555ff989551e0af040359671f3d7 > prerequisite-patch-id: 02737f65218d4b0c2766cfcf8c0fcde24ca93ac2 > prerequisite-patch-id: 4649eac88f8eb70f79e7777b7cebff4460d8cfc7 > prerequisite-patch-id: 6cba96eb4bee2e8b3b47e0bf6b21ec9fa8639480 > prerequisite-patch-id: 67691213e43b5776c999e8c0927df69be8689e14 > prerequisite-patch-id: c92d8f4dab324c8f42605d626035999cd990a18e > prerequisite-patch-id: f0a10e37287f97e915eb245d6394ad8e1115905a > prerequisite-patch-id: f67343a2b854a5f51d75200d56715b2cd10ddc9c > prerequisite-patch-id: 0d42c83260a2a02de43ad5066f76b4483703f155 > prerequisite-patch-id: 71fc9c326b88271512ee65320dcb3b3454326472 > prerequisite-patch-id: 5770267c01d4e5b5d0187445d31ee87b662fa61d > prerequisite-patch-id: 999d706f78ac4f85adbfad63adc3df03615ce716 > prerequisite-patch-id: a3a7f88920dcaec397cdce89680dd341da6b7d50 > prerequisite-patch-id: 74495be2707634e339b90ed5ad3a4c375f6b9ec2 > prerequisite-patch-id: 7be19bb7867585445b6119f6357b69f5f8baa5b8 > prerequisite-patch-id: 03efabd23ba77ba8141aa0a8f19b04f0fa6c97f1 > prerequisite-patch-id: 04a4ddcad10e249f4e8cd96ade03c16997e8f83f > prerequisite-patch-id: b0b8243418ae865a61a5f92d1da80fdbed6d23d4 > prerequisite-patch-id: 349842ef44ddca54066bdbb26d634ac24e076710 > prerequisite-patch-id: d15d4d8c4c0b6843118774fee0c8231e948779cf > prerequisite-patch-id: eff8d7df797afdd2ba6b14c1d8ec9dbdc58b5c3d > prerequisite-patch-id: 18ae20d67e1f01478d4b01981488e0a3d6864ad2 > prerequisite-patch-id: b6c162640de66eeaf8f2b470801dc3cec9d1141e > prerequisite-patch-id: fccd6815aa703114b7ea3e61b3971621316a8706 > prerequisite-patch-id: ec894a0480c8c523b9f895eea7b809b68998bbfe > prerequisite-patch-id: a408ede8ac2c69f821dd06cdad368652784e975f > prerequisite-patch-id: 31f81b5fce5e577e66c09784d24727fadce0b71b > prerequisite-patch-id: 0fa06efe4a2349a00a6e1d7ed3fcb7ededef127e > prerequisite-patch-id: e7dba9a68bc0d4481b2cebf029595bdb9f47271f > prerequisite-patch-id: 4ac7ef554fdd4c2fcceb9f5bd83e9203adaddaf3 > prerequisite-patch-id: ec0a3bc81af005d80235b38f44c227b0a1c248d2 > prerequisite-patch-id: 7083aa4a6a21ae34a8d6457791068ba419c1187d > prerequisite-patch-id: 7b3ceb60e52271be1655ab07595e1000d8734ae8 > prerequisite-patch-id: 069dd47701f5607db952e7410b66bfc4a77b907c > prerequisite-patch-id: 6de803a1b4d8dba8b403205327bff91f239a39a8 > prerequisite-patch-id: 8dfcdb9d5cdf69c54766a59a8f194af09c0840b8 > prerequisite-patch-id: f7834a2848f562a130f3d6f28a6b849723dbe18f > prerequisite-patch-id: 2f283e2b6ff758a2b1f0f4f491c962499be68f91 > prerequisite-patch-id: 7ca906fcc364ab07d6ab9b48fe8162e8006499b9 > prerequisite-patch-id: 0ef05db7ab79653ae096f50497946214bc5084b9 > prerequisite-patch-id: 1d60704d316f4b0f66d5c7e4bf17b025cf99c617 > prerequisite-patch-id: ed3314a4690d9c15bbcfee441599a58e37215877 > prerequisite-patch-id: 34ec93f88bed41db1608e214800f87fdc5a7f9f9 > prerequisite-patch-id: aca1f8cc97d88784936517c7e8050c457c77c9af > prerequisite-patch-id: b499a1bfa95368ee03daa8c7d45b3ae9c1206871 > prerequisite-patch-id: 5f1cb1245044b3ad4169500916c8b9459711416e > prerequisite-patch-id: 88e3e2e5947fbfa907213daa9ceef1651976d72f > prerequisite-patch-id: b4d4f67cd84b9ccb4c4eb48d8e7e20fc70b702ec > prerequisite-patch-id: b807936c32d4a4539a29ba56b637a3f4733713e3 > prerequisite-patch-id: 72b95ab107eb6ae60f6517410ecce24a3308fa6e > prerequisite-patch-id: 007b9853bbb41eb2d2b85fd67c1b39d58c2dcc4d > prerequisite-patch-id: e6e05315ec9827b069836b4f394099272c4b3998 > prerequisite-patch-id: cd63bd21f25dfb458c751306f1ba8fba6db43a35 > prerequisite-patch-id: 790fe51546bed957d4094668086a87009ea6bc3e > prerequisite-patch-id: c55ca764e1bde1857cab3d1c7a569172e3a60dd0 > prerequisite-patch-id: 4574efb15f6e60ba84b21718381c19faa2d06e6a > prerequisite-patch-id: 4026283a30594ccf4c5c297a45b817d7c95dcc81 > prerequisite-patch-id: 2f6425ce98f57c1833fcfc1cb963a4b00550daaa > prerequisite-patch-id: 671d4f6b289715eecf11df3b8e94e566b4e3f358 > prerequisite-patch-id: 59d20ef094471e06900a58216a35fb466e6350a6 > prerequisite-patch-id: 8f6ac7d59fcdd44f015dce5b41ca7e20ed551b17 > prerequisite-patch-id: b3f0435a6a54a62ae2b895ede265f657b2826929 > prerequisite-patch-id: 06784b4d67904e2a8eab05f652d985750aeae26a > prerequisite-patch-id: 48e9916f08c8502323eadf9595d11a3ad7cf1b0c > prerequisite-patch-id: 9c5b9353f575b545d6ba706aa33a4200dc163e1e > prerequisite-patch-id: efadc065d2991129a9fa4380ed782b9dfac9807f > prerequisite-patch-id: 5a3e46fd6d5f1324a307bd01656993131644e59d > prerequisite-patch-id: 40be26b80ff47971946da8ccca6574333b4ac511 > prerequisite-patch-id: 249d8bc2c8226ea94c27e2d2db8dfda056b8221d > prerequisite-patch-id: 64c7dc66a01b47fdc1d178e4264dbfb17f65cb48 > prerequisite-patch-id: 7651dda34bd7be0a7c0c58b813abbfe4e75057a5 > prerequisite-patch-id: 5b677afd301ba2d8385e73d6f55ef259e69cdd06 > prerequisite-patch-id: f41124cb1f7db66cf578ee87b768438dcf66227d > prerequisite-patch-id: 6a173ab5f27750a6f4a2f8adebff537f95225d38 > prerequisite-patch-id: c42d87f4f18b34c20121d7a7ee22564b8f2a9c3b > prerequisite-patch-id: e4c4b6c5c635e67f641c1bb4902bb5ec1a0eb1be > prerequisite-patch-id: 197202a25498a915f35f4417efb38e8844cac309 > prerequisite-patch-id: 1e23186a890510f123ecd202f8a50d2094201277 > prerequisite-patch-id: ba3e7e54dfbd8370ff50d1a5e85ac06d803fe68d > prerequisite-patch-id: edcca1af6061de5006b58ff7cd52a039aec88192 > prerequisite-patch-id: 50ee0f2c714091aeab155cd40a94214fd1844463 > prerequisite-patch-id: 31adcc5191ebc8b2ea26ee1e4b7de78a3d8e0f48 > prerequisite-patch-id: dafdb698d23a185ee4adfbf9cbaf43ea31661bc1 > prerequisite-patch-id: 683d340258d86d0774c772cc5d4bc4dfc6c214ac > prerequisite-patch-id: 0052a313ada5ebbd0e24905f2b75974736dae59e > prerequisite-patch-id: 1cbdbf0cf8727d07cfb7251551bbb8f47ca4f9d8 > prerequisite-patch-id: c059fdfb33923cc5d728f53136021e01cab5f316 > prerequisite-patch-id: d8cd3ac99c209600a4686d85627fae2956864272 > prerequisite-patch-id: 7bfa53abc0cd50a22a81782353e30f0503bf87b3 > prerequisite-patch-id: a2837d8005f85e1764d2baf4c5269ac4c26d0e03 > prerequisite-patch-id: c7c2ba071a328f24d36a7bc73d096f701ff049c4 > prerequisite-patch-id: 49edd721efd5860bce7a6da39a3983c1729dfb09 > prerequisite-patch-id: b41ba2264cf8d51fad69c0d60b23282fdcaa02ed > prerequisite-patch-id: ce1094369b939e5df1c9ff586ba6e77eadd6755b > prerequisite-patch-id: cc76aa21e68006e190b6c095a7eab1f71a350035 > prerequisite-patch-id: 016dbed32a9d26e0daa7fe068846dc5bf0bab4b2 > prerequisite-patch-id: ea3270295ff22f15ae5a5213ae7ef0fb24f3d90e > prerequisite-patch-id: 0d7ec035c0ac8ea612791940c47c720fd0fc0983 > prerequisite-patch-id: 073689ebff4dc3ed400b7a6a09b2aa3222eb5eaf > prerequisite-patch-id: 3de9c5dcd90a94356e41cd6c3a6b3a3ebd6da40f > prerequisite-patch-id: 02173a8508f62560dfc0c873ed4f8ffd3b2da127 > prerequisite-patch-id: 325c71a3064a69ed233417bb0dd06ac5afe22ecd > prerequisite-patch-id: fb5f0634575b9cd445be39af1b442f641f33669e > prerequisite-patch-id: 375ec357c82582464519ccd102ba9c9969b27ccd > prerequisite-patch-id: 96724bd515fee1e70896e427ca5443cf6c3bd1c6 > prerequisite-patch-id: d11653d1691c233ceac344313e1facf239c075e6 > prerequisite-patch-id: a0c4b6d4fa27a1f1738ccd7d2c1c5203f4acc10c > prerequisite-patch-id: bcf62e2802a1d35bbeb601750792f3043e18e02e > prerequisite-patch-id: b6027c3dd6b0d7a576397c3f7cead1cb2e32ab3d > prerequisite-patch-id: 2993826cfc8ecb4743d1104ce9062ce064dee436 > prerequisite-patch-id: 2de773c80c1d53b349768f3a9c1dedd9473141e2 > prerequisite-patch-id: dcd065f3bede4933cf1071ca0ff8f631af30537e > prerequisite-patch-id: e8f9cef7f9a80d21786bdbc63de84dad5bb0f11b > prerequisite-patch-id: adefc62a9de4bcbb15ddba73edcdb96740b8527f > prerequisite-patch-id: b8028f15bc6bcfc0053852516acd70129434ef64 > prerequisite-patch-id: a9378612984ceace5d8fc99c192de3d07fad4b4c > prerequisite-patch-id: 3e64fd39d97c528b5901f648d7ab92c9b3dfebd1 > prerequisite-patch-id: 6900b6fcf58f765fa3266432dc9e2eebcacfbb4f > prerequisite-patch-id: 0d796b1a9c84ad77fecacee5450ae4fe067e7748 > prerequisite-patch-id: c8cd1e1f3efda1056dd2f393a43b97a675f8fc00 > prerequisite-patch-id: a1e5e6ee3a85aa293485f42163c5e6fb8ed7ac6c > prerequisite-patch-id: 29865d865b97531dd5be3019e22adb1066bcd0a3 > prerequisite-patch-id: f5e05f1932b2fd24d00c3a7e64a2589f9c62a4e7 > prerequisite-patch-id: 9f875036c21954004d3533697f89c7b8f3f35673 > prerequisite-patch-id: f0f917f79ebed24ee4cd3427393d6cc24b9f2617 > prerequisite-patch-id: 949be1cb8e66006949d4654aa60cf11b990bea13 > prerequisite-patch-id: a035355f8731aa2619cd876157cfd2a9321c4814 > prerequisite-patch-id: d23b3af12de5f250b5aded06076390d855065d34 > prerequisite-patch-id: b649f233ca196c43de136937fbcaf0a5b792a7c7 > prerequisite-patch-id: 0b474fc99e8b05aee2f470e8166d715261b9eb11 > prerequisite-patch-id: a8f595e6c8b9714bfc4d89a7e39d5be3a9665d87 > prerequisite-patch-id: 362ec11aff3d8ddc90f8b1aeb31d0fde8785384b > prerequisite-patch-id: 3695552670237d21bbd21fef03105083754ed6d1 > prerequisite-patch-id: 89f2689e530147ac5530197ff972bc44135a1fe5 > prerequisite-patch-id: e4a07cbaee52cbe451bfb9938b6b2a8636cac2f0 > prerequisite-patch-id: f8f8edb0e66d2612359021654361be7fd0a55b70 > prerequisite-patch-id: 743f4e4444f9cac24e67abce2bda52d6a421d870 > prerequisite-patch-id: 8f0d19793716d0c18759e4261ef18c6db21c7f66 > prerequisite-patch-id: 016a97f4bb36008d268ed1142d4fe67263d18c5f > prerequisite-patch-id: c9b1ea941f12ec7c34d17a7a81b999cdc90a46bb > prerequisite-patch-id: 2e4f5844a1680c659f4fe9af3723f8c9e6171c98 > prerequisite-patch-id: 9b218d7632794493bcc98298de79e9d881bc4de2 > prerequisite-patch-id: bd18dcb6c060ae56cadb55ad248138918b4542fa > prerequisite-patch-id: 5f4f31b906f1a415721c42bb4f06e9a97e6d9826 > prerequisite-patch-id: fd625a00389f10724c4df0c309f46588ff4db63e > prerequisite-patch-id: 6aa7f6e164a2fc200361fd96399ad1c10f0825e2 > prerequisite-patch-id: de267e462ebf8b5fda3d3df92d84914f3d49b093 > prerequisite-patch-id: 10e0c0ed7bb11a5e9d50b4210a67d56d0baa7ae7 > prerequisite-patch-id: 881a354db3dcf42e71ff51e86a712fe24a82378f > prerequisite-patch-id: 471c157425528ec5fa2fe0371dfc9babeff74c57 > prerequisite-patch-id: a7d752c724506c047c0c69fb568f9e3e421773b5 > prerequisite-patch-id: e207260eff0bee9b47719902663721ac36371856 > prerequisite-patch-id: c978ecf00ccf17014919ba6d22a634f1fa5378b8 > prerequisite-patch-id: c30ea3d0e9179a8f91523e4775aa1d7697777031 > prerequisite-patch-id: 9caf8f6dc88c899b90242124e9efccecf61e6580 > prerequisite-patch-id: 8104c6e0f28b79353bb1fe3d6d5bd49b8a1d4656 > prerequisite-patch-id: ad97388f77ab9d4cc88a369418deec6f796d9ac3 > prerequisite-patch-id: 1f6acfacff835f1d7f922614262505c4acbcb067 > prerequisite-patch-id: 95d5625e0f04636a4c3ec335c77f34a5fecaa952 > prerequisite-patch-id: 82e613feb908a11046bdafc6e874bcd8c4f52200 > prerequisite-patch-id: 5f7a850dcf2102e4ac82791ba95ed0c0bc695613 > prerequisite-patch-id: 50d03e282b31737919a2b979d59c5c4c17107627 > prerequisite-patch-id: 8b51bae8e714a0e5277f67ff9d1455fd2f4e36b7 > prerequisite-patch-id: eee196eb6f44f53040e52305d9c48909eb3bf2c5 > prerequisite-patch-id: 35494985bedf6015cb3a8c2c70f58099e9c44316 > prerequisite-patch-id: c3c5c822735b385dd0e55260f514623bf3f9ff1a > prerequisite-patch-id: b21222f6f96276b46ff605bdd1d2a75c9af839ca > prerequisite-patch-id: b63e092548d498d642b6363eae9c98247f5300f9 > prerequisite-patch-id: 99cf93d15a50ad94c049c736b375bbdb77cf0ef6 > prerequisite-patch-id: e2d86b651e3ff2f70848f827b29cc804cead48b2 > prerequisite-patch-id: 1ec76b0303530aaa120186fb249252cd3a1bd7ec > prerequisite-patch-id: 9a35b1041fb252654255045df37478c8eb15a501 > prerequisite-patch-id: e7227e60ea90415b54c6fcd553ddece24dd402fc > prerequisite-patch-id: 2f45861307fafa6a5696098406e164e166f4d207 > prerequisite-patch-id: ab037b78ccf8a9db312333f5e01e6fd2e54832ca > prerequisite-patch-id: 9c886d5ccd279d6f283fcd60a794e66c94fe782d > prerequisite-patch-id: fa5a4fc2f2d77e9ad000d7477f56b822efce457f > prerequisite-patch-id: a0699fc9eb0ee36f53bc937770887d6086d2a7b8 > prerequisite-patch-id: b383634edd50afef4180be293861d1014491d86d > prerequisite-patch-id: 2f404a754f2e1048165df254e963e26f6789de7f > prerequisite-patch-id: 07d59a1d0796816d8421b5a236175b1568d1f63f > prerequisite-patch-id: 9f904d43a86cb4e55a2a00440dd042ec717c8eb8 > prerequisite-patch-id: b30b252bdf0646403dbd132c7dc629188e4f6a4b > prerequisite-patch-id: 73e2691afad05a42cb6cb5a28894eb958516f39c > prerequisite-patch-id: ef0f8b6061c55ada19107f026164c8598ebc66bd > prerequisite-patch-id: da21009a2dbc3384309cfdc4c49e10b86de6e747 > prerequisite-patch-id: 2ef5022df54288b85ef1c8fe4e7a02a03d4577ff > prerequisite-patch-id: 5193b8507248975783d1eb6bc911265e6b55988e > prerequisite-patch-id: 1aef895eb9c159d33d617d7b2475928f75a73303 > prerequisite-patch-id: bf87652bd502aeaf671da92e243553fb9a94f5d5 > prerequisite-patch-id: cf9856dfd70d154fab043ffd2ee89288d9d41827 > prerequisite-patch-id: f9daf7a441685aa6d25225b6616e51be5fcfe772 > prerequisite-patch-id: 0101aa9af501543384863fa8c090febd6939f80f > prerequisite-patch-id: ccf1ac224734562e2f4207847b8128cd3c8b9d31 > prerequisite-patch-id: 589ae86ee30b01355ce220ab9fc89c5403d95076 > prerequisite-patch-id: 6e809a44a0ef69883eb812f8a4b57eb52ad32f41 > prerequisite-patch-id: 116d110f795045527d54f2897e1ac12bb2f59238 > prerequisite-patch-id: f4e0f48a8ce61bc6c229a18bf41f4b3cdec3a9d0 > prerequisite-patch-id: e78df0253e48cdf5f9e44c17a169fc9cccb82c7e > prerequisite-patch-id: 1e6951da0eba531f4b445996167fea1e7320e3ae > prerequisite-patch-id: b1903fb1a742dd33ebb635299c725e9fc2a4e9ae > prerequisite-patch-id: eb07c15789948b34c0b219ff05f61c530882845d > prerequisite-patch-id: 92c0ba647ef4b4b7e83297554f6fa7e31f3a8fb5 > prerequisite-patch-id: f968b1250e573119cb65aab0b98c225d8a7c4d8a > prerequisite-patch-id: 5e6dee90fe5f7a891794b5ea6bed41b1157c2930 > prerequisite-patch-id: 3b10245cae08595a6bcbdc82ff836becaf6d04d2 > prerequisite-patch-id: d7f15f333560e8ccfe2ad073e99ca4ef502e15d1 > prerequisite-patch-id: 4c95c2badbd5911a7405a64e0d84e3091526444d > prerequisite-patch-id: f839c9824865564c12cbb7064ff455f34dc039f7 > prerequisite-patch-id: 071e2570569f005c75ed7d8bf112db80cca310e5 > prerequisite-patch-id: 7ee42594ecf51591428ae7f13bfb8403affed8cb > prerequisite-patch-id: 4b2105c900cf8ed047a9c0d1866fb2bdb4f9a59e > prerequisite-patch-id: dd4697ba0013408e637223fadd027c9b34945060 > prerequisite-patch-id: e0881345b919ec25525c626303ba5d5e160f97f2 > prerequisite-patch-id: fc6865c7e1fb19530ac8e77090eaa0b179f70496 > prerequisite-patch-id: e3b8081ed28b7f0d370548044237287f52179967 > prerequisite-patch-id: b672da115531fc52a591c9e50ac4da9e8b09e144 > prerequisite-patch-id: f2764b91aa819feb1879d007993bda7aeb7f5df6 > prerequisite-patch-id: dfb13890022578746ce611a965c62c34905b1f18 > prerequisite-patch-id: bef3730ba816c84cb056d12e30b91a8c1f4b6aac > prerequisite-patch-id: 265211a01667357c86ce905ee33e4adbb81887d9 > prerequisite-patch-id: c02d2492949e079494b9552c397e689774fad639 > prerequisite-patch-id: 0f4180d693806ae210396ec1512be8e1d45c9530 > prerequisite-patch-id: 22b486e7286a8b1a8ef90d3f1f4a4d48e43fb25c > prerequisite-patch-id: 0020828bf1b65907c906fb9ebf24104a5e72c790 > prerequisite-patch-id: 4afad41c227028a4c6c35d1c43b0ee7883852a1e > prerequisite-patch-id: 890e19d588eca2dacfb83475c19ac461c0d83058 > prerequisite-patch-id: f35d03d5ed63be69d2dfec77d07b28d21c40dc9a > prerequisite-patch-id: 2bebc000037d37260152802423445d39bc463f8e > prerequisite-patch-id: ccbec53de5ad88beb7657680ae6aa167f3505fd6 > prerequisite-patch-id: 3c588bad04050087679a1d4f5479efb0da2537bb > prerequisite-patch-id: 87d915c6c5495d2accc7864dc592f2f651012fca > prerequisite-patch-id: a327cf20636f57b5feb31928c49d6517f102a709 > prerequisite-patch-id: 8106cf8afd07cf37f3ecd63b831f1a22fa99998a > prerequisite-patch-id: a4ff39b72413dc2d894d269629919ce5199eb0fd > prerequisite-patch-id: c0db74dd58a097e7130420bd294b0f3d200730be > prerequisite-patch-id: df5bd199584a63d1ca2af8ca5e9bc659baffb8ab > prerequisite-patch-id: 9f8d32c0a8df05688a4e6779d45538056d891a72 > prerequisite-patch-id: 167566e1096e56d7189393aed3528b8047421a2b > prerequisite-patch-id: 5ade75da262706c05c72bc2e1095cdc137334928 > prerequisite-patch-id: 725cd8d55b55117b8732240a36ef6dd57560b7aa > prerequisite-patch-id: 2283e8ab28c671cd97fdba344bad9fad3b740955 > prerequisite-patch-id: d86fed5ed934d2622a0e640677483dbd5e493b50 > prerequisite-patch-id: 5a523603c0cc2344952de69d65a1dd6c9c28b1b0 > prerequisite-patch-id: 8276956515aab9f3e81a9b4d51f5d270fea82c8b > prerequisite-patch-id: 1c0b8c20b01944262081a7fac4905a24a1f51afd > prerequisite-patch-id: 90b6ed9e4633014209d3291157104fe2db6cc268 > prerequisite-patch-id: b78d480e28a5684e5a04f9e2d1dc6c8d6b6115d8 > prerequisite-patch-id: 85129a45f66a9afd1d6aeb78a266f2b33131effc > prerequisite-patch-id: 46c2c0f251c385f740ec0f021ddf71b214dcf188 > prerequisite-patch-id: de94541c97cd5dfb8f02b4210557a29264c60f28 > prerequisite-patch-id: cb4a135f378247e43ecb9c5c1ca421e778356cd3 > prerequisite-patch-id: 6941030e002fe4dac24a7e431297837bcebd6637 > prerequisite-patch-id: 16ed31acf9114e5bcdeab9ac6f8b3c1d460d40ab > prerequisite-patch-id: 5a24fb875f0c703d031c3dcfd40faf2072a691b1 > prerequisite-patch-id: 278384975e9224209b9df58781cb0d57d33cce91 > prerequisite-patch-id: 8b4be8616dd4f2e1b6189657017e81999e3379bf > prerequisite-patch-id: 99853a3b8283b9aae581ec9c7a4b30dd27a9075f > prerequisite-patch-id: a48c177e8a82248dfd6642c35da34019d765a4a8 > prerequisite-patch-id: 6b4419d64c7d1e887578e30a73fc476aad5408a6 > prerequisite-patch-id: 93b79b926b74052e9bbba631e0f30da89c1dd0ec > prerequisite-patch-id: 9fe442b02446f58ea358d748da5f5f82805bc7ef > prerequisite-patch-id: 26828312870404b6611ccd685b162aa082dfce57 > prerequisite-patch-id: 6ce31c6bb1a2b79ca465dca7a1157d1bb379d51b > prerequisite-patch-id: e6b4e8bd8a45796125d4fdcc169f97f5a3fb8bf8 > prerequisite-patch-id: 94637d65272a73ec3e2b19dc3595d864fdea4836 > prerequisite-patch-id: dd5dfa3e4d58a7db1f158bcc0daec057c028ce00 > prerequisite-patch-id: 2295114d438c62a2128620775fc0300b0b418ff9 > prerequisite-patch-id: 080adcee4042fd9511680fb10beebcae24a4dc06 > prerequisite-patch-id: 022f540464bfd6c2202cdeb5530502903d207417 > prerequisite-patch-id: 5ffcb1ea5dafbfe47753ce4165afa1f99d46cc82 > prerequisite-patch-id: c4dcb2f3f063115727c204d3e0b0ef7c7a66cda9 > prerequisite-patch-id: 984a29d2480696456528847eb7365e5785613ab6 > prerequisite-patch-id: fa4b35b9b0874bdf8057f88303e204ff3b6e0538 > prerequisite-patch-id: 12dac397d93e001201a2b8fcbadbca24a91a1f5a > prerequisite-patch-id: 51112edb6d85135a1930262e7a63f8f2fad3b22d > -- > 2.45.2 >