Re: [Vala] ellipsis forwarding



On Fri, Apr 16, 2010 at 02:27:24PM +0200, JM wrote:
Hello

Is there anybody who made has some experiences with ellipsis?
I wrote the following code:
____

void add_vals(string first_property_name, ...) {
      var l = va_list();
      print("\n1:\t%s-%s\n\t%s-%s\n\n",first_property_name,
                 l.arg<string>(), l.arg<string>(), l.arg<string>());
      add_vals_valist(first_property_name, l);
}

void add_vals_valist(string first_property_name, ...) {
      var l = va_list();
      print("\n2:\t%s-%s\n\t%s-%s\n\n", first_property_name, 
               l.arg<string>(), l.arg<string>(), l.arg<string>());
}

This is completely broken, va_list is different than ellipsis. You can't
pass a va_list that way, the signature should be: add_vals_valist(string
first_property_name, va_list l).
That I know it's not possible to forward arguments to another function with
ellipsis because of C/assembly calls limitations.

-- 
http://www.debian.org - The Universal Operating System

Attachment: signature.asc
Description: Digital signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]