Skip to content

[clang-format] Incorrect formatting when constructing a lambda expression by macro #158417

@alumkal

Description

@alumkal

OS: Windows 11

Version: clang-format version 21.1.1

Example code:

#define A (std::function<int()>)
#define B []

int main() {
    auto foo{(std::function<int()>) [] { return 0; }};
    auto bar{A B { return 0; }};
    return 0;
}

After formatting:

#define A (std::function<int()>)
#define B []

int main() {
  auto foo{(std::function<int()>)[] { return 0; }};
  auto bar{A B{return 0;
}
}
;
return 0;
}

This is a follow-up to #135959.

Metadata

Metadata

Assignees

No one assigned

    Labels

    clang-formatquestionA question, not bug report. Check out https://llvm.org/docs/GettingInvolved.html instead!

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions