Skip to content

Incompatible example with CWG 1395 #2559

Closed
@xskxzr

Description

@xskxzr

From this SO answer, the example in [temp.func.order]/5:

template<class T, class... U> void f(T, U...);          // #1
template<class T            > void f(T);                // #2
template<class T, class... U> void g(T*, U...);         // #3
template<class T            > void g(T);                // #4

void h(int i) {
  f(&i);                                                // error: ambiguous
  g(&i);                                                // OK: calls #3
}

is incompatible with [temp.deduct.partial]/11. f(&i) should call #2.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions