You're right, I've looked at the source, and VLD does not seem to differentiate between delete and delete[], or for that matter new and new[].
It's also possible to mix new[] and free, without any warning or memory leak being detected.
It's also possible to mix new[] and free, without any warning or memory leak being detected.