https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96316
--- Comment #2 from skdkksfadkadkk at gmail dot com --- Got it, thanks. I was confused by clang's behavior because it doesn't require implicit argument, pointing on lambda instance. One more question: how this implicit argument should be declared properly in promise constructor - what type this argument should be? For now i only see the way to declare it as a template, but may be there is another way to declare it's type explicitly, without templates?