Interesting question. The obvious return value would be the vector (or whatever) that the operation takes place on, so you could then write code like:
if ( v.push_back(42).size() > n ) {
// do something
}
I personally don't like this style, but I can't think of a good reason not to support it.