Diag without dependencies between arguments

The ml4 "compiles" but without test so it must be very wrong

"" because new code is for trunk old is for v8.4 but I'll fix that at home ...