From 154d7d3190d22f9e14734f63fdc7e5488a10eab1 Mon Sep 17 00:00:00 2001 From: Ramarren Date: Thu, 30 Jul 2009 07:08:09 +0200 Subject: [PATCH] Eliminate va_list using functions. This type is opaque and handled by C macros, which are unavailable anyway. And this will break on some systems when trying to treat in as an opaque value, because apparently on some systems it is a structure passed by value larger than a dword. In any case it is always possible to use a foreign-funcall to call the variadic versions of the functions directly, if for some reason multiple calls to single-argument functions are wrong. --- bindings.lisp | 36 ------------------------------------ grovel.lisp | 1 - inline-wrappers.lisp | 24 ------------------------ 3 files changed, 61 deletions(-) diff --git a/bindings.lisp b/bindings.lisp index 4580860..5ab59ff 100644 --- a/bindings.lisp +++ b/bindings.lisp @@ -760,20 +760,10 @@ (container :pointer) (actor (:pointer actor))) -(defcfun (%container-add-valist "clutter_container_add_valist") :void - (container :pointer) - (first-actor (:pointer actor)) - (var-args va-list)) - (defcfun (%container-remove-actor "clutter_container_remove_actor") :void (container :pointer) (actor (:pointer actor))) -(defcfun (%container-remove-valist "clutter_container_remove_valist") :void - (container :pointer) - (first-actor (:pointer actor)) - (var-args va-list)) - (defcfun (%container-get-children "clutter_container_get_children") :pointer (container :pointer)) @@ -2801,19 +2791,11 @@ (defcfun (%model-iter-copy "clutter_model_iter_copy") :pointer (iter :pointer)) -(defcfun (%model-iter-get-valist "clutter_model_iter_get_valist") :void - (iter :pointer) - (args va-list)) - (defcfun (%model-iter-get-value "clutter_model_iter_get_value") :void (iter :pointer) (column guint) (value (:pointer g-value))) -(defcfun (%model-iter-set-valist "clutter_model_iter_set_valist") :void - (iter :pointer) - (args va-list)) - (defcfun (%model-iter-set-value "clutter_model_iter_set_value") :void (iter :pointer) (column guint) @@ -3727,18 +3709,6 @@ (n-params guint) (param-types (:pointer g-type))) -(defcfun (%g-signal-new-valist "g_signal_new_valist") guint - (signal-name :string) - (itype g-type) - (signal-flags g-signal-flags-composite-enum) - (class-closure :pointer) - (accumulator function-pointer) - (accu-data :pointer) - (c-marshaller function-pointer) - (return-type g-type) - (n-params guint) - (args va-list)) - (defcfun (%g-signal-query "g_signal_query") :void (signal-id guint) (query :pointer)) @@ -3760,12 +3730,6 @@ (detail g-quark) (return-value (:pointer g-value))) -(defcfun (%g-signal-emit-valist "g_signal_emit_valist") :void - (instance :pointer) - (signal-id guint) - (detail g-quark) - (var-args va-list)) - (defcfun (%g-signal-connect-object "g_signal_connect_object") gulong (instance :pointer) (detailed-signal :string) diff --git a/grovel.lisp b/grovel.lisp index 3b09c14..6d60513 100644 --- a/grovel.lisp +++ b/grovel.lisp @@ -61,7 +61,6 @@ ;; typedefs (ctype g-lenum "GLenum") (ctype g-luint "GLuint") -(ctype va-list "va_list") (ctype gunichar "gunichar") (ctype guint64 "guint64") (ctype gint64 "gint64") diff --git a/inline-wrappers.lisp b/inline-wrappers.lisp index b11268b..0877de9 100644 --- a/inline-wrappers.lisp +++ b/inline-wrappers.lisp @@ -460,18 +460,10 @@ (defun container-add-actor (container actor) (%container-add-actor container actor)) -(declaim (inline container-add-valist)) -(defun container-add-valist (container first-actor var-args) - (%container-add-valist container first-actor var-args)) - (declaim (inline container-remove-actor)) (defun container-remove-actor (container actor) (%container-remove-actor container actor)) -(declaim (inline container-remove-valist)) -(defun container-remove-valist (container first-actor var-args) - (%container-remove-valist container first-actor var-args)) - (declaim (inline container-get-children)) (defun container-get-children (container) (%container-get-children container)) @@ -2512,18 +2504,10 @@ (defun model-iter-copy (iter) (%model-iter-copy iter)) -(declaim (inline model-iter-get-valist)) -(defun model-iter-get-valist (iter args) - (%model-iter-get-valist iter args)) - (declaim (inline model-iter-get-value)) (defun model-iter-get-value (iter column value) (%model-iter-get-value iter column value)) -(declaim (inline model-iter-set-valist)) -(defun model-iter-set-valist (iter args) - (%model-iter-set-valist iter args)) - (declaim (inline model-iter-set-value)) (defun model-iter-set-value (iter column value) (%model-iter-set-value iter column value)) @@ -3408,10 +3392,6 @@ (defun g-signal-newv (signal-name itype signal-flags class-closure accumulator accu-data c-marshaller return-type n-params param-types) (%g-signal-newv signal-name itype signal-flags class-closure accumulator accu-data c-marshaller return-type n-params param-types)) -(declaim (inline g-signal-new-valist)) -(defun g-signal-new-valist (signal-name itype signal-flags class-closure accumulator accu-data c-marshaller return-type n-params args) - (%g-signal-new-valist signal-name itype signal-flags class-closure accumulator accu-data c-marshaller return-type n-params args)) - (declaim (inline g-signal-query)) (defun g-signal-query (signal-id query) (%g-signal-query signal-id query)) @@ -3432,10 +3412,6 @@ (defun g-signal-emitv (instance-and-params signal-id detail return-value) (%g-signal-emitv instance-and-params signal-id detail return-value)) -(declaim (inline g-signal-emit-valist)) -(defun g-signal-emit-valist (instance signal-id detail var-args) - (%g-signal-emit-valist instance signal-id detail var-args)) - (declaim (inline g-signal-connect-object)) (defun g-signal-connect-object (instance detailed-signal c-handler gobject connect-flags) (%g-signal-connect-object instance detailed-signal c-handler gobject connect-flags))