Opened 4 years ago
Closed 4 years ago
#1010 closed ожидается проверка (задача сдана)
WW #15
Reported by: | fedorov.vladimir | Owned by: | Дмитрий Свиридкин |
---|---|---|---|
Component: | WW_linq | Version: | 3.0 |
Keywords: | Cc: |
Description
Change History (5)
comment:1 Changed 4 years ago by
Owner: | changed from Дмитрий Свиридкин to fedorov.vladimir |
---|---|
Type: | ожидается проверка → ожидаются исправления |
comment:2 Changed 4 years ago by
Owner: | changed from fedorov.vladimir to Дмитрий Свиридкин |
---|---|
Type: | ожидаются исправления → ожидается проверка |
Version: | 1.0 → 2.0 |
comment:3 Changed 4 years ago by
Owner: | changed from Дмитрий Свиридкин to fedorov.vladimir |
---|---|
Type: | ожидается проверка → ожидаются исправления |
в select теперь UB
==163675== Conditional jump or move depends on uninitialised value(s) ==163675== at 0x4A6678C: sqrt (w_sqrt_compat.c:31) ==163675== by 0x116EFF: __gnu_cxx::__enable_if<std::__is_integer<int>::__value, double>::__type std::sqrt<int>(int) (cmath:476) ==163675== by 0x10CE5A: test_example_3()::{lambda(int)#1}::operator()(int) const (linq_tests.cpp:112) ==163675== by 0x115AFE: linq::impl::select_enumerator<double, int, test_example_3()::{lambda(int)#1}>::operator++() (linq.hpp:153) ==163675== by 0x1181B2: void linq::impl::enumerator<double>::copy_to<std::back_insert_iterator<std::vector<double, std::allocator<double> > > >(std::back_insert_iterator<std::vector<double, std::allocator<double> > >) (linq.hpp:73) ==163675== by 0x116FCD: linq::impl::enumerator<double>::to_vector() (linq.hpp:63) ==163675== by 0x10CF2D: test_example_3() (linq_tests.cpp:113) ==163675== by 0x113127: main (linq_tests.cpp:445) ==163675== ==163675==
select_enumerator(enumerator<U> &parent, F func) : parent_(parent), func_(std::move(func)), elem(func(*parent))
Здесь UB дважды
4 + 3
comment:4 Changed 4 years ago by
Owner: | changed from fedorov.vladimir to Дмитрий Свиридкин |
---|---|
Type: | ожидаются исправления → ожидается проверка |
Version: | 2.0 → 3.0 |
comment:5 Changed 4 years ago by
Resolution: | → задача сдана |
---|---|
Status: | assigned → closed |
в цепочке where(...).where(...)
первый where будет проверять предикат дважды на одном и том же элементе
6 + 3
Note: See
TracTickets for help on using
tickets.
4 + 2