		{
							if (value != 0)
								{
									SetEvent(s->event);
								}

							InitializeCriticalSection(&s->sem_lock_cs);
						}
				}

#else /* NEED_SEM */

      s->sem = CreateSemaphore (NULL,			     /* Always NULL */
				(long) value,		     /* Initial value */
				(long) _POSIX_SEM_VALUE_MAX, /* Maximum value */
				NULL);			     /* Name */
			
      if (0 == s->sem)
				{
					result = ENOSPC;
				}

#endif /* NEED_SEM */

    }

  if (result != 0)
    {
      errno = result;
      return -1;
    }

  *sem = s;

  return 0;

}				/* sem_init */


var overload_copy = require("overload_copy");

f = new overload_copy.Foo();
g = new overload_copy.Foo(f);


/*=============================================================================
    Copyright (c) 2001-2011 Joel de Guzman

    Distributed under the Boost Software License, Version 1.0. (See accompanying
    file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
==============================================================================*/
#if !defined(FUSION_SEQUENCE_CLASS_SET_10022005_0607)
#define FUSION_SEQUENCE_CLASS_SET_10022005_0607

#include <boost/fusion/support/config.hpp>
#include <boost/fusion/container/set/limits.hpp>
#include <boost/fusion/container/set/set.hpp>
#include <boost/fusion/container/set/set_fwd.hpp>
#include <boost/fusion/container/set/convert.hpp>

#endif


// Protocol Buffers for Go with Gadgets
//
// Copyright (c) 2016, The GoGo Authors. All rights reserved.
// http://github.com/gogo/protobuf
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
//     * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
//     * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distri