On 8/27/19 4:23 PM, Paul Eggert wrote:
Paul Smith wrote:
I saw this warning on Windows as well.  I seem to recall that this was
done on purpose to pack data structures more tightly, which can save a
lot of memory on large build systems.

However looking at it now I don't think it will actually end up saving
any space.

I don't either. In a struct, 'unsigned int foo : 8;' should behave like 'unsigned short foo : 8;', and similarly if you change 'short' to 'char', or change '8' to '1'. At least, that should be true for typical compilers (the C standard doesn't say exactly what should happen).


Could this be a good time to point to stdint.h and uintX_t for X bits?
May clarify matters.  However that leads to another funny question.
I have been running configure over and over on various machines with c99
type CFLAGS and also without them. One thing I do see is configure seems
to be happy about "checking for good max_align_t" where we get a no for
C99 and a yes if I specify no language standard at all. Well max_align_t
is a C11 type of concept and seems to have no bearing on the build or
tests running regardless.

So I have to ask is GNU Make shooting for C89 or C99 type dialect ?


Dennis

_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make

Reply via email to