#ifndef REGTEST\r
#include <_PDCLIB_locale.h>\r
\r
- _PDCLIB_wcinfo_t _PDCLIB_wcinfo[] = {\r
+const _PDCLIB_wcinfo_t _PDCLIB_wcinfo[] = {\r
// { value,\tflags,\tlower,\tupper\t}, // name\r
""")\r
for line in in_file:\r
num, bits, lower_case, upper_case, name))\r
out_file.write('};\n\n')\r
out_file.write("""\r
-size_t _PDCLIB_wcinfo_size = sizeof(_PDCLIB_wcinfo) / sizeof(_PDCLIB_wcinfo[0]);\r
+const size_t _PDCLIB_wcinfo_size = sizeof(_PDCLIB_wcinfo) / sizeof(_PDCLIB_wcinfo[0]);\r
#endif\r
\r
#ifdef TEST\r
} _PDCLIB_wcinfo_t;
struct _PDCLIB_locale {
- _PDCLIB_charcodec_t _Codec;
+ const _PDCLIB_charcodec_t _Codec;
struct lconv _Conv;
/* ctype / wctype */
- _PDCLIB_wcinfo_t *_WCType;
+ /* XXX: Maybe re-evaluate constness of these later on? */
+ const _PDCLIB_wcinfo_t *_WCType;
_PDCLIB_size_t _WCTypeSize;
- _PDCLIB_ctype_t *_CType;
+ const _PDCLIB_ctype_t *_CType;
/* perror/strerror */
char *_ErrnoStr[_PDCLIB_ERRNO_MAX];
return true;
}
-struct _PDCLIB_charcodec _PDCLIB_ascii_codec = {
+const struct _PDCLIB_charcodec _PDCLIB_ascii_codec = {
.__mbsinit = ascii_mbsinit,
.__mbstoc32s = asciitoc32,
.__c32stombs = c32toascii,
return true;
}
-struct _PDCLIB_charcodec _PDCLIB_latin1_codec = {
+const struct _PDCLIB_charcodec _PDCLIB_latin1_codec = {
.__mbsinit = latin1_mbsinit,
.__mbstoc32s = latin1toc32,
.__c32stombs = c32tolatin1,
END_CONVERSION;
}
-struct _PDCLIB_charcodec _PDCLIB_utf8_codec = {
+const struct _PDCLIB_charcodec _PDCLIB_utf8_codec = {
.__mbsinit = utf8_mbsinit,
.__mbstoc32s = utf8toc32,
.__c32stombs = c32toutf8,
1 kByte (+ 4 byte) of <ctype.h> data.
Each line: flags, lowercase, uppercase, collation.
*/
-static
-_PDCLIB_ctype_t global_ctype[] = {
+static const _PDCLIB_ctype_t global_ctype[] = {
{ /* EOF */ 0, 0, 0, 0 },
{ /* NUL */ _PDCLIB_CTYPE_CNTRL, 0x00, 0x00, 0x00 },
{ /* SOH */ _PDCLIB_CTYPE_CNTRL, 0x01, 0x01, 0x01 },
{ 0x00, 0xFF, 0xFF, 0xFF }
};
-extern struct _PDCLIB_charcodec _PDCLIB_ascii_codec;
+extern const struct _PDCLIB_charcodec _PDCLIB_ascii_codec;
struct _PDCLIB_locale _PDCLIB_global_locale = {
._Codec = &_PDCLIB_ascii_codec,
._Conv = {
1 kByte (+ 4 byte) of <ctype.h> data.
Each line: flags, lowercase, uppercase, collation.
*/
-static
-_PDCLIB_ctype_t global_ctype[] = {
+static const _PDCLIB_ctype_t global_ctype[] = {
{ /* EOF */ 0, 0, 0, 0 },
{ /* NUL */ _PDCLIB_CTYPE_CNTRL, 0x00, 0x00, 0x00 },
{ /* SOH */ _PDCLIB_CTYPE_CNTRL, 0x01, 0x01, 0x01 },
{ 0x00, 0xFF, 0xFF, 0xFF }
};
-extern struct _PDCLIB_charcodec _PDCLIB_ascii_codec;
+extern const struct _PDCLIB_charcodec _PDCLIB_ascii_codec;
struct _PDCLIB_locale _PDCLIB_global_locale = {
._Codec = &_PDCLIB_ascii_codec,
._Conv = {