NH-3675

https://nhibernate.jira.com/browse/NH-3675
Initial implementation with unit tests
That may be a special case, because the compiler notices that the variable is not being used. But like I said, in general, ++c is more optimized because it does not require a temporary variable:

//pseudocode
int PreIncrement(int n)
{
    return n + 1;
}

int PostIncrement(int n)
{
    var m = n;
    n = n + 1;
    return m;
}