Skip to content

[CuTe] [Fix] MSVC's inability to deduce a non-type parameter pack from a dependent template alias#3198

Open
SystemPanic wants to merge 2 commits into
NVIDIA:mainfrom
SystemPanic:fix-stride-windows
Open

[CuTe] [Fix] MSVC's inability to deduce a non-type parameter pack from a dependent template alias#3198
SystemPanic wants to merge 2 commits into
NVIDIA:mainfrom
SystemPanic:fix-stride-windows

Conversation

@SystemPanic
Copy link
Copy Markdown
Contributor

@SystemPanic SystemPanic commented Apr 30, 2026

When compiling FlashInfer on Windows, usage of CuTe stride.hpp causes error C3545 at using Seq = typename Lambda::template seq<Shape>;

MSVC fails at this because it can't deduce the non-type parameter pack Ints when it's accessed through a dependent template alias (a member of a dependent type).

The fix bypasses the dependent member alias entirely by using a standalone struct with explicit partial specializations.

This solves #3065

…m a dependent template alias

Signed-off-by: Javier <25750030+SystemPanic@users.noreply.github.com>
Comment thread include/cute/stride.hpp Outdated
Signed-off-by: Javier <25750030+SystemPanic@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants