The build took 00h 01m 29s and was SUCCESSFUL.
The program in this build is written in the following languages, according to sloccount:
SLOC | Language |
---|---|
5,633 |
ansic |
78 |
makefile |
5,711 |
total |
The process tree of the build process is here.
Several sub-process invocations were improper; see the process tree for details. Summary:
To avoid scrolling, you may jump to the last line of the
invocation of makepkg
that was used to build this
package.
Removed vanilla repositories from pacman.conf and added:
There were existing files in /sysroot, using those
CMD: sudo -u tuscan PATH=/sysroot/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin CC=clang CXX=clang++ red makepkg --noextract --syncdeps --skipinteg --skippgpcheck --skipchecksums --noconfirm --nocolor --log --noprogressbar --nocheck
==> Making package: dmidecode 3.0-1 (Wed Apr 5 00:12:04 UTC 2017)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Starting build()...
gcc -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef -D_FILE_OFFSET_BITS=64 -O2 -c dmidecode.c -o dmidecode.o
gcc -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef -D_FILE_OFFSET_BITS=64 -O2 -c dmiopt.c -o dmiopt.o
gcc -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef -D_FILE_OFFSET_BITS=64 -O2 -c dmioem.c -o dmioem.o
gcc -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef -D_FILE_OFFSET_BITS=64 -O2 -c util.c -o util.o
dmioem.c:192:34: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
printf("\tSignature: 0x%08x", DWORD(data + 0x04));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:197:8: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (DWORD(data + 0x04) == 0x55524324)
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:199:17: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
u64 paddr = QWORD(data + 0x08);
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:200:16: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
paddr.l += DWORD(data + 0x14);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:201:19: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (paddr.l < DWORD(data + 0x14))
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:205:34: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
printf("\tLength: 0x%08x\n", DWORD(data + 0x10));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:217:41: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
printf("\tPower Features: 0x%08x\n", DWORD(data + 0x04));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:219:41: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
printf("\tOmega Features: 0x%08x\n", DWORD(data + 0x08));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:221:11: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
feat = DWORD(data + 0x10);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:256:10: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
cap = WORD(data + 0x04);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:262:66: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
printf("\tFunction bitmap for Application Button: 0x%04hx\n", WORD(data + 0x06));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:263:60: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
printf("\tFunction bitmap for Media Button: 0x%04hx\n", WORD(data + 0x08));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:264:62: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
printf("\tFunction bitmap for Display Button: 0x%04hx\n", WORD(data + 0x0A));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmioem.c:265:61: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
printf("\tFunction bitmap for Others Button: 0x%04hx\n", WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:511:12: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
prefix, WORD(p + sizeof(u16) * i));
^~~~~~~~~~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:906:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x28) : data[0x06];
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:1000:12: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
u16 dx = WORD(p);
^~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:1011:12: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
u16 dx = WORD(p);
^~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:1068:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
eax = DWORD(p);
^~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:1069:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
edx = DWORD(p + 4);
^~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:1088:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
edx = DWORD(p + 4);
^~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:1127:13: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
u16 code = WORD(p);
^~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:1347:12: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
prefix, WORD(p + sizeof(u16) * i));
^~~~~~~~~~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:2012:12: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
prefix, WORD(p + 3 * i + 1),
^~~~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:2061:41: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
printf(" Index 0x%04X, Data 0x%04X", WORD(p), WORD(p + 2));
^~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:2061:50: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
printf(" Index 0x%04X, Data 0x%04X", WORD(p), WORD(p + 2));
^~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:2064:22: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
printf(" 0x%08X", DWORD(p));
^~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:2067:22: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
printf(" 0x%04X", WORD(p));
^~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3031:16: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
prefix, i, WORD(p + 3 * i + 1));
^~~~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3063:17: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
u64 address = QWORD(p);
^~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3172:12: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
prefix, WORD(p + 0x01));
^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3185:22: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
printf("0x%04x", WORD(p + 0x05));
^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3188:22: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
printf("0x%08x", DWORD(p + 0x05));
^~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3252:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (WORD(data + 0x06) != 0)
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3255:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x06));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3257:38: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_bios_runtime_size((0x10000 - WORD(data + 0x06)) << 4);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3263:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
dmi_bios_characteristics(QWORD(data + 0x0A), "\t\t");
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3323:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x0B));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3358:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x0D));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3411:25: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_processor_cache(WORD(data + 0x1A), "L1", ver);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3414:25: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_processor_cache(WORD(data + 0x1C), "L2", ver);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3417:25: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_processor_cache(WORD(data + 0x1E), "L3", ver);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3431:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x2A) : data[0x23]);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3435:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x2C) : data[0x24]);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3439:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x2E) : data[0x25]);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3441:34: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_processor_characteristics(WORD(data + 0x26), "\t\t");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3460:33: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_controller_speeds(WORD(data + 0x09), "\t\t");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3462:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_module_types(WORD(data + 0x0B), "\n\t\t");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3486:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_module_types(WORD(data + 0x07), " ");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3504:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x05) & 0x0080 ? "Enabled" : "Disabled",
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3505:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x05) & 0x0008 ? "Socketed" : "Not Socketed",
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3506:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
(WORD(data + 0x05) & 0x0007) + 1);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3508:21: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_cache_mode((WORD(data + 0x05) >> 8) & 0x0003));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3510:25: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_cache_location((WORD(data + 0x05) >> 5) & 0x0003));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3512:19: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_cache_size(WORD(data + 0x09));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3515:19: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_cache_size(WORD(data + 0x07));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3518:20: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_cache_types(WORD(data + 0x0B), "\n\t\t");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3521:20: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_cache_types(WORD(data + 0x0D), " ");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3569:30: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_slot_segment_bus_func(WORD(data + 0x0D), data[0x0F], data[0x10], "\t");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3616:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x04));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3618:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x06));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3619:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (WORD(data + 0x08) - WORD(data + 0x06))
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3619:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (WORD(data + 0x08) - WORD(data + 0x06))
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3621:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x08) - WORD(data + 0x06),
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3621:26: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x08) - WORD(data + 0x06),
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3622:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x08) - WORD(data + 0x06) > 1 ? "s" : "");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3622:26: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x08) - WORD(data + 0x06) > 1 ? "s" : "");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3624:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x08));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3634:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x0C));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3654:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (DWORD(data + 0x07) == 0x80000000)
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3659:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
dmi_print_memory_size(QWORD(data + 0x0F), 0);
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3666:18: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
capacity.l = DWORD(data + 0x07);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3673:35: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_array_error_handle(WORD(data + 0x0B));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3677:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x0D));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3686:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x04));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3688:35: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_array_error_handle(WORD(data + 0x06));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3692:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_device_width(WORD(data + 0x08));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3695:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_device_width(WORD(data + 0x0A));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3698:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (h->length >= 0x20 && WORD(data + 0x0C) == 0x7FFF)
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3699:37: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_memory_device_extended_size(DWORD(data + 0x1C));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3701:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_device_size(WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3715:34: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_device_type_detail(WORD(data + 0x13));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3719:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_device_speed(WORD(data + 0x15));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3739:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_device_speed(WORD(data + 0x20));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3743:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_voltage_value(WORD(data + 0x22));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3746:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_voltage_value(WORD(data + 0x24));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3749:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_memory_voltage_value(WORD(data + 0x26));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3763:30: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_memory_error_syndrome(DWORD(data + 0x07));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.cgcc -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef -D_FILE_OFFSET_BITS=64 -O2 -c biosdecode.c -o biosdecode.o
:3766:35: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_32bit_memory_error_address(DWORD(data + 0x0B));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3769:35: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_32bit_memory_error_address(DWORD(data + 0x0F));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3772:35: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_32bit_memory_error_address(DWORD(data + 0x13));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3779:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (h->length >= 0x1F && DWORD(data + 0x04) == 0xFFFFFFFF)
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3783:13: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
start = QWORD(data + 0x0F);
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3784:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
end = QWORD(data + 0x17);
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3796:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x04) >> 2,
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3797:7: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
(DWORD(data + 0x04) & 0x3) << 10);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3799:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x08) >> 2,
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3800:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
((DWORD(data + 0x08) & 0x3) << 10) + 0x3FF);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3802:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_mapped_address_size(DWORD(data + 0x08) - DWORD(data + 0x04) + 1);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3802:50: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_mapped_address_size(DWORD(data + 0x08) - DWORD(data + 0x04) + 1);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3807:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3815:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (h->length >= 0x23 && DWORD(data + 0x04) == 0xFFFFFFFF)
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3819:13: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
start = QWORD(data + 0x13);
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3820:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
end = QWORD(data + 0x1B);
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3832:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x04) >> 2,
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3833:7: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
(DWORD(data + 0x04) & 0x3) << 10);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3835:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x08) >> 2,
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3836:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
((DWORD(data + 0x08) & 0x3) << 10) + 0x3FF);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3838:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_mapped_address_size(DWORD(data + 0x08) - DWORD(data + 0x04) + 1);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3838:50: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_mapped_address_size(DWORD(data + 0x08) - DWORD(data + 0x04) + 1);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3844:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3846:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
14 warnings generated.
WORD(data + 0x0E));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3886:26: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_battery_capacity(WORD(data + 0x0A), 1);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3888:26: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_battery_capacity(WORD(data + 0x0A), data[0x15]);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3891:24: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_battery_voltage(WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3901:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x10));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3904:14: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
1980 + (WORD(data + 0x12) >> 9),
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3905:7: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
(WORD(data + 0x12) >> 5) & 0x0F,
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3906:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x12) & 0x1F);
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3911:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x16));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3928:27: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_system_reset_count(WORD(data + 0x05));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3931:27: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_system_reset_count(WORD(data + 0x07));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3934:27: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_system_reset_timer(WORD(data + 0x09));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3937:27: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_system_reset_timer(WORD(data + 0x0B));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
gcc -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef -D_FILE_OFFSET_BITS=64 -O2 -c ownership.c -o ownership.o
dmidecode.c:3972:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_voltage_probe_value(WORD(data + 0x06));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3975:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_voltage_probe_value(WORD(data + 0x08));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3978:33: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_voltage_probe_resolution(WORD(data + 0x0A));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3981:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_voltage_probe_value(WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3984:23: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_probe_accuracy(WORD(data + 0x0E));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3987:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x10));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3990:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_voltage_probe_value(WORD(data + 0x14));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3997:37: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (!(opt.flags & FLAG_QUIET) && WORD(data + 0x04) != 0xFFFF)
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:3999:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x04));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4008:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x08));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4011:29: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_cooling_device_speed(WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4027:32: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_temperature_probe_value(WORD(data + 0x06));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4030:32: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_temperature_probe_value(WORD(data + 0x08));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4033:37: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_temperature_probe_resolution(WORD(data + 0x0A));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4036:32: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_temperature_probe_value(WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4039:23: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_probe_accuracy(WORD(data + 0x0E));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4042:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x10));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4045:32: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_temperature_probe_value(WORD(data + 0x14));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4059:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_current_probe_value(WORD(data + 0x06));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4062:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_current_probe_value(WORD(data + 0x08));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4065:33: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_current_probe_resolution(WORD(data + 0x0A));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4068:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_current_probe_value(WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4071:23: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_probe_accuracy(WORD(data + 0x0E));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4074:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x10));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4077:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_current_probe_value(WORD(data + 0x14));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4098:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x08) >> 16,
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4099:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x08) & 0xFFFF);
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4101:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x0C));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4121:30: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_memory_error_syndrome(DWORD(data + 0x07));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4124:35: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
dmi_64bit_memory_error_address(QWORD(data + 0x0B));
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4127:35: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
dmi_64bit_memory_error_address(QWORD(data + 0x13));
^~~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4130:35: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_32bit_memory_error_address(DWORD(data + 0x1B));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4142:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(data + 0x06));
^~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4155:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x05));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4157:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x07));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4158:9: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (WORD(data + 0x09) != 0xFFFF)
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4160:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x09));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4167:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (WORD(data + 0x04) != 0x8000)
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4169:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
(i16)WORD(data + 0x04));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4170:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (WORD(data + 0x06) != 0x8000)
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:106:3: warning: dmidecode.ccast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]:
4172:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
DWORD(p + 0x0C));
^~~~~~~~~~~~~~~
(i16)WORD(data + 0x06));
^~~~~~~~~~~~~~~~~
./types.h:58:./types.h25::57 :note24: :expanded from macro 'DWORD'
note: expanded from macro 'WORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
#define WORD(x) (u16)(*(const u16 *)(x)) ^~~~~~~~~~~~~~~~
^~~~~~~~~~~~~~~~
dmidecode.cbiosdecode.c::4173108::83:: warningwarning: : cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
if (WORD(data + 0x08) != 0x8000) QWORD(p + 0x10).h, QWORD(p + 0x10).l);
^~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~
./types.h./types.h::5759::2420:: notenote: : expanded from macro 'WORD'expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~
biosdecode.c:108:22: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
dmidecode.c:4175:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
QWORD(p + 0x10).h, QWORD(p + 0x10).l);
^~~~~~~~~~~~~~~
./types.h:59:20: (i16)WORD(data + 0x08));note
: ^~~~~~~~~~~~~~~~~expanded from macro 'QWORD'
./types.h:57:24: note: #define QWORD(x) (*(const u64 *)(x))expanded from macro 'WORD'
^~~~~~~~~~~~~~~~
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4176:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (WORD(data + 0x0A) != 0x8000)
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4178:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
(i16)WORD(data + 0x0A));
biosdecode.c ^~~~~~~~~~~~~~~~~
:128:./types.h3::57 :warning24: :cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
note: expanded from macro 'WORD'
WORD(p + 0x16));
^~~~~~~~~~~~~~
#define WORD(x) (u16)(*(const u16 *)(x))./types.h
: ^~~~~~~~~~~~~~~~57
:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4179:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
biosdecode.c:130: if (WORD(data + 0x0C) != 0x8000)3
: ^~~~~~~~~~~~~~~~~
warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
./types.h:57:24: note: expanded from macro 'WORD' DWORD(p + 0x18));
^~~~~~~~~~~~~~~
./types.h:58:25: #define WORD(x) (u16)(*(const u16 *)(x))note
: ^~~~~~~~~~~~~~~~expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4181:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]biosdecode.c
:132:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
(i16)WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
WORD(p + 0x1C));
./types.h ^~~~~~~~~~~~~~:
57:24./types.h:: 57note:: 24expanded from macro 'WORD':
note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~
biosdecode.c:134:3:dmidecode.c warning:: 4182cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]:
8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(p + 0x08));
^~~~~~~~~~~~~~
./types.h:57:24: if (WORD(data + 0x0E) != 0x8000)note
: ^~~~~~~~~~~~~~~~~expanded from macro 'WORD'
./types.h:57:24: note: #define WORD(x) (u16)(*(const u16 *)(x))expanded from macro 'WORD'
^~~~~~~~~~~~~~~~
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4184:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
(i16)WORD(data + 0x0E));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:154:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(p + 0x06));
^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:156:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(p + 0x08));
^~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:158:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(p + 0x0C));
^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:169:9: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
return WORD(p + 0x08);
^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:174:33: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (len < 0x11 || !checksum(p, WORD(p + 0x08)))
^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4263:27: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_power_supply_power(WORD(data + 0x0C));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
biosdecode.c:181:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
DWORD(p + 0x0A));
^~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4266:8: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (WORD(data + 0x0E) & (1 << 1))
^~~~~~~~~~~~~~~~~
./types.h:57:biosdecode.c24::183 :note3: :expanded from macro 'WORD'
warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
#define WORD(x) (u16)(*(const u16 *)(x)) WORD(p + 0x0E));
^~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4268:31: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_power_supply_status((WORD(data + 0x0E) >> 7) & 0x07));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4273:28: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_power_supply_type((WORD(data + 0x0E) >> 10) & 0x0F));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
biosdecode.c#define WORD(x) (u16)(*(const u16 *)(x))
: ^~~~~~~~~~~~~~~~217
:26: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
pnp_event_notification(WORD(p + 0x06) & 0x03));
^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
dmidecode.c#define WORD(x) (u16)(*(const u16 *)(x))
: ^~~~~~~~~~~~~~~~4275
:39: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_power_supply_range_switching((WORD(data + 0x0E) >> 3) & 0x0F));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
biosdecode.c:218:7: warning#define WORD(x) (u16)(*(const u16 *)(x)):
cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align] ^~~~~~~~~~~~~~~~
if ((WORD(p + 0x06) & 0x03) == 0x01)
^~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4277:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(data + 0x0E) & (1 << 2) ? "No" : "Yes");
^~~~~~~~~~~~~~~~~
biosdecode.c./types.h::22057::424:: warningnote: : cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]expanded from macro 'WORD'
DWORD(p + 0x09));#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4279:5: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
biosdecode.c:222:3: WORD(data + 0x0E) & (1 << 0) ? "Yes" : "No");warning
: ^~~~~~~~~~~~~~~~~cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
./types.h:57:24: note: expanded from macro 'WORD'
WORD(p + 0x0F), WORD(p + 0x0D));
^~~~~~~~~~~~~~
./types.h:57:24#define WORD(x) (u16)(*(const u16 *)(x)):
^~~~~~~~~~~~~~~~note
: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:222:19: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(p + 0x0F), WORD(p + 0x0D));
^~~~~~~~~~~~~~
./types.h:57dmidecode.c:24::4283 :note9: :expanded from macro 'WORD'
warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
if (WORD(data + 0x10) != 0xFFFF)
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:224:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(p + 0x1B));
^~~~~~~~~~~~~~
./types.hdmidecode.c:57::428524::7 :note : warningexpanded from macro 'WORD':
cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
#define WORD(x) (u16)(*(const u16 *)(x)) WORD(data + 0x10));
^~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:226:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmidecode.c DWORD(p + 0x13) + WORD(p + 0x11));
: ^~~~~~~~~~~~~~~4286
:9: ./types.hwarning:: 58cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]:
25: note: expanded from macro 'DWORD'
if (WORD(data + 0x12) != 0xFFFF)
^~~~~~~~~~~~~~~~~
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~./types.h
:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~biosdecode.c
:226:21: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
DWORD(p + 0x13) + WORD(p + 0x11));
^~~~~~~~~~~~~~
./types.h:57:24:dmidecode.c note:: 4288expanded from macro 'WORD':
7: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
WORD(data + 0x12));
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:228:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmidecode.c: DWORD(p + 0x1D));4289
: ^~~~~~~~~~~~~~~9
: warning: ./types.hcast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]:
58:25: note: expanded from macro 'DWORD'
if (WORD(data + 0x14) != 0xFFFF)
^~~~~~~~~~~~~~~~~
#define DWORD(x) (u32)(*(const u32 *)(x))./types.h
: ^~~~~~~~~~~~~~~~57
:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:229:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmidecode.c:4291 if (DWORD(p + 0x17) != 0):7
: ^~~~~~~~~~~~~~~
warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
./types.h:58:25: note: expanded from macro 'DWORD'
WORD(data + 0x14));
^~~~~~~~~~~~~~~~~
./types.h:57:24#define DWORD(x) (u32)(*(const u32 *)(x)):
^~~~~~~~~~~~~~~~note
: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4311:30: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_slot_segment_bus_func(WORD(data + 0x07), data[0x09], data[0x0A], "\t");
^~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:270:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(p + 16));
^~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:275:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (DWORD(p + 20) > len || !checksum(p, DWORD(p + 20)))
^~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:275:42: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (DWORD(p + 20) > len || !checksum(p, DWORD(p + 20)))
^~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:278:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (DWORD(p + 20) < 32) return 1;
^~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:281:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
QWORD(p + 24).h, QWORD(p + 24).l);
^~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:281:20: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
QWORD(p + 24).h, QWORD(p + 24).l);
^~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:323:3: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(p + 0x04));
^~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:356:9: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
return WORD(p + 6);
^~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:dmidecode.c363:31:: 4358warning:: 14cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]:
warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
if (len < 32 || !checksum(p, WORD(p + 6))) h->handle = WORD(data + 2);
^~~~~~~~~~~~~~ ^~~~~~~~~~~
./types.h./types.h::5757::2424:: notenote: : expanded from macro 'WORD'expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~
biosdecode.c:371:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
pir_irqs(WORD(p + 10));
^~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:373:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (DWORD(p + 12) != 0)
^~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:375:4: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(p + 12), WORD(p + 14));
^~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:375:18: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(p + 12), WORD(p + 14));
^~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:376:6: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
if (DWORD(p + 16) != 0)
^~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:378:4: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
DWORD(p + 16));
^~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:380:20: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
for (i = 1; i <= (WORD(p + 6) - 32) / 16; i++)
^~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:457:19: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
p[8 + i * 10], DWORD(p + 9 + i * 10),
^~~~~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
biosdecode.c:458:4: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(p + 13 + i * 10));
^~~~~~~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4594:11: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u64 *' increases required alignment from 1 to 4 [-Wcast-align]
offset = QWORD(buf + 0x10);
^~~~~~~~~~~~~~~~~
./types.h:59:20: note: expanded from macro 'QWORD'
#define QWORD(x) (*(const u64 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4602:5: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
WORD(buf + 0x0C), 0, ver, devmem, flags | FLAG_STOP_AT_EOT);
^~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4651:12: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_table(DWORD(buf + 0x18), WORD(buf + 0x16), WORD(buf + 0x1C),
^~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4651:31: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_table(DWORD(buf + 0x18), WORD(buf + 0x16), WORD(buf + 0x1C),
^~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4651:49: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_table(DWORD(buf + 0x18), WORD(buf + 0x16), WORD(buf + 0x1C),
^~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
gcc -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef -D_FILE_OFFSET_BITS=64 -O2 -c vpddecode.c -o vpddecode.o
dmidecode.c:4679:12: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
dmi_table(DWORD(buf + 0x08), WORD(buf + 0x06), WORD(buf + 0x0C),
^~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4679:31: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_table(DWORD(buf + 0x08), WORD(buf + 0x06), WORD(buf + 0x0C),
^~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
dmidecode.c:4679:49: warning: cast from 'u8 *' (aka 'unsigned char *') to 'const u16 *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
dmi_table(DWORD(buf + 0x08), WORD(buf + 0x06), WORD(buf + 0x0C),
^~~~~~~~~~~~~~~~
./types.h:57:24: note: expanded from macro 'WORD'
#define WORD(x) (u16)(*(const u16 *)(x))
^~~~~~~~~~~~~~~~
ownership.c:108:11: warning: cast from 'const u8 *' (aka 'const unsigned char *') to 'const u32 *' (aka 'const unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
return DWORD(p + 9 + i * 10);
^~~~~~~~~~~~~~~~~~~~~
./types.h:58:25: note: expanded from macro 'DWORD'
#define DWORD(x) (u32)(*(const u32 *)(x))
^~~~~~~~~~~~~~~~
1 warning generated.
gcc -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef -D_FILE_OFFSET_BITS=64 -O2 -c vpdopt.c -o vpdopt.o
gcc ownership.o util.o -o ownership
gcc vpddecode.o vpdopt.o util.o -o vpddecode
42 warnings generated.
gcc biosdecode.o util.o -o biosdecode
182 warnings generated.
gcc dmidecode.o dmiopt.o dmioem.o util.o -o dmidecode
==> Entering fakeroot environment...
==> Starting package()...
install -m 755 -d /tmp/dmidecode/pkg/dmidecode/usr/bin
install -m 755 -d /tmp/dmidecode/pkg/dmidecode/usr/share/man/man8
install -m 755 -d /tmp/dmidecode/pkg/dmidecode/usr/share/doc/dmidecode
for program in dmidecode biosdecode ownership vpddecode ; do \
install -m 755 $program /tmp/dmidecode/pkg/dmidecode/usr/bin ; done
for program in dmidecode biosdecode ownership vpddecode ; do \
install -m 644 man/$program.8 /tmp/dmidecode/pkg/dmidecode/usr/share/man/man8 ; done
install -m 644 README /tmp/dmidecode/pkg/dmidecode/usr/share/doc/dmidecode
install -m 644 CHANGELOG /tmp/dmidecode/pkg/dmidecode/usr/share/doc/dmidecode
install -m 644 AUTHORS /tmp/dmidecode/pkg/dmidecode/usr/share/doc/dmidecode
==> Tidying install...
-> Removing doc files...
-> Purging unwanted files...
==> Checking for packaging issue...
==> Creating package "dmidecode"...
-> Generating .PKGINFO file...
-> Generating .BUILDINFO file...
error: invalid option '--noprogressbar'
-> Generating .MTREE file...
-> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: dmidecode 3.0-1 (Wed Apr 5 00:12:06 UTC 2017)
CMD: pacman --query --file dmidecode-3.0-1-x86_64.pkg.tar.xz
Creating hybrid package for 'dmidecode'
Trying to find vanilla package 'dmidecode'...
CMD: pacman --query --file /mirror/dmidecode-3.0-1.pkg.tar.xz
Package file has the following structure:
/.PKGINFO
/.MTREE
/usr/bin/dmidecode
/usr/bin/biosdecode
/usr/bin/ownership
/usr/bin/vpddecode
/usr/share/man/man8/dmidecode.8.gz
/usr/share/man/man8/biosdecode.8.gz
/usr/share/man/man8/ownership.8.gz
/usr/share/man/man8/vpddecode.8.gz
/usr/share/doc/dmidecode/README
/usr/share/doc/dmidecode/CHANGELOG
/usr/share/doc/dmidecode/AUTHORS
Generating .MTREE
CMD: bsdtar -czf .MTREE --format=mtree --options=!all,use-set,type,uid,mode,time,size,md5,sha256,link .PKGINFO usr
Tar-ing up files
CMD: bsdtar -cf - .PKGINFO usr .MTREE
CMD: xz -c -z
Successfully ran bsdtar -cf - .PKGINFO usr .MTREE | xz -c -z
CMD: bsdtar -tqf dmidecode.pkg.tar.xz .PKGINFO
Created package at path /var/cache/pacman/pkg/dmidecode.pkg.tar.xz
Attempting to access local repository, attempt 1
CMD: repo-add /var/cache/pacman/pkg/tuscan.db.tar /var/cache/pacman/pkg/dmidecode.pkg.tar.xz
==> Extracting database to a temporary location...
==> Extracting database to a temporary location...
==> Adding package '/var/cache/pacman/pkg/dmidecode.pkg.tar.xz'
-> Computing checksums...
-> Creating 'desc' db entry...
-> Creating 'files' db entry...
==> Creating updated database file '/var/cache/pacman/pkg/tuscan.db.tar'