Skip to content

Instantly share code, notes, and snippets.

@froody
Created April 18, 2021 11:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save froody/7f73978acc17f5242dc22eece7f6721d to your computer and use it in GitHub Desktop.
Save froody/7f73978acc17f5242dc22eece7f6721d to your computer and use it in GitHub Desktop.
=================================================================
==440140==ERROR: AddressSanitizer: global-buffer-overflow on address 0x000000e59f88 at pc 0x0000004ec9c3 bp 0x7ffecc55bd90 sp 0x7ffecc55bd88
READ of size 1 at 0x000000e59f88 thread T0
#0 0x4ec9c2 in auto xt::conditional_cast<false, unsigned char, unsigned char const&>(unsigned char const&) /home/tbirch/src/xtensor/include/xtensor/xutils.hpp:693:16
#1 0x4dee6c in xt::stepper_assigner<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> >, (xt::layout_type)1>::run() /home/tbirch/src/xtensor/include/xtensor/xassign.hpp:577:22
#2 0x4de2b3 in void xt::xexpression_assigner_base<xt::xtensor_expression_tag>::assign_data<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&, bool) /home/tbirch/src/xtensor/include/xtensor/xassign.hpp:404:22
#3 0x4de08b in void xt::xexpression_assigner<xt::xtensor_expression_tag>::assign_xexpression<xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&) /home/tbirch/src/xtensor/include/xtensor/xassign.hpp:413:9
#4 0x4de032 in auto void xt::assign_xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&)::'lambda0'(xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>)::operator()<xtl::identity>(xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>) const /home/tbirch/src/xtensor/include/xtensor/xassign.hpp:204:13
#5 0x4ddfb8 in decltype(auto) xtl::mpl::static_if<void xt::assign_xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&)::'lambda'(xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>), void xt::assign_xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&)::'lambda0'(xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>)>(std::integral_constant<bool, false>, xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> const&, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > const&) /home/tbirch/src/xtensor/../xtl/include/xtl/xmeta_utils.hpp:597:20
#6 0x4ddf8c in decltype(auto) xtl::mpl::static_if<false, void xt::assign_xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&)::'lambda'(xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>), void xt::assign_xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&)::'lambda0'(xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>)>(xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > const&, void xt::assign_xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&)::'lambda0'(xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>) const&) /home/tbirch/src/xtensor/../xtl/include/xtl/xmeta_utils.hpp:603:20
#7 0x4ddeff in void xt::assign_xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>, xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >&, xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&) /home/tbirch/src/xtensor/include/xtensor/xassign.hpp:198:9
#8 0x4ddcf6 in xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>& xt::xcontainer_semantic<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >::assign_xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&) /home/tbirch/src/xtensor/include/xtensor/xsemantic.hpp:623:9
#9 0x4ddc8d in xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>& xt::xsemantic_base<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >::assign<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&) /home/tbirch/src/xtensor/include/xtensor/xsemantic.hpp:489:37
#10 0x4ddb71 in xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>::xarray_container<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&) /home/tbirch/src/xtensor/include/xtensor/xarray.hpp:482:24
#11 0x4dd8fa in xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>& xt::xsemantic_base<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >::operator=<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&) /home/tbirch/src/xtensor/include/xtensor/xsemantic.hpp:600:24
#12 0x4dd79f in xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>& xt::xcontainer_semantic<xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag> >::operator=<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&) /home/tbirch/src/xtensor/include/xtensor/xsemantic.hpp:647:27
#13 0x4cb615 in xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>& xt::xarray_container<xt::uvector<unsigned char, std::allocator<unsigned char> >, (xt::layout_type)1, xt::svector<unsigned long, 4ul, std::allocator<unsigned long>, true>, xt::xtensor_expression_tag>::operator=<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > >(xt::xexpression<xt::xview<xt::xstrided_view<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, std::array<unsigned long, 1ul>, (xt::layout_type)0, xt::detail::flat_adaptor_getter<xt::xview<xt::xfixed_container<unsigned char, xt::fixed_shape<256ul, 8ul>, (xt::layout_type)1, true, xt::xtensor_expression_tag>&, xt::xkeep_slice<unsigned char>, xt::xall<unsigned long> >&, (xt::layout_type)1> >&, xt::xrange<long> > > const&) /home/tbirch/src/xtensor/include/xtensor/xarray.hpp:492:31
#14 0x4c97b7 in main /home/tbirch/src/xtensor/bug.cpp:37:14
#15 0x7f00235250b2 in __libc_start_main /build/glibc-eX1tMB/glibc-2.31/csu/../csu/libc-start.c:308:16
#16 0x41c47d in _start (/home/tbirch/src/xtensor/a.out+0x41c47d)
0x000000e59f88 is located 120 bytes to the right of global variable 'BitsLookup' defined in 'bug.cpp:20:3' (0xe59700) of size 2064
SUMMARY: AddressSanitizer: global-buffer-overflow /home/tbirch/src/xtensor/include/xtensor/xutils.hpp:693:16 in auto xt::conditional_cast<false, unsigned char, unsigned char const&>(unsigned char const&)
Shadow bytes around the buggy address:
0x0000801c33a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0000801c33b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0000801c33c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0000801c33d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0000801c33e0: 00 00 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9
=>0x0000801c33f0: f9[f9]f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9
0x0000801c3400: f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9
0x0000801c3410: f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9 f9
0x0000801c3420: f9 f9 f9 f9 00 00 00 00 00 00 00 00 00 00 00 00
0x0000801c3430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0000801c3440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
Shadow gap: cc
==440140==ABORTING
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment