#780·taskflow

Latest via module using MSVC compilation issues.

Author: dsvenssonCreated Mar 27, 2026Updated Aug 11, 2026
Labelshelp wanted

The first minor hickup is using std::iter_swap in taskflow/utility/math.hpp without #include <algorithm>.

The second I'm less sure of:

cpp

import tf;
...
executor.async([blah, bleh] {
    return foo(blah, bleh);
});

This actually leads to MSVC compiler crashing with:

D:\a\_work\1\s\src\vctools\Compiler\CxxFE\sl\p1\c\module\reader.cpp:3388: the impossible happened

...when another file imports a module that contains the above .

So as it works just fine with clang 20, it seems to be some issue when using modules+MSVC and this function:

cpp
template <typename F>
auto async(F&& func);
error C3779: 'tf::Executor::async': a function that returns 'auto' cannot be used before it is defined

I guess I can keep using the regular includes for now, or downgrade. fwiw I'm also using import std and c++23 in my project, and some of the other dependencies that have gone over to exposing modules (vulkan-hpp, vma-hpp) have also opened up for enabling import std in those projects.

Another issue is Graph:

error C2079: 'tf::Node::Subflow::subgraph' uses undefined class 'tf::Graph'

Seems related to VS2026 and/or C++23.

And another issue is the:

cpp
export namespace std {
    using std::hash;
}

And I'm also curious of the CLI11 directory instead of the taskflow directory?