mirror of https://github.com/icsharpcode/ILSpy.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
1.8 KiB
66 lines
1.8 KiB
Clean Up |
|
-------- |
|
|
|
Move MapVariable from CodeGen into Block? |
|
|
|
Improve test: |
|
|
|
Necesitamos que a-capture8.cs pruebe si la asignacion funciona o no. |
|
|
|
Audit: |
|
|
|
Al emitir instancias de variables |
|
(EmitCaptureVariableInstance) parece ser que el loop de iteracion: |
|
|
|
while (si.ScopeBlock.ID != li.Block.ID) |
|
|
|
está mas actulizado que el codigo similar para parámetros, es posible |
|
que sea bitrot de parámetros o que en los parámetros usamos otra estrategia |
|
(lo segundo es más razonable). |
|
|
|
Iteradores: |
|
|
|
En algún lugar no pongo el `FieldBuilder' a un valor con los |
|
iteradores, ver expression.cs: 3616, local_info.FieldBuilder es nulo. |
|
|
|
Parameters: |
|
|
|
a-parameter4.cs falla por que no se liga el método anónimo |
|
anidado con el padre. |
|
|
|
Cleanup: |
|
|
|
CaptureContext cc = ContextForParameter (ec.CurrentBlock.Toplevel, name); |
|
if (cc != this){ |
|
cc.EmitParameter (ec, name); |
|
return; |
|
} |
|
|
|
That should be a static method, and call the instance method |
|
in the right CaptureContext, instead of having the CaptureContext |
|
compute that itself. |
|
|
|
MakePinned is gone: |
|
|
|
Need to audit the code now that use DeclareLocal, and that this uses |
|
a differnent code path than the main mcs. |
|
|
|
Need to fix the order in which types are closed: currently we are not |
|
compatible with the MS requirement that the parent has to be created |
|
before the children are. |
|
|
|
Tests and pending features: |
|
|
|
Switch statement is broken (because it uses ILGenerator during |
|
the Resolve phase, which with the `anonymous' branch is no longer |
|
the case: so we have to delay the creation of labels until they |
|
are needed, during the Emit phase). |
|
|
|
Validation: |
|
|
|
For testing, set ec.IG == null during resolve, restore value |
|
for emit. |
|
|
|
Currently it is commented out: there is a bug in the |
|
statement.cs changes (see the old-statement.cs, the compiler |
|
fails during bootstrap)
|
|
|