blob: fc343da9dab7ad674c30d49cd85a2cb988ae14df [file] [log] [blame]
/* { dg-require-effective-target alloca } */
typedef unsigned long grub_uint64_t;
typedef grub_uint64_t grub_size_t;
grub_cmdline_get (unsigned max_len, int echo_char)
{
unsigned xpos, ypos, ystart;
grub_size_t lpos, llen;
char buf[max_len];
void cl_print (int pos, int c)
{
char *p;
for (p = buf + pos; *p; p++)
{
if (xpos++ > 78)
grub_putchar ('\n');
grub_putchar (*p);
}
}
void cl_delete (unsigned len)
{
cl_set_pos ();
cl_print (lpos, ' ');
grub_memmove ();
cl_print (lpos, echo_char);
cl_set_pos ();
}
cl_delete (llen);
grub_size_t n = lpos;
cl_delete (n);
}