in GCC 4.4.2, the following compiles, but in GCC 4.5.0, it does not: #include <iostream> #include <math.h>
int main(int argc, char** argv) { uint32_t x = 1; uint32_t y = 2; std::make_pair<uint32_t,uint32_t>(x, y); return 0; } In GCC4.5.0 the error is: test.cpp: In function int main(int, char**): test.cpp:8:40: error: no matching function for call to make_pair(uint32_t&, uint32_t&) -- Summary: very basic regression in std::make_pair Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: critical Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: navin dot kumar at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43785