Since merge of 110055 (Issue: go#20138, the clearing of maps (that is, delete all key/values from the map such that is empty) with a for ... range loop has been implemented in the compiler to emit optimized code. So go-critic could detect respective cases and suggest the necessary fix.
Before:
After:
for k := range m {
    delete(m, k)
}