On Fri, Sep 6, 2019 at 2:09 AM Andrii Nakryiko <andriin@xxxxxx> wrote: > > On 9/6/19 8:31 AM, Jiri Olsa wrote: > > hi, > > when including btf.h in bpftrace, I'm getting -Wcast-qual warnings like: > > > > bpf/btf.h: In function ‘btf_var_secinfo* btf_var_secinfos(const btf_type*)’: > > bpf/btf.h:302:41: warning: cast from type ‘const btf_type*’ to type > > ‘btf_var_secinfo*’ casts away qualifiers [-Wcast-qual] > > 302 | return (struct btf_var_secinfo *)(t + 1); > > | ^ > > > > I changed the btf.h header to comply with -Wcast-qual checks > > and used const cast away casting in libbpf objects, where it's > > Hey Jiri, > > We made all those helper funcs return non-const structs intentionally to > improve their usability and avoid all those casts that you added back. > > Also, those helpers are now part of public API, so we can't just change > them to const, as it can break existing users easily. > > If there is a need to run with -Wcast-qual, we should probably disable > those checks where appropriate in libbpf code. > > So this will be a NACK from me, sorry. Same opinion. This gcc warning is bogus.