[libcxx-commits] [PATCH] D99290: [libc++] Update contributor documentation.

Arthur O'Dwyer via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Mar 25 16:46:44 PDT 2021

Quuxplusone added inline comments.

Comment at: libcxx/docs/Contributing.rst:46
+name              The name of the feature-test macro.
+values            A list of tuples. One tuple contains a C++ version and the
+                  value of the feature-test marco for that C++ version.
Mordante wrote:
> curdeius wrote:
> > Isn't it a dictionary (or however it's called in pythonesque)?
> Yes, will change it.
also: `/marco/macro/` on line 47

Comment at: libcxx/docs/Contributing.rst:49
+headers           An array with the headers that should provide the
+                  feature-test macro.
+depends           An optional string field. When this field is provided
Mordante wrote:
> Quuxplusone wrote:
> > Note that `values` and `headers` are both coarser-grained than we really need, these days. Because the macros really correspond to //papers//, not //versions of the standard//; and the `values` can have multiple appropriate settings depending on which paper(s) are implemented. This is a long-standing problem with the script, and totally not your doing. But if we're updating the README to explain about the script, I think it should at least gesture in the direction of "these variables do not directly correspond to anything in WG21's system of feature macros and some fudging may be necessary."
> I'm aware of this issue, just tried to ignore it in the documentation. I don't think we have a good solution for it at the moment. And I'm not sure what the best solution will be, but I think it would be best to tackle it when it becomes an issue. Or do we already have this issue?
This past month (i.e. since I started paying attention) I've seen D96385:
    "name": "__cpp_lib_constexpr_string",
    "values": { "c++20": 201811 },  # because P1032R1 is implemented; but should become 201907 after P0980R1
    "headers": ["string"],
and also D97394:
    "name": "__cpp_lib_variant",
    "values": { "c++17": 202102 },
    "headers": ["variant"],

  rG LLVM Github Monorepo



More information about the libcxx-commits mailing list