Proposed resolution [SUPERSEDED]:
Change in 6.3 [basic.def.odr] paragraph 6 through 8 as follows:
A structured binding is odr-used
if it appears asby a potentially-evaluated expression E if it is named by E.*this is odr-used if this appears as a potentially-evaluated expression (including as the result of the implicit transformation in the body of a non-static member function (11.4.3 [class.mfct.non.static])).
A virtual member function is odr-used if it is not pure. A function is odr-used by
if it is named bya potentially-evaluated expression or conversion E if it is named by E. A non-placement allocation or deallocation function for a class is odr-used by the definition of a constructor of that class. A non-placement deallocation function for a class is odr-used by the definition of the destructor of that class, or by being selected by the lookup at the point of definition of a virtual destructor (11.4.7 [class.dtor]). [ Footnote: ... ]
Change in 6.9.3.3 [basic.start.dynamic] paragraph 4 as follows:
A non-initialization odr-use of an entity is the evaluation of an expression that odr-usesan odr-use(6.3 [basic.def.odr]) the entity where the evaluation is not caused directly or indirectly by the initialization of a non-block static or thread storage duration variable.