title: Propagating optional arguments
body: <p>The following code does not compile.</p>
  
  <pre><code>type A(?arg) =
    member __.Arg : string option = arg
  
  type B(?arg) =
    inherit A(arg) //ERROR expected type string but has type 'a option
  </code></pre>
  
  <p>I assume this is because an instance of the underlying type of the option must be provided, and the compiler handles passing <code>Some</code>/<code>None</code> based on syntax.</p>
  
  <p>Assuming my assumption has been correctly assumed, is there a workaround for this? Is it possible to propagate optional arguments?</p>