The general model of a scope is that it is a sequence of declarations. The declarations are further divided into overload sets. Each overload set contains a declset : all the declarations in that scope for the same name with the same type.
The existing implementation impl::unique_decl contains singleton_overload, which is logically backward. Fixed with this patch. Now, a homogeneous_scope is a sequence of singleton_overload s. Each singleton_overload, in turn, contains a decl(set).
The general model of a scope is that it is a sequence of declarations. The declarations are further divided into overload sets. Each overload set contains a declset : all the declarations in that scope for the same name with the same type.
The existing implementation
impl::unique_decl
containssingleton_overload
, which is logically backward. Fixed with this patch. Now, ahomogeneous_scope
is a sequence ofsingleton_overload
s. Eachsingleton_overload
, in turn, contains a decl(set).