Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-12-03Make Main method publicMarek Safar
2006-05-18The 'piece de resistance' -- the culmination of the re-factoring effort :-)Raja R Harinath
In mcs: Fix #77869, #76148, #77755, #75255 and a host of other bugs. This is still "wrong", but anything better would probably need a multi-pass algorithm. * flowanalysis.cs (FlowBranchingLabeled): Salt away a copy of the usage vector. Force current usage vector to be reachable, to optimistically signify backward jumps. (FlowBranchingLabeled.LookupLabel): Note if a backward jump is detected. (FlowBranchingLabeled.Merge): New. If no backward jump was detected, return the original salted-away usage vector instead, updated with appropriate changes. Print unreachable warning if necessary. * statement.cs (Block.Resolve): Don't print unreachable warning on a labeled statement. In gmcs: Fix #77869, #76148, #77755, #75255 and a host of other bugs. This is still "wrong", but anything better would probably need a multi-pass algorithm. * flowanalysis.cs (FlowBranchingLabeled): Salt away a copy of the usage vector. Force current usage vector to be reachable, to optimistically signify backward jumps. (FlowBranchingLabeled.LookupLabel): Note if a backward jump is detected. (FlowBranchingLabeled.Merge): New. If no backward jump was detected, return the original salted-away usage vector instead, updated with appropriate changes. Print unreachable warning if necessary. * statement.cs (Block.Resolve): Don't print unreachable warning on a labeled statement. In tests: * test-514.cs: New test from #76148. * test-515.cs, test-516.cs: New tests based on #77755. * test-517.cs: New test based on #75255. In errors: * cs0162-6.cs, cs0162-7.cs: New tests for unreachable code. Emitting the warning on cs0162-7.cs needs a multi-pass algorithm. * cs0165-12.cs: New test from #77869. svn path=/trunk/mcs/; revision=60813