You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
- 02111-1307, USA. */
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ 02110-1301, USA. */
#include <config.h>
#include "data-in.h"
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
-#include "bool.h"
+#include <stdbool.h>
#include "error.h"
-#include "getline.h"
+#include "getl.h"
#include "calendar.h"
#include "lexer.h"
#include "magic.h"
#include "settings.h"
#include "str.h"
#include "var.h"
-\f
-#include "debug-print.h"
+#include "gettext.h"
+#define _(msgid) gettext (msgid)
+
+#include "debug-print.h"
\f
/* Specialized error routine. */
return false;
}
- if (have_char (i)
- && (tolower (*i->s) == 'e' || tolower (*i->s) == 'd'
- || (type == FMT_E && (*i->s == '+' || *i->s == '-'))))
+ if (have_char (i) && strchr ("eEdD-+", *i->s))
{
/* Get the exponent specified after the `e' or `E'. */
long exp;
static inline bool
parse_IB (struct data_in *i)
{
+#ifndef WORDS_BIGENDIAN
char buf[64];
+#endif
const char *p;
unsigned char xor;
p = i->s;
#else
memcpy (buf, i->s, i->e - i->s);
- mm_reverse (buf, i->e - i->s);
+ buf_reverse (buf, i->e - i->s);
p = buf;
#endif
if ((ep->can_abbreviate
&& lex_id_match_len (ep->name, strlen (ep->name), name, length))
|| (!ep->can_abbreviate && length == strlen (ep->name)
- && !memcmp (name, ep->name, length)))
+ && !buf_compare_case (name, ep->name, length)))
{
*output = ep->value;
return true;
{
const struct fmt_desc *const fmt = &formats[i->format.type];
+ assert (check_input_specifier (&i->format, 0));
+
/* Check that we've got a string to work with. */
if (i->e == i->s || i->format.w <= 0)
{