title: Can't write CLI-Compatible Extension Methods in F#
body: <p>I have the following F# code which I am attempting to use to write extension methods for C#. I'm using F# 4.5 on .NET Core 2.2 (macOS), with C# 7.3 attempting to call the extension methods.</p>
  
  <pre><code>open System
  open System.Runtime.CompilerServices
  
  [&lt;assembly: Extension&gt;]
  do ()
  
  [&lt;Extension&gt;]
  module Extensions =
      [&lt;CompiledName("Print"); Extension&gt;]
      type System.String with
          [&lt;Extension&gt;]
          static member inline Print(str : System.String) = Console.WriteLine(str)
  
      [&lt;CompiledName("Blorp"); Extension&gt;]
          type System.Object with
              [&lt;Extension&gt;]
              static member inline Blorp(o : System.Object) = Console.WriteLine("Blorp")
  </code></pre>
  
  <p>This is mostly taken from the F# 4.1 specification, with the assembly attribute cribbed from <a href="http://www.latkin.org/blog/2014/04/30/f-extension-methods-in-roslyn/" rel="nofollow noreferrer">here</a>. I'm using JetBrains Rider and the namespace Extensions that it's under is imported properly and the method calls even get highlighted properly in the C# function body where they get called, showing their type. But when I do dotnet run, I get a CS1061 build error for both extensions, saying the instances don't contain a definition for either method and no extension methods were found. The same methods written in C# and VB.NET work fine. What am I doing wrong? Is it no longer possible to write CLI-compatible extension methods in F#?</p>