Why this .NET structure in VB.NET

Code:
    Try
    ...
    Catch ex As Exception
    ...
    End Try
become something like this in IL

Code:
 IL_0045:  call       void [Microsoft.VisualBasic]Microsoft.VisualBasic.CompilerServices.ProjectData::SetProjectError(class [mscorlib]System.Exception)
    ...
 IL_0053:  call       void [Microsoft.VisualBasic]Microsoft.VisualBasic.CompilerServices.ProjectData::ClearProjectError()
I cannot understand why i get always this [Microsoft.VisualBasic] compatibility also if I removed all references to it and the try-catch is a standard .NET structure...

Someone do it?