#include <iostream>
#include <initializer_list>
struct A {
A(const std::initializer_list<int>&) { puts("initializer_list<int>"); } // (1)
A(const std::initializer_list<float>&) { puts("initializer_list<float>"); } // (2)
A(double) { puts("A(double)"); } // (3)
};
int main() {
A var{ 1.1 };
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW5pdGlhbGl6ZXJfbGlzdD4KCnN0cnVjdCBBIHsKCUEoY29uc3Qgc3RkOjppbml0aWFsaXplcl9saXN0PGludD4mKSB7IHB1dHMoImluaXRpYWxpemVyX2xpc3Q8aW50PiIpOyB9CQkvLyAoMSkKCUEoY29uc3Qgc3RkOjppbml0aWFsaXplcl9saXN0PGZsb2F0PiYpIHsgcHV0cygiaW5pdGlhbGl6ZXJfbGlzdDxmbG9hdD4iKTsgfQkvLyAoMikKCUEoZG91YmxlKSB7IHB1dHMoIkEoZG91YmxlKSIpOyB9CQkJCQkJCQkJCQkvLyAoMykKfTsKCmludCBtYWluKCkgewoJQSB2YXJ7IDEuMSB9Owp9