This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/42819] New: [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: "lloyd at randombit dot net" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 Jan 2010 04:59:31 -0000
- Subject: [Bug libstdc++/42819] New: [C++0x] std::async fails to compile with simple tests, including N3000 example
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Here is the example for std::async included in the N3000 draft (section
30.6.9):
#include <future>
int work1(int value);
int work2(int value);
int work(int value)
{
auto handle = std::async([=] { return work2(value); });
int tmp = work1(value);
return tmp + handle.get();
}
With svn r156097, it fails to compile:
$ g++-4.5-r156097 -std=c++0x -c n3000.cpp
n3000.cpp: In function 'int work(int)':
n3000.cpp:8:57: error: no matching function for call to
'async(work(int)::<lambda()>)'
n3000.cpp:8:57: error: unable to deduce 'auto' from '<expression error>'
It also fails with `auto handle = std::async(work2, value);`
$ g++-4.5-r156097 -v
Using built-in specs.
COLLECT_GCC=g++-4.5-r156097
COLLECT_LTO_WRAPPER=/usr/local/gcc-4.5-r156097/libexec/gcc/x86_64-unknown-linux-gnu/4.5.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-svn/configure --enable-languages=c,c++
--prefix=/usr/local/gcc-4.5-r156097 --program-suffix=-4.5-r156097
Thread model: posix
gcc version 4.5.0 20100120 (experimental) (GCC)
--
Summary: [C++0x] std::async fails to compile with simple tests,
including N3000 example
Product: gcc
Version: 4.5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: lloyd at randombit dot net
GCC build triplet: x86_64-unknown-linux-gnu
GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42819
- Follow-Ups:
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: jwakely dot gcc at gmail dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: jwakely dot gcc at gmail dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: jwakely dot gcc at gmail dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: lloyd at randombit dot net
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: jwakely dot gcc at gmail dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: jwakely dot gcc at gmail dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: jwakely dot gcc at gmail dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: jwakely dot gcc at gmail dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: jwakely dot gcc at gmail dot com
- [Bug libstdc++/42819] [C++0x] std::async fails to compile with simple tests, including N3000 example
- From: paolo dot carlini at oracle dot com