Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OOPS FORGOT for __cpp_lib_deduction_guides and __cpp_lib_modules #22

Open
StephanTLavavej opened this issue Dec 6, 2022 · 1 comment

Comments

@StephanTLavavej
Copy link

SD-FeatureTest currently says "OOPS FORGOT" for the "Header(s)" of __cpp_lib_deduction_guides and __cpp_lib_modules. I see that this is being emitted by central machinery:

sd6/sd6.tmpl

Lines 30 to 37 in 9b235df

{%- if 'header_list' in macro -%}
{%- for header in macro.header_list.split() | sort %}
`<{{header}}>`{% endfor -%}
{%- elif 'header_info' in macro -%}
{{macro.header_info}}
{%- else -%}
OOPS FORGOT
{%- endif -%}

because these macros don't have recorded header_lists:

sd6/macros.yaml

Lines 672 to 675 in 9b235df

- name: __cpp_lib_deduction_guides
rows:
- value: 201703
papers: P0433R2

sd6/macros.yaml

Lines 967 to 970 in 9b235df

- name: __cpp_lib_modules
rows:
- papers: P2465R3
value: 202207

Unlike most macros:

sd6/macros.yaml

Lines 1000 to 1004 in 9b235df

- name: __cpp_lib_not_fn
header_list: functional
rows:
- value: 201603
papers: P0005R4

For __cpp_lib_deduction_guides, it appears that LWG-3635 wants to add it, and it does specify a list of headers:

#define __cpp_lib_deduction_guides   201703L
  // also in <array>, <deque>, <forward_list>, <functional>, <list>, <map>,
  // <memory>, <optional>, <queue>, <regex>, <scoped_allocator>, <set>, <stack>,
  // <string>, <tuple>, <unordered_map>, <unordered_set>, <utility>, <valarray>,
  // <vector>

For __cpp_lib_modules, this absence is intentional; as P2465R3 explained:

Unlike all of the other library feature-test macros, this should not have a comment "// also in <HEADER>".

@cpplearner
Copy link
Contributor

Fixed by 2bf2aa4?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants