/****************************************************************************
- * Copyright (c) 1998,2005,2007 Free Software Foundation, Inc. *
+ * Copyright (c) 1998,2009,2010 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
/*
Version Control
- $Id: gen.c,v 1.47 2007/04/07 22:29:23 tom Exp $
+ $Id: gen.c,v 1.53 2010/05/01 17:08:30 tom Exp $
--------------------------------------------------------------------------*/
/*
This program generates various record structures and constants from the
to produce the real source.
*/
+#ifdef HAVE_CONFIG_H
#include <ncurses_cfg.h>
+#else
+#include <ncurses.h>
+#define HAVE_USE_DEFAULT_COLORS 1
+#endif
#include <stdlib.h>
#include <stddef.h>
int l = 0;
*high = -1;
- *low = 8 * len;
+ *low = (int)(8 * len);
for (i = 0; i < len; i++, s++)
{
}
l++;
if (little_endian)
- *s >>= 1;
+ {
+ *s >>= 1;
+ }
else
- *s <<= 1;
+ {
+ *s = (char)(*s << 1);
+ }
}
}
else
* bit size, i.e. they fit into an (u)int or a (u)short.
*/
static void
- gen_reps
- (const name_attribute_pair * nap, /* array of name_attribute_pair records */
- const char *name, /* name of the represented record type */
- int len, /* size of the record in bytes */
- int bias)
+gen_reps(
+ const name_attribute_pair * nap, /* array of name_attribute_pair records */
+ const char *name, /* name of the represented record type */
+ int len, /* size of the record in bytes */
+ int bias)
{
int i, n, l, cnt = 0, low, high;
int width = strlen(RES_NAME) + 3;
for (i = 0; nap[i].name != (char *)0; i++)
{
cnt++;
- l = strlen(nap[i].name);
+ l = (int)strlen(nap[i].name);
if (l > width)
width = l;
}
static void
chtype_rep(const char *name, attr_t mask)
{
- attr_t x = -1;
+ attr_t x = (attr_t)-1;
attr_t t = x & mask;
int low, high;
int l = find_pos((char *)&t, sizeof(t), &low, &high);
mrep_rep("Z", &x);
memset(&x, 0, sizeof(x));
- x.bstate = -1;
+ x.bstate = (mmask_t) - 1;
mrep_rep("Bstate", &x);
printf(" end record;\n");
chtype attr = A_ATTRIBUTES & ~A_COLOR;
int start = -1;
int len = 0;
- int i, set;
+ int i;
+ chtype set;
for (i = 0; i < (int)(8 * sizeof(chtype)); i++)
{
- set = attr & 1;
+ set = (attr & 1);
if (set)
{
if (start < 0)
{
printf(" type C_ACS_Map is array (Character'Val (0) .. Character'Val (127))\n");
printf(" of Attributed_Character;\n");
-#if USE_REENTRANT
+#if USE_REENTRANT || BROKEN_LINKER
printf(" type C_ACS_Ptr is access C_ACS_Map;\n");
printf(" function ACS_Map return C_ACS_Ptr;\n");
- printf(" pragma Import (C, ACS_Map, \"_nc_acs_map\");\n");
+ printf(" pragma Import (C, ACS_Map, \""
+ NCURSES_WRAP_PREFIX
+ "acs_map\");\n");
#else
printf(" ACS_Map : C_ACS_Map;\n");
printf(" pragma Import (C, ACS_Map, \"acs_map\");\n");
printf(" function %s return %s\n", ada_func, ada_type);
printf(" is\n");
printf(" function Result return %s;\n", c_type);
- printf(" pragma Import (C, Result, \"_nc_%s\");\n", c_var);
+ printf(" pragma Import (C, Result, \"" NCURSES_WRAP_PREFIX "%s\");\n", c_var);
printf(" begin\n");
if (strcmp(c_type, ada_type))
printf(" return %s (Result);\n", ada_type);
printf(" %-16s : constant Color_Number := %d;\n", name, value);
}
-#define HAVE_USE_DEFAULT_COLORS 1
-
/*
* Generate all color definitions
*/
static void
gen_color(void)
{
-#ifdef HAVE_USE_DEFAULT_COLORS
+#if HAVE_USE_DEFAULT_COLORS
color_def("Default_Color", -1);
#endif
#ifdef COLOR_BLACK
*etimin = code;
if (code > *etimax)
*etimax = code;
- return strlen(buf);
+ return (int)strlen(buf);
}
static void
}
printf(" subtype Eti_Error is C_Int range %d .. %d;\n\n",
etimin, etimax);
- printf(buf);
+ printf("%s", buf);
}
break;
default: