will Generic type's features/Operator overloading improved in C# 5.0?
===

I know there are many question on SO like this  
`"Operator 'whatever' cannot be applied to operands of type 'T'` (whatever may be ++, += or <= etc. etc. But bear with me, I wanna ask something different.

Let's say I have this code

    public class GenericCls<T> where T : struct
    {
        public static T AddValues(params T[] values)
        {
            T sum = default(T);
            if (values != null)
            {
                for (int i = 0; i < values.Length; i++)
                {
                    sum += values[i];
                }
            }
            return sum;
        }
    }

even though I've made my type struct, and value type I get the error
`Operator '+=' cannot be applied to operands of type 'T' and 'T'`

If I try to be subtle and apply the ValueType constraint, it says
`Constraint cannot be special class 'System.ValueType'`

If I try to turn the parameter in for loop to type T, and do this..

    public class GenericCls<T> where T : struct, IComparable<T>, IEquatable<T>
    {
        public static T AddValues(params T[] values)
        {
            T sum = default(T);
            if (values != null)
            {
                for (T i = default(T); i < values.Length; i++)
                {
                    sum += values[i];
                }
            }
            return sum;
        }
    }

I still get errors 

`Operator '<' cannot be applied to operands of type 'T' and 'int'`  
`Operator '++' cannot be applied to operand of type 'T'`  
`Cannot implicitly convert type 'T' to 'int'`  

No matter what, I can't get it to work. I am using VS2010 (C# 4.0, .NET 4.0). So I wanna know when C# 5.0 would be finally released with VS2012 (as far as I know they are still in beta stage right?) would it take care of these issues? Or are we again left with so many restriction on usage of Generics?
