this might again be a problem of the checker's internal decision logic.
invocation:
C:\SW_TOOLS-trunk\compilers\c6000_7_6_0\bin\cl6x.exe file.c --check_misra=required,advisory,-1.1,-6.3,-8.1 "file.c", line 20: warning: (MISRA-C:2004 10.1/R) The value of an expression of integer type shall not be implicitly converted to a different underlying type if the expression is not constant and is a function argument
file.c:
extern void a(void); typedef signed int si_t; static void c(si_t pc) { pc = 0; (void)(pc); } static void b(si_t * pb) { *pb = 0; } void a(void) { si_t value = 0; b(&value); c(value); }