This question is locked. New answers and comments are not allowed.
The C# increment operator does not translate to VB correctly.
x++ is a postfix increment operation. The result of the operation is the value of the operand before it has been incremented.
y = x--;
Converts to...
y = System.Math.Max(System.Threading.Interlocked.Decrement(x),x + 1)
Correct.
y = x++;
Converts to...
y = System.Math.Max(System.Threading.Interlocked.Increment(x),x - 1)
WRONG!
should be
y = System.Math.Min(System.Threading.Interlocked.Increment(x),x - 1)