Note that this is related to a previous bug report.
I have a solution with two C# projects and one F# project where one of the C# projects references the F# project. Both the C# project and the referenced F# project have direct references to a COM .dll file since a reference to the associated .tlb file won't let itself be added to the F# project.
When the solution is built, the following warning is generated:
------ Rebuild All started: Project: Specifyx, Configuration: Debug Any CPU ------
warning CS1762: A reference was created to embedded interop assembly 'c:\Program Files (x86)\Sparx Systems\EA\Interop.EA.dll' because of an indirect reference to that assembly created by assembly 'c:\Users\fred\Documents\Visual Studio 2010\Projects\Specifyx\Backend\bin\Debug\Specifyx.Backend.dll'. Consider changing the 'Embed Interop Types' property on either assembly.
Specifyx is the C# project; Specifyx.Backend.dll is the assembly generated by the F# project.
If the reference in the C# project is change so that Embed Interop Types = false, the build fails with the following errors:
C:\Users\fred\documents\visual studio 2010\Projects\Specifyx\Specifyx\Connector.cs(145,40): error CS0266: Cannot implicitly convert type 'object' to 'EA.Package'. An explicit conversion exists (are you missing a cast?)
C:\Users\fred\documents\visual studio 2010\Projects\Specifyx\Specifyx\Connector.cs(146,40): error CS0266: Cannot implicitly convert type 'object' to 'EA.Package'. An explicit conversion exists (are you missing a cast?)
CS1762 isn't listed in the VS2010 B2 help, BTW. Also, F# references don't provide an option to embed interop types.