forked from OSchip/llvm-project
31 lines
522 B
C++
31 lines
522 B
C++
|
// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s
|
||
|
|
||
|
template<typename T, typename U>
|
||
|
struct pair {};
|
||
|
|
||
|
template<typename T, typename U>
|
||
|
struct map {
|
||
|
typedef pair<T,U> *iterator;
|
||
|
iterator begin();
|
||
|
iterator end();
|
||
|
};
|
||
|
|
||
|
template<typename T, typename U>
|
||
|
pair<T,U> &tie(T &, U &);
|
||
|
|
||
|
int foo(map<char*,int> &m) {
|
||
|
char *p;
|
||
|
int n;
|
||
|
|
||
|
for (pair<char*,int> x : m) {
|
||
|
(void)x;
|
||
|
}
|
||
|
|
||
|
for (tie(p, n) : m) { // expected-error {{for range declaration must declare a variable}}
|
||
|
(void)p;
|
||
|
(void)n;
|
||
|
}
|
||
|
|
||
|
return n;
|
||
|
}
|