code class="ml">let f : no * int -&gt; unit = function _ -&gt; . </code></pre><p>However it doesn't work for sum types: the <code>no</code> type need to appear directly in the pattern:</p><pre><code class="ml">type complex_empty = A of no | B of no
let f : complex_empty = function _ -&gt; . (* does not compile *)
let f : complex_empty = function A _ | B _ -&gt; . (* compiles *)</code></pre><p>In case this behavior is needed, there <a href="../Ast/index.html#destr"><span>Destructors</span></a> in <a href="..