On 6/23/23 07:41, Maciej W. Rozycki wrote:
On Fri, 23 Jun 2023, Thomas Bogendoerfer wrote:
Zero-length arrays are deprecated, and we are replacing them with flexible
array members instead. So, replace zero-length array with flexible-array
member in struct memmap.
Technically it is a semantics bug fix actually, as the TURBOchannel
firmware specification (from Jan 1993) says it's:
typedef struct{ int pagesize; unsigned char bitmap[];}memmap;
int getbitmap(memmap *map);
(formatting preserved as in the document) so it should have always been a
flexible array member. Maybe old (2.x) GCC versions had an issue with it
or something, as otherwise I can't imagine why whoever added our typedef
did it differently from the spec.
Apparently, flexible-array members were supported in some 2.x versions as an
extension to the language; and it was not until GCC 3.0 that they were fully
supported by the compiler.
applied to mips-next.
Not sure if you can retrofit it, but:
Acked-by: Maciej W. Rozycki <macro@xxxxxxxxxxx>
Thanks!
--
Gustavo