ctype: Fix bitfield types on 16-bit targets
This prevents errors like this: newlib/libc/ctype/categories.c:6:3: error: width of 'first' exceeds its type unsigned int first: 24; ^ Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
This commit is contained in:
parent
e9f223877f
commit
46ba1675c4
|
@ -1,10 +1,11 @@
|
|||
#include <wctype.h>
|
||||
#include <stdint.h>
|
||||
#include "categories.h"
|
||||
|
||||
struct _category {
|
||||
enum category cat: 8;
|
||||
unsigned int first: 24;
|
||||
unsigned short delta;
|
||||
uint_least32_t first: 24;
|
||||
uint_least16_t delta;
|
||||
} __attribute__((packed));
|
||||
|
||||
static const struct _category categories[] = {
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
/* Modified (m) 2017 Thomas Wolff: revise Unicode and locale/wchar handling */
|
||||
#include <_ansi.h>
|
||||
#include <wctype.h>
|
||||
#include <stdint.h>
|
||||
//#include <errno.h>
|
||||
#include "local.h"
|
||||
|
||||
|
@ -35,10 +36,10 @@
|
|||
enum {TO1, TOLO, TOUP, TOBOTH};
|
||||
enum {EVENCAP, ODDCAP};
|
||||
static struct caseconv_entry {
|
||||
unsigned int first: 21;
|
||||
unsigned short diff: 8;
|
||||
unsigned char mode: 2;
|
||||
int delta: 17;
|
||||
uint_least32_t first: 21;
|
||||
uint_least8_t diff: 8;
|
||||
uint_least8_t mode: 2;
|
||||
uint_least32_t delta: 17;
|
||||
} __attribute__ ((packed))
|
||||
caseconv_table [] = {
|
||||
#include "caseconv.t"
|
||||
|
|
Loading…
Reference in New Issue