This is a migrated thread and some comments may be shown as answers.

Decompile of VB code fails

4 Answers 209 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Top achievements
Rank 1
Chris asked on 21 Jul 2011, 08:42 PM


I had some code that I was testing the decompiler with, the code caused the code to fail and I narrowed to down to the following.

JustDecompile Version: 2011.1.719.9


Module Module1
  Sub Main()
  End Sub
  Public Function Test(value As Object) As String
      Return value
    Catch ex As Exception
      Throw New InvalidCastException(value)
    End Try
  End Function
End Module


When decompiling the Test function the following error is raised

Current member / type: System.String JustDecompileVbException.Module1::Test(System.Object)
File path: D:\Source\NGTests\Framework 4.0\JustDecompileVbException\bin\Debug\JustDecompileVbException.exe
Stack empty.
   at ..()
   at ..(MethodReference method)
   at ..OnCall(Instruction instruction)
   at ..(Instruction instruction, IInstructionVisitor visitor)
   at Telerik.JustDecompiler.Decompiler.StatementDecompiler.(Instruction instruction)
   at Telerik.JustDecompiler.Decompiler.StatementDecompiler.(InstructionBlock block)
   at Telerik.JustDecompiler.Decompiler.StatementDecompiler.€(InstructionBlock block)
   at Telerik.JustDecompiler.Decompiler.StatementDecompiler.()
   at Telerik.JustDecompiler.Decompiler.StatementDecompiler.Process(DecompilationContext context, BlockStatement body)
   at Telerik.JustDecompiler.Decompiler.DecompilationPipeline.Run(MethodBody body, ILanguage language)
   at Telerik.JustDecompiler.Decompiler.Extensions.(DecompilationPipeline pipeline, ILanguage language, MethodBody body)
   at Telerik.JustDecompiler.Languages.BaseImperativeLanguageWriter.Write(MethodDefinition method)
   at Telerik.JustDecompiler.Languages.BaseLanguageWriter.Write(IMemberDefinition member, Boolean showCompilerGeneratedMembers)
   at JustDecompile.CodeViewer.CodeWriter.Write() in c:\B\Behemoth\JustDecompile Production Build\Sources\UI\JustDecompile.CodeViewer\Writers\CodeWriter.cs:line 34
   at JustDecompile.CodeViewer.ViewModels.CodeViewerViewModel.(AssemblyMemberNode member, CancellationToken cancellationToken) in c:\B\Behemoth\JustDecompile Production Build\Sources\UI\JustDecompile.CodeViewer\ViewModels\CodeViewerViewModel.cs:line 116

The problem occurs when decompiling to C# or VB.NET, the IL is fine however, here is the IL

.method public static
    string Test (
        object 'value'
    ) cil managed
    .locals init (
        [0] string Test,
        [1] class [mscorlib]System.Exception ex
    IL_0000: nop
    IL_0001: nop
        IL_0002: ldarg.0
        IL_0003: call string [Microsoft.VisualBasic]Microsoft.VisualBasic.CompilerServices.Conversions::ToString(object)
        IL_0008: stloc.0
        IL_0009: leave.s IL_0029
        IL_000b: leave.s IL_0028
    catch [mscorlib]System.Exception
        IL_000d: dup
        IL_000e: call void [Microsoft.VisualBasic]Microsoft.VisualBasic.CompilerServices.ProjectData::SetProjectError(class [mscorlib]System.Exception)
        IL_0013: stloc.1
        IL_0014: nop
        IL_0015: ldarg.0
        IL_0016: call string [Microsoft.VisualBasic]Microsoft.VisualBasic.CompilerServices.Conversions::ToString(object)
        IL_001b: newobj instance void [mscorlib]System.InvalidCastException::.ctor(string)
        IL_0020: throw
        IL_0021: call void [Microsoft.VisualBasic]Microsoft.VisualBasic.CompilerServices.ProjectData::ClearProjectError()
        IL_0026: leave.s IL_0028
    IL_0028: nop
    IL_0029: ldloc.0
    IL_002a: ret





4 Answers, 1 is accepted

Sort by
Yordan Dikov
Telerik team
answered on 29 Jul 2011, 03:30 PM
Hi Chris,

 Please accept my apologies for the late response. Thank you for reporting this issue to us. We have successfully reproduced it and we'll fix it. Please stay tuned.

Best wishes,
Yordan Dikov
the Telerik team

Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get now >>

Top achievements
Rank 1
answered on 20 Feb 2014, 12:56 PM
Any movement on this issue? I'm experiencing the same problem. See attachments showing VB.Net source and decompiled output. Although I detest VB.Net, I have no choice in this.

Telerik team
answered on 24 Feb 2014, 02:05 PM
Hello Patrick,

Unfortunately we haven't fixed the issue yet. We have it logged but still haven't worked on it. I'm sorry for our slowness. I'll make sure that we review it and work on it as soon as possible. I'll follow up with you once we have some resolution here.

Kind regards,
Tell us what you think about JustDecompile. Your opinion matters! You can use our forum, or our JustDecompile UserVoice website for feature requests.
Top achievements
Rank 1
answered on 27 Feb 2014, 12:40 PM
Unfortuately that doesn't help
General Discussions
Asked by
Top achievements
Rank 1
Answers by
Yordan Dikov
Telerik team
Top achievements
Rank 1
Telerik team
Share this question