[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug-gperf] Change to size_t makes gperf 3.1 incompatible with code writ
Alvaro G. M.
[bug-gperf] Change to size_t makes gperf 3.1 incompatible with code written for 3.0.4
Thu, 19 Jan 2017 11:29:32 +0100
I'm a user of gperf and I sometimes contribute to buildroot
(https://buildroot.org/), which allows for easy compilation of packages and
bundling them into a root filesystem.
When upgrading gperf to recent release, we've come to notice that gperf
users usually hardcode function prototypes, as (const char *str, unsigned len);
However, latest change from unsigned to size_t, even though perfectly
reasonable, produces a mismatch between function and its prototype, so code
written for gperf 3.0.4 output isn't able to compile using gperf 3.1 output.
I've searched on buildroot's package database and these packages require
modifications to work with gperf 3.1:
eudev, libsvgtiny, systemd, webkitgtk, libcap, qt5webkit, kodi
I was wondering if gperf could possibly include a compatibility option,
enabled by default, so that code generated maintains the old prototype and
only uses size_t when explicitly asked for.
Otherwise, I think this version could have been maybe named 4.0, so as to
make this incompatibility clearer?
Well, thanks for this new release anyway, I'm personally very happy with the
addition of --constants-prefix parameter!
Alvaro G. M.
|[Prev in Thread]
||[Next in Thread]|
- [bug-gperf] Change to size_t makes gperf 3.1 incompatible with code written for 3.0.4,
Alvaro G. M. <=