Test: Clarify "non-standard extension"
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 11.1k
- Forks
- 1.7k
- Avg merge
- 4d 15h
- Merged PRs (30d)
- 22
Description
We're currently saying "non-standard extension" in several test files.
https://github.com/microsoft/STL/blob/3f76681e18fa51e1441c9150099b8010c1d18e1c/tests/std/tests/GH_000431_copy_move_family/test.cpp#L436
https://github.com/microsoft/STL/blob/3f76681e18fa51e1441c9150099b8010c1d18e1c/tests/std/tests/GH_000431_equal_family/test.cpp#L586
https://github.com/microsoft/STL/blob/3f76681e18fa51e1441c9150099b8010c1d18e1c/tests/std/tests/GH_000431_equal_memcmp_is_safe/test.compile.pass.cpp#L506
https://github.com/microsoft/STL/blob/3f76681e18fa51e1441c9150099b8010c1d18e1c/tests/std/tests/GH_000431_iter_copy_move_cat/test.compile.pass.cpp#L419
https://github.com/microsoft/STL/blob/3f76681e18fa51e1441c9150099b8010c1d18e1c/tests/std/tests/VSO_0000000_string_view_idl/test.cpp#L249
This is seemingly redundant, because every extension can hardly to be considered "standard extension". Perhaps it would be clearer to say "non-conforming/conformant" extension.
- For conversion from function pointers to
void*, I believe this extension is non-conforming. As [conv.ptr]/2 only allows implicit conversion from pointer to object types tocv void*. - For
basic_string_view::_Copy_s(), I believe this extension is conforming because it's under an _Ugly name, and we can just say "an extension".
There're also comments in <yvals_core.h> saying "non-Standard extension(s)". But as they refer to removed deprecation messages, I think we shouldn't modify them.
https://github.com/microsoft/STL/blob/3f76681e18fa51e1441c9150099b8010c1d18e1c/stl/inc/yvals_core.h#L1463-L1468
https://github.com/microsoft/STL/blob/3f76681e18fa51e1441c9150099b8010c1d18e1c/stl/inc/yvals_core.h#L1484
It seems to be a https://github.com/microsoft/STL/labels/good%20first%20issue to improve the comments in these test files.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the five linked test files at the referenced lines and compare each comment's use of "non-standard extension" with the accompanying C++ standard wording. Clarify the comments according to whether the extension is conforming, non-conforming, or simply an extension, while leaving the noted yvals_core.h comments unchanged. Done means the test comments use precise, consistent terminology.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- testing-qa
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100