Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice

Mono Upgrade v5.5.0b7 - Project instant crashes when choosing v4.6 API Compatibility Level

Discussion in 'Experimental Scripting Previews' started by strich, Oct 15, 2016.

  1. strich

    strich

    Joined:
    Aug 14, 2012
    Posts:
    375
    Bug: Case 841552

    I like to test our game War for the Overworld, for science, whenever a new Mono Upgrade beta pops up. Two hours of library building later I have some bugs for ya'll! Enjoy.

    Almost the moment I select the v4.6 API compatibility level the project instantly crashes. The Editor.log provides no information at all sadly. The good thing is that if I manually set the compatibility level via the ProjectSettings file, and then reload the Editor, it will compile fine. Our project has a number of DLLs, both native C and C#, and have always caused UE to crash when recompiling during play mode - So it is likely that for whatever reason not everything is being correctly unloaded prior to switching to v4.6.
     
  2. Vagabond_

    Vagabond_

    Joined:
    Aug 26, 2014
    Posts:
    1,148
    Hi, i just downloaded the new version and i am having the same issue... Not able to switch to 4.6 in this release as well like in the previous... And i want to test some new feature in C# sooo bad :D

    VS shows an address where it crashes - if it helps to the devs !

    5_5_VS_DBG.png
     
  3. Dizzy-Dalvin

    Dizzy-Dalvin

    Joined:
    Jul 4, 2013
    Posts:
    54
    Yeah, I get this too. Even though it's already set to .NET 4.6, when I try to re-select it from the dropdown Unity crashes.
     
  4. JoshPeterson

    JoshPeterson

    Unity Technologies

    Joined:
    Jul 21, 2014
    Posts:
    6,938
    Thanks all, we'll investigate this bug report!
     
  5. JJJohan

    JJJohan

    Joined:
    Mar 18, 2016
    Posts:
    214
    I've attached a crashdump for you guys. The callstack is a bit odd, as if it's crashing writing to a log file?

    Code (CSharp):
    1. >    mono-2.0-sgen.dll!abort() Line 77    C++
    2.      mono-2.0-sgen.dll!mono_log_write_logfile(const char * log_domain, GLogLevelFlags level, int hdr, const char * message) Line 137    C
    3.      mono-2.0-sgen.dll!monoeg_g_logv(const char * log_domain, GLogLevelFlags log_level, const char * format, char * args) Line 112    C
    4.      mono-2.0-sgen.dll!monoeg_g_log(const char * log_domain, GLogLevelFlags log_level, const char * format, ...) Line 123    C
    5.      mono-2.0-sgen.dll!mono_gchandle_get_target(unsigned int gchandle) Line 315    C
    6.      Unity.exe!CustomPopupMenuInterface::Execute(const MenuItem & menuItem) Line 111    C++
    7.      Unity.exe!MenuController::ExecuteMenuItem(MenuItem & item) Line 304    C++
    8.      Unity.exe!ShowDelayedContextMenu() Line 904    C++
    9.      Unity.exe!GUIView::OnInputEvent(InputEvent & event) Line 2313    C++
    10.      Unity.exe!GUIView::ProcessInputEvent(InputEvent & event) Line 39    C++
    11.      Unity.exe!GUIView::ProcessEventMessages(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 1093    C++
    12.      Unity.exe!GUIView::GUIViewWndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 1305    C++
    13.      user32.dll!00007ff955405e60()    Unknown
    14.      user32.dll!00007ff955405925()    Unknown
    15.      Unity.exe!MainMessageLoop() Line 368    C++
    16.      Unity.exe!WinMain(HINSTANCE__ * hInst, HINSTANCE__ * hPrev, char * szCmdLine, int nCmdShow) Line 1024    C++
    17.      Unity.exe!__tmainCRTStartup() Line 275    C
    18.      kernel32.dll!00007ff9556aef44()    Unknown
    19.      ntdll.dll!00007ff9558ef411()    Unknown
    20.  
     

    Attached Files:

  6. JoshPeterson

    JoshPeterson

    Unity Technologies

    Joined:
    Jul 21, 2014
    Posts:
    6,938
    @JJJohan


    Excellent, thanks! This is actually an assert in Mono, not really a log message. We must be hitting some code path that was not present before. We will track this down.
     
  7. aybeone

    aybeone

    Joined:
    May 24, 2015
    Posts:
    107
    For what it's worth,

    I've been able to test the experimental build by first enabling .NET 4.6 in a project using 5.5.0b4, then I opened the project with 5.5.0b7 :)
     
  8. JoshPeterson

    JoshPeterson

    Unity Technologies

    Joined:
    Jul 21, 2014
    Posts:
    6,938
    @aybe

    Thanks for the information. I think that we have tracked down the cause of this issue, and it should be corrected in the next preview build.
     
  9. aybeone

    aybeone

    Joined:
    May 24, 2015
    Posts:
    107
    Thank you, it's really exciting to be able to leverage .NET 4.6 :)