Skip to content

Commit

Permalink
MSVC 17.10.0 + modules cannot find definition
Browse files Browse the repository at this point in the history
MSVC regressed since the new 17.10.0 compiler update. node<> cannot be found for detail::dynamic_arg_list::typed_node.
  • Loading branch information
matt77hias committed May 23, 2024
1 parent b817610 commit cd24818
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions include/fmt/args.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,15 @@ auto unwrap(const std::reference_wrapper<T>& v) -> const T& {
return static_cast<const T&>(v);
}

class dynamic_arg_list {
// Workaround for clang's -Wweak-vtables. Unlike for regular classes, for
// templates it doesn't complain about inability to deduce single translation
// unit for placing vtable. So storage_node_base is made a fake template.
template <typename = void> struct node {
virtual ~node() = default;
std::unique_ptr<node<>> next;
};
// Workaround for clang's -Wweak-vtables. Unlike for regular classes, for
// templates it doesn't complain about inability to deduce single translation
// unit for placing vtable. So storage_node_base is made a fake template.
template <typename = void> struct node {
virtual ~node() = default;
std::unique_ptr<node<>> next;
};

class dynamic_arg_list {
template <typename T> struct typed_node : node<> {
T value;

Expand Down

0 comments on commit cd24818

Please sign in to comment.