Skip to content

Commit

Permalink
Try to workaround a Clang bug not recognizing some spans
Browse files Browse the repository at this point in the history
  • Loading branch information
kcat committed Dec 7, 2024
1 parent e502bd5 commit 808bb22
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions alc/alu.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2142,8 +2142,8 @@ void Write(const al::span<const FloatBufferLine> InBuffer, void *OutBuffer, cons
ASSUME(FrameStep > 0);
ASSUME(SamplesToDo > 0);

const auto output = al::span{static_cast<T*>(OutBuffer), (Offset+SamplesToDo)*FrameStep}
.subspan(Offset*FrameStep);
const auto outbuf = al::span{static_cast<T*>(OutBuffer), (Offset+SamplesToDo)*FrameStep};
const auto output = outbuf.subspan(Offset*FrameStep);
size_t c{0};
for(const FloatBufferLine &inbuf : InBuffer)
{
Expand Down Expand Up @@ -2174,7 +2174,8 @@ void Write(const al::span<const FloatBufferLine> InBuffer, al::span<void*> OutBu
for(auto *dstbuf : OutBuffers)
{
const auto src = al::span{*srcbuf}.first(SamplesToDo);
const auto dst = al::span{static_cast<T*>(dstbuf), Offset+SamplesToDo}.subspan(Offset);
const auto dstline = al::span{static_cast<T*>(dstbuf), Offset+SamplesToDo};
const auto dst = dstline.subspan(Offset);
std::transform(src.cbegin(), src.end(), dst.begin(), SampleConv<T>);
++srcbuf;
}
Expand Down

0 comments on commit 808bb22

Please sign in to comment.