static Main () : void {
def an = System.Reflection.AssemblyName ();
an.Version =
try {
null
}
finally { }
}
}
======================================================================
Relationships ID Summary
----------------------------------------------------------------------
has duplicate 0000739 Try block is not allowed inside express...
related to 0001072 Allow try inside expressions
======================================================================
----------------------------------------------------------------------
malekith - 09-15-04 00:25
----------------------------------------------------------------------
I guess we can easily make a special case for expr = try {...}. But in
general supporting try{} inside expressions will be hard (local functions
generations, lots of special cases and so on) and rarely used, so I guess
there is littele point supporting this. I guess we can easly check if the
stack is empty uppon try emission and if not -- emit an error message.
----------------------------------------------------------------------
malekith - 09-17-04 23:49
----------------------------------------------------------------------
Error message is emited now, instead of bogus IL, but the location of error
message is broken. I guess, the proper solution is to mark locations in
CG_expr tree, which would be nice to have for debugging anyway.
We could also try to make x.y = try { .. } work (def x = try {} and x =
try{} already does). This is simple transformation, but I'm not sure how
much need is there for it.
----------------------------------------------------------------------
malekith - 10-04-04 21:41
----------------------------------------------------------------------
The error location is proper now. This feature maybe would be nice to have,
but in no case it is a must-have. Thus priority lowered.
----------------------------------------------------------------------
malekith - 09-05-06 02:10
----------------------------------------------------------------------
This is somewhat irritating with list comprehensions, like in:
def l = [1,2] : IEnumerable[int]
def q = $[2*x | x in l]
----------------------------------------------------------------------
divan - 12-09-08 23:34
----------------------------------------------------------------------
Fixed on r8162.
Issue History
Date Modified Username Field Change
======================================================================
09-13-04 10:13 nazgul New Issue
09-15-04 00:25 malekith Note Added: 0000391
09-17-04 23:49 malekith Note Added: 0000408
09-17-04 23:49 malekith Priority urgent => high
09-17-04 23:49 malekith Severity crash => major
09-17-04 23:49 malekith Status new => confirmed
10-04-04 21:41 malekith Note Added: 0000459
10-04-04 21:41 malekith Priority high => low
10-04-04 21:41 malekith Description Updated
08-23-05 18:56 malekith Summary Wrong IL is generated
when stroring result of try block => cannot strore result of a try block
08-23-05 18:56 malekith Description Updated
08-14-06 21:58 nazgul Relationship added has duplicate 0000739
09-05-06 02:10 malekith Note Added: 0001440
05-06-08 22:20 divan Relationship added related to 0001072
12-09-08 23:34 divan Note Added: 0002146
12-09-08 23:34 divan Assigned To => divan
12-09-08 23:34 divan Status confirmed => resolved
12-09-08 23:34 divan Resolution open => fixed
12-09-08 23:34 divan Description Updated
======================================================================