You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The context type for an expression of the form e1[e2]++, e1[e2]--, ++e1[e2], --e1[e2] is apparently not specified.
In the case where the corresponding operator declarations have parameter types T1 and T2 for the index, the most general type that would work is the greatest lower bound of T1 and T2, so we would most likely use the standard lower bound (which is an approximation of the greatest lower bound).
classC {
T0operator[](T1 index) ...
operator[]=(T2 index, T3 value) ...
}
Xwhatever<X>() {
print(X);
throw0;
}
voidmain() {
C()[whatever()]++; // Prints the standard lower bound of `T1` and `T2`.
}