anchor.diff:  (defbinding (gvalue-unset "g_value_unset") () nil
     (value gvalue))
   
  -(defun gvalue-init (gvalue type &optional (value nil value-p))
  +(defun gvalue-init (gvalue type &optional (value nil value-p) temp-p)
     (%gvalue-init gvalue (find-type-number type))
     (when value-p
  -    (funcall (writer-function type) value gvalue +gvalue-value-offset+)))
  +    (funcall (writer-function type :temp temp-p) value gvalue +gvalue-value-offset+)))
   
   (defun gvalue-new (&optional type (value nil value-p))
     (let ((gvalue (allocate-memory +gvalue-size+)))
  
positive.code: (defmacro with-gvalue ((gvalue &optional type (value nil value-p)) &body body)
    `(with-memory (,gvalue +gvalue-size+)
       ,(cond
         ((and type value-p) `(gvalue-init ,gvalue ,type ,value))
         (type `(gvalue-init ,gvalue ,type)))
       ,@body
       ,(unless value-p `(gvalue-take ,gvalue))))
  
negative.code: ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  
  ;; $Id: gparam.lisp,v 1.26 2007-08-20 10:50:25 espen Exp $
  
  (in-package "GLIB")
  
  