//
//
//  Copyright Digital Equipment Corporation 1995. All rights reserved.
//
//  Restricted Rights: Use, duplication, or disclosure by the U.S.
//  Government is subject to restrictions as set forth in subparagraph
//  (c) (1) (ii) of DFARS 252.227-7013, or in FAR 52.227-19, or in FAR
//  52.227-14 Alt. III, as applicable.
//
//  This software is proprietary to and embodies the confidential
//  technology of Digital Equipment Corporation. Possession, use, or
//  copying of this software and media is authorized only pursuant to a
//  valid written license from Digital or an authorized sublicensor.
//
//

#ifndef __STL_MACROS
#define __STL_MACROS

#if defined(__DECCXX)
#   ifdef __PRAGMA_ENVIRONMENT
#      pragma __environment __save
#      pragma __environment __header_defaults
#   endif
#endif

#if defined (__DECCXX) && (__CFRONT || __MS)
#define __DECPROTECTED	public
#define __DECPRIVATE 	public
#else
#define __DECPROTECTED	protected
#define __DECPRIVATE	private
#endif

//
// run-time entrypoints for the threadsafe support
//
extern void __cxx_mutex_lock(void*&);
extern void __cxx_mutex_unlock(void*&);
extern void __cxx_mutex_create(void*&);
extern void __cxx_mutex_destroy(void*&);

#if defined(__DECCXX)
#   ifdef __PRAGMA_ENVIRONMENT
#      pragma __environment __restore
#   endif
#endif

#endif /* __STL_MACROS */
