-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Port DevCom bugs to GitHub #939
Labels
Comments
StephanTLavavej
added
documentation
Related to documentation or comments
help wanted
Extra attention is needed
labels
Jun 30, 2020
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Ported the following:
Did not port:
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Thanks @AlexGuteniev! I agree about GH-412 and have linked them up. Yay - all bugs with public info have been ported! Thanks everyone! 🎉 |
StephanTLavavej
added
resolved
Successfully resolved without a commit
and removed
help wanted
Extra attention is needed
labels
Aug 19, 2020
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
As part of our work to migrate all STL development to GitHub, we're porting our Microsoft-internal bug database ("VSO"; originally Visual Studio Online, renamed Azure DevOps and Azure Boards) to GitHub issues. Some bugs were directly filed in VSO (by STL maintainers and other people within MS, sometimes on behalf of customers), while some were replicated from Developer Community ("DevCom").
As part of this porting process, we aren't resolving any bugs. The intended goal is for GitHub to be the source of truth for all bug reports (in addition to performance/enhancement/etc. suggestions); it's also our preferred place for new issues to be filed. (Issues filed on GitHub aren't replicated anywhere else, so it's the most convenient for us.) However, users who filed DevCom bugs in the past (or continue to file them in the future) will have their bugs remain active, and will receive feedback from STL maintainers there (in addition to their bugs being ported to GitHub issues where they can be linked to pull requests etc.). Additionally, VSO bugs (whether filed directly or replicated from DevCom) will remain active because our bosses and boss-like entities prefer that.
"Porting" a bug to GitHub involves capturing the true essence of the bug report, without distorting or over-simplifying it. (Much like compiler bugs, STL bugs can be very sensitive to the exact code, compiler options, etc. used.) However, we also want our GitHub issues to be readable and comprehensible, so that both maintainers and contributors can understand what's wrong and easily investigate a fix. So, when possible, it's nice to clean up the title and test case, so that they're as clear and minimal as possible. (It is often a good idea to have an "original repro" and "reduced repro", to avoid the dangers of over-simplifying away something important - and I speak as someone who has over-simplified a dozen compiler bug reports in the past.) It's better to err on the side of less cleanup than more - fixing only grammatical issues is fine.
Example bugs ported from DevCom: GH-371 (from DevCom-758960) and GH-503 (from DevCom-371962)
While only the STL maintainers will be able to port the MS-internal bugs that were directly filed in VSO, the DevCom database is publicly viewable, so we could use some help with those bugs. 😸
Here's a list of the DevCom bugs, along with their VSO IDs and Titles. (Sometimes, multiple DevCom bugs were linked to a single VSO bug, when we had a strong belief that they're all duplicates.) I generated this by hand, so if anything looks wrong (e.g. mismatched VSO/DevCom bugs), please let me know. Note that everyone in this repo has the ability to use our Custom Autolinks in GitHub issues/comments; you can just say DevCom-NNN instead of copying a whole URL.
In general, we have already tried to resolve clearly-invalid bugs, and obvious duplicates, but there are several categories of possible duplicates that we haven't resolved because there may be multiple underlying issues.
Finally, in addition to the title and repro, ported bugs should mention the DevCom and VSO IDs, so we can easily navigate to the linked bugs:
AB followed by
#
(not-
like other autolinks) will activate automation: your issue will be automatically edited by @msalehmsft to add a hyperlink (it won't appear in a Preview), and the internal bug will gain a special link. This must be mentioned in the original issue to create the internal link; using this syntax in issue comments below will be hyperlinked from GitHub, but not to GitHub.Please don't use AB#nnn syntax here, in this thread as it will link "Port DevCom bugs to GitHub" to whatever's mentioned. DevCom-nnn and VSO-nnn are safe to mention anywhere.
🪲 Remaining: VSO ID | DevCom ID(s) | Original VSO Title
⏳ In Progress
<iomanip>
:std::get_time
cause Debug Assertion Failed when the second parameter have extra delimiter<regex>
: Instantiatingstd::regex("meow")
changes output ofstrftime
in a different thread<iomanip>
:std::get_time
does not report fail on an invalid date<xlocale>
et al. locale allocates memory while holding the locale lock<regex>
std::regex_search
causes infinite recursion on a sample that works with Visual Studio 2013 and gcc❌ Resolved As Invalid
<scoped_allocator>
:std::scoped_allocator_adaptor
copy constructor does not copy construct inner allocators<iostream>
: When a double-width characters incout
, blank output without permission.🛠️ Compiler Bug, Reduced To Library-Free Test Case And Sent To Compiler Team
std::thread
ends up calling lambda from other file with new lambda engine<functional>
: Passing an object with an explicit alignment that owns astd::function
by value leads to invalid free on x86😸 Fixed
<scoped_allocator>
:std::scoped_allocator_adaptor
does not properly construct inner allocator<complex>
: Passing a double tostd::arg
returns wrong result.<valarray>
:slice_array
's copy ctor is missing, the same withmask_array
,gslice_array
,indirect_array
<random>
:piecewise_linear_distribution
is still broken<filesystem>
: Use ofstd::filesystem::path
causes link error on UWPstd::stack<Class *>
for x64 while for x86 it works fine✔️ Done
/Wall
<streambuf>
:basic_streambuf
doesn't support 64-bit properly<locale>
: Eagerly-allocated facets in non-defaultstd::locale
can lead to ODR violation between DLL-exported version and header version<array>
:std::array<T,0>
doesn't compile - when type is not default constructible<iterator>
:checked_array_iterator
/unchecked_array_iterator
should have conversions<iomanip>
:get_time
should parse format without delimiters<mutex>
: changemutex
to be anSRWLOCK
<exception>
:std::exception::what
has wrong signature<future>
:std::async
withstd::launch::async
policy does not behave as if in new thread in regards tothread_local
<functional>
:std::is_convertible
is broken forstd::bind
functors<valarray>
: VS doesn't trigger the assertion when the data out of bound instd::valarray
<execution>
: Including with/clr
enabled results in compiler error.<memory>
:_msize
&std::allocator
don't work together<any>
:std::any
doesn't link when exceptions are disabled<regex>
mishandles locale-based character classes outside of the char range<regex>
: c++ regex character class case insensitive search problem<regex>
: Regex erroneously returns a match<regex>
:basic_regex
wantsregex_traits
to provide things not required by[re.req]
<regex>
:regex_search
behaves incorrectly when the regex containsR"(\[)"
<regex>
: Grouping within repetition causes regex stack error<random>
: Floating-point random number generation suboptimal due togenerate_canonical()
<random>
:binomial_distribution
is broken<random>
: Still provides theuniform_int
anduniform_real
class templates #1002 | VSO-729899 | DevCom-381099 |<random>
: The<random>
header still provides theuniform_int
anduniform_real
class templates<random>
:normal_distribution
is slower than Boost #1003 | VSO-486661 | DevCom-86909 |<random>
:std::normal_distribution
four times slower than the corresponding boost version<regex>
: Error C2664 instd::regex_traits::transform
<algorithm>
:std::min_element()
assumes the elements in the range are not modified<deque>
:std::deque::insert
performance<locale>
: Empty locale name and UTF-8 issues<forward_list>
,<string>
,<vector>
: Debug mode STL causesterminate()
to be called under low memory #1035 | VSO-466800 VSO-470756 | DevCom-77779 DevCom-246249 |<string>
,<vector>
Debug version of STL is not exception safe and causesterminate()
to be called under low memory<deque>
: Adeque<T>
whereT
is move-only, when nested invector
, does not compile<xtree>
:_Tree
move constructor incorrectly swaps<chrono>
: No diagnostic for truncating conversion ofchrono
duration
<vector>
: VS 2019 ignoresexplicit
keyword<xlocinfo>
: Mismatched call tofree
whenmalloc
is replaced with user implementation<locale>
: Cannot run in Release mode and throw unhandled exception:std::runtime_error
- UTF8 to GBKstd._Tree_unchecked_const_iterator
)<iomanip>
:std::get_time
asserts with "istreambuf_iterator
is not dereferenceable" when format is longer than the stream<random>
:uniform_real_distribution<float>
generates numbers outside of the interval<locale>
:std::ctype<char>::blank
return true for all space-characters<iostream>
: hexfloat stream output does not ignore precision as it should<iomanip>
: Case sensitivity when parsing months<fstream>
:ifstream
putback is still broken<locale>
: locale initialization incorrect in debug modeThe text was updated successfully, but these errors were encountered: