diff options
| author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2020-10-19 03:37:33 +0200 |
|---|---|---|
| committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2020-10-19 03:37:33 +0200 |
| commit | efa1869dd78b2a4f7cef19e52a586a0b2bc2b0fb (patch) | |
| tree | 90716dbb742c65efd7b4032dee174af020912be0 /evaluate.c | |
| parent | 6746138ae86af0e850fd155b43a8a0b9c398d907 (diff) | |
| parent | e5fcbcae746e3956c24a5a4e87853a1d6ae75d27 (diff) | |
| download | sparse-dev-efa1869dd78b2a4f7cef19e52a586a0b2bc2b0fb.tar.gz | |
Merge branch 'warn-address-builtin' into next
Diffstat (limited to 'evaluate.c')
| -rw-r--r-- | evaluate.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -1787,6 +1787,8 @@ static struct symbol *degenerate(struct expression *expr) expression_error(expr, "strange non-value function or array"); return &bad_ctype; } + if (ctype->builtin) + sparse_error(expr->pos, "taking the address of built-in function '%s'", show_ident(ctype->ident)); *expr = *expr->unop; ctype = create_pointer(expr, ctype, 1); expr->ctype = ctype; @@ -1807,6 +1809,8 @@ static struct symbol *evaluate_addressof(struct expression *expr) return NULL; } ctype = op->ctype; + if (ctype->builtin) + sparse_error(expr->pos, "taking the address of built-in function '%s'", show_ident(ctype->ident)); *expr = *op->unop; mark_addressable(expr); |
