Robert MacLean
3 August 2011
Found this little C# compiler optimisation which is really cool. Here is start code
int y = 0;
int x = 10;
if (x * 0 == 0)
{
y = 123;
}
Console.WriteLine(y);
If you know a bit of math, anything multiplied by 0 always equals 0 (line 4). So the compiler optimises that out and then because x is never used that is also optimised out and you end up with
int y = 0;
if (0 == 0)
{
y = 123;
}
Console.WriteLine(y);
So very smart