diff options
| -rw-r--r-- | sparse.c | 1 | ||||
| -rw-r--r-- | validation/context-named.c | 12 |
2 files changed, 13 insertions, 0 deletions
@@ -137,6 +137,7 @@ static int check_bb_context(struct entrypoint *ep, struct basic_block *bb, if (!insn->bb) continue; switch (insn->opcode) { + case OP_INLINED_CALL: case OP_CALL: if (!insn->func || !insn->func->sym || insn->func->type != PSEUDO_SYM) break; diff --git a/validation/context-named.c b/validation/context-named.c index d5573f4a..806d736a 100644 --- a/validation/context-named.c +++ b/validation/context-named.c @@ -465,6 +465,17 @@ static void warn_exact_fn2(void) r2(); } +static inline void need_lock3(void) __attribute__((context(TEST,1,1))) +{ +} + +static void warn_fn3(void) +{ + a2(); + need_lock3(); + r2(); +} + #define __acquire(x) __context__(x,1) #define __release(x) __context__(x,-1) @@ -513,5 +524,6 @@ context-named.c:434:14: warning: context problem in 'warn_fn' - function 'need_l context-named.c:441:15: warning: context problem in 'warn_fn2' - function 'need_lock2' expected different context context-named.c:456:20: warning: context problem in 'warn_exact_fn1' - function 'need_lock_exact' expected different context context-named.c:464:20: warning: context problem in 'warn_exact_fn2' - function 'need_lock_exact' expected different context +context-named.c:475:15: warning: context problem in 'warn_fn3' - function 'need_lock3' expected different context * check-error-end */ |
