Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在某些方法中,编译会省略固定块后的代码_C#_Visual Studio 2013_Il - Fatal编程技术网

C# 在某些方法中,编译会省略固定块后的代码

C# 在某些方法中,编译会省略固定块后的代码,c#,visual-studio-2013,il,C#,Visual Studio 2013,Il,在我们的一个项目中,我们在一个类中使用了以下方法: private方法() { //为简洁起见,省略了该方法的开头 var nv=新矢量4[x]; 固定(矢量4*vp=nv) { 固定(浮点*tp=/*源浮点ptr*/) { 固定(双*ap=/*源双ptr*/) { 对于(var i=atlArray.Length-1;i>=0;--i) { vp[((i+1)我的同事,也就是受此影响的机器的开发人员,发现构建的诊断输出中存在差异-它是C#编译器。我们认为MSBuild在预期的位置(C:\Pro

在我们的一个项目中,我们在一个类中使用了以下方法:

private方法()
{
//为简洁起见,省略了该方法的开头
var nv=新矢量4[x];
固定(矢量4*vp=nv)
{
固定(浮点*tp=/*源浮点ptr*/)
{
固定(双*ap=/*源双ptr*/)
{
对于(var i=atlArray.Length-1;i>=0;--i)
{

vp[((i+1)我的同事,也就是受此影响的机器的开发人员,发现构建的诊断输出中存在差异-它是C#编译器。我们认为MSBuild在预期的位置(C:\Program Files(x86)\MSBuild\12.0\Bin)使用了csc.exe,但奇怪的是,它实际上是在C:\Users\[user]中执行csc.exe\AppData\Local\Microsoft\VisualStudio\12.0\Extensions,其版本完全不同。我们不知道该编译器可执行文件是如何出现的,也不知道它是如何被MSBuild引用的,但一旦将其删除,MSBuild将恢复为在其主Bin目录中使用csc.exe版本,并且代码现在正在正确生成。

I这不是Roslyn编译器吗?我在C:\Users\Svick\AppData\Local\Microsoft\VisualStudio\12.0\Extensions\2wcdsxyh.slm\rcsc.exe中有它。如果是这样的话,你可能会想要。@Svick这是一个有趣的线索-我会在周一从我的同事那里了解他是否安装了Roslyn编译器,如果他安装了,我会向Roslyn团队报告这个问题。我会回来报到的。
IL_03a1:  nop
IL_03a2:  ldc.i4.0
IL_03a3:  conv.u
IL_03a4:  stloc.s    ap
IL_03a6:  ret
IL_03a5:  nop
IL_03a6:  ldc.i4.0
IL_03a7:  conv.u
IL_03a8:  stloc.s    ap
IL_03aa:  nop
IL_03ab:  ldc.i4.0
IL_03ac:  conv.u
IL_03ad:  stloc.s    tp
IL_03af:  nop
IL_03b0:  ldc.i4.0
IL_03b1:  conv.u
IL_03b2:  stloc.s    vp
IL_03b4:  ldarg.0
IL_03b5:  ldloc.s    nts
IL_03b7:  stfld      string[] N.B.E.B::ts
IL_03bc:  ldarg.0
IL_03bd:  ldloc.s    nttp
IL_03bf:  stfld      valuetype [SharpDX]SharpDX.Vector2[] N.B.E.B::ttp
IL_03c4:  ldarg.0
IL_03c5:  ldloc.s    nv
IL_03c7:  call       instance void N.B.E.B::set_V(valuetype [SharpDX]SharpDX.Vector4[])
IL_03cc:  nop
IL_03cd:  ret