Я просто как бы не понимаю предложение "если наборы объявлений S (f, B i) и S (f, C) различаются" в [class.member.lookup] раздел, чем отличаются объявления, за исключением того, что их типы различны, например, если два объявления объявлены одинаковым типом, но они объявлены в разных областях соответственно, то, отличаются ли эти два объявления? Например:
#include <iostream>
int main(){
void func(int); //#1
{
void func(int); //#2
}
}
Итак, # 1 и # 2 - это разные объявления? Они имеют один и тот же тип, просто объявляются в разной области видимости. Если они различаются, где в кавычках в стандарте Internation это сказано?