Bug 5627 - Creating outlet in Interface Builder results in "Error updating Objective-C type information."
Summary: Creating outlet in Interface Builder results in "Error updating Objective-C t...
Status: RESOLVED DUPLICATE of bug 5441
Alias: None
Product: iOS
Classification: Xamarin
Component: General ()
Version: 5.3.x
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: Untriaged
Assignee: Bugzilla
Depends on:
Reported: 2012-06-13 02:32 UTC by Kerry Street
Modified: 2012-06-13 15:26 UTC (History)
1 user (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Kerry Street 2012-06-13 02:32:41 UTC

    Launching Xcode Interface Builder by double-clicking a ViewController.xib from within MonoDevelop results in the error, "Error updating Objective-C type information.", inside of MonoDevelop after you create an Outlet in IB and return to MonoDevelop.

Steps to Reproduce: Minimized, easy-to-follow steps that will trigger the bug. Include any special setup steps.

    1)  Create a new Empty iPhone project in MonoTouch.

    2)  Add a new iPhone View Controller named MainViewController

    3)  From MonoDevelop 3.0.2 double-click MainViewController.xib 
    to launch Interface Builder in Xcode 4.3.2.  

    4)  Drag a Label control onto the View.

    5)  Hold control and drag/drop the line under the @interface definition in
    the .h file and choose Connection type Outlet, Name = TestLabel, "Connect"

    6)  Verify @property (retain, nonatomic) IBOutlet UILabel *TestLabel;
    gets added to the .h file.

    7)  Switch back to MonoDevelop 3.0.2. to get error message.  

Actual Results:

    Receive the error inside of MonoDevelop 3.0.2 of:
    "Error updating Objective-C type information.
     Both arguments to IsDerivedFrom() must be from the same compilation."
     System.InvalidOperationException: Both arguments to IsDerivedFrom() must
     be from the same compilation.
     at ICSharpCode.NRefactory.TypeSystem.ExtensionMethods.IsDerivedFrom
     (ITypeDefinition type, ITypeDefinition baseType) [0x00029] in /Users

Expected Results:

    Unknown.  I assume for this error to just not occur.  This was my first attempt to use Mono, MonoDevelop, and MonoTouch, so I am not sure what to expect other than no error.

Additional Information:

MB Pro
Mac OS X Lion 10.7.4 (11E53)
2.4 GHz Intel Core i5
4 GB 1067 MHz DDR3
Intel HD Graphics 288 MB

Xcode Version 4.3.2 (4E2002)
MonoDevelop 3.0.2
MonoTouch version and Mono Version?? = 
whatever MonoTouch installer would have picked on 6/12/2012.
My Mac Book Pro did not have Mono, MonoDevelop, or  MonoTouch on it 
before today when the MonoTouch installer installed all its pre-reqs.

I am reading the book, "Mobile Development with C#" 
and doing first code exercise in Chapter 2 on ebook PDF pages 12-15.
As soon as I finish creating the "Outlet" or "Action" on the MainViewController and try to go back to MonoDevelop I get the error described above.

Ref - Book source code I was trying to manually recreate when this happened:
Comment 1 Jeffrey Stedfast 2012-06-13 11:53:39 UTC

*** This bug has been marked as a duplicate of bug 5441 ***
Comment 2 Kerry Street 2012-06-13 15:26:54 UTC
I upgraded to MonoDevelop Beta and it seems to have resolved this issue.