I declared a static local variable named the same as a function parameter. The compiler didn't catch the error. Is this a bug?

eTPU_C

It's not a bug; it is a problem with the C language itself. The local shadows the parameter.