LCOV - code coverage report
Current view: directory - cygdrive/c/program files/microsoft visual studio 9.0/vc/include - new (source / functions) Found Hit Coverage
Test: coverage.lcov Lines: 5 3 60.0 %
Date: 2014-09-25 Functions: 0 0 -

       1                 : // new standard header for Microsoft

       2                 : #pragma once
       3                 : #ifndef _NEW_
       4                 : #define _NEW_
       5                 : #ifndef RC_INVOKED
       6                 : #include <exception>
       7                 : 
       8                 : #ifdef _MSC_VER
       9                 :  #pragma pack(push,_CRT_PACKING)
      10                 :  #pragma warning(push,3)
      11                 :  #pragma push_macro("new")
      12                 : #endif  /* _MSC_VER */
      13                 : 
      14                 :   #undef new
      15                 : 
      16                 : 
      17                 : #if !defined(__CRTDECL)
      18                 : #if defined(_M_CEE_PURE)
      19                 : #define __CRTDECL
      20                 : #else
      21                 : #define __CRTDECL   __cdecl
      22                 : #endif
      23                 : #endif
      24                 : 
      25                 : _STD_BEGIN
      26                 : 
      27                 :                 // SUPPORT TYPES
      28                 :  #if !defined(_INC_NEW) || !defined(_MSC_EXTENSIONS)
      29                 : // handler for operator new failures
      30                 : #ifdef _M_CEE_PURE
      31                 : typedef void (__clrcall * new_handler) ();
      32                 : #else
      33                 : typedef void (__cdecl * new_handler) ();
      34                 : #endif
      35                 :  #endif /* !defined(_INC_NEW) || !defined(_MSC_EXTENSIONS) */
      36                 : 
      37                 :  #ifndef __NOTHROW_T_DEFINED
      38                 : struct nothrow_t
      39                 :         {       // placement new tag type to suppress exceptions
      40                 :         };
      41                 : 
      42                 : extern const nothrow_t nothrow; // constant for placement new tag
      43                 :  #endif /* __NOTHROW_T_DEFINED */
      44                 : 
      45                 :                 // FUNCTION AND OBJECT DECLARATIONS
      46                 : _CRTIMP2 new_handler __cdecl set_new_handler(_In_opt_ new_handler)
      47                 :         _THROW0();      // establish alternate new handler
      48                 : _STD_END
      49                 : 
      50                 :                 // new AND delete DECLARATIONS (NB: NOT IN std)
      51                 : void __CRTDECL operator delete(void *) _THROW0();
      52                 : #pragma warning (suppress: 4985)
      53                 : _Ret_bytecap_(_Size) void *__CRTDECL operator new(size_t _Size) _THROW1(std::bad_alloc);
      54                 : 
      55                 :  #ifndef __PLACEMENT_NEW_INLINE
      56                 :   #define __PLACEMENT_NEW_INLINE
      57                 : inline void *__CRTDECL operator new(size_t, void *_Where) _THROW0()
      58              12 :         {       // construct array with placement at _Where

      59              12 :         return (_Where);

      60              12 :         }

      61                 : 
      62                 : inline void __CRTDECL operator delete(void *, void *) _THROW0()
      63               0 :         {       // delete if placement new fails

      64               0 :         }

      65                 :  #endif /* __PLACEMENT_NEW_INLINE */
      66                 : 
      67                 :  #ifndef __PLACEMENT_VEC_NEW_INLINE
      68                 :   #define __PLACEMENT_VEC_NEW_INLINE
      69                 : inline void *__CRTDECL operator new[](size_t, void *_Where) _THROW0()
      70                 :         {       // construct array with placement at _Where
      71                 :         return (_Where);
      72                 :         }
      73                 : 
      74                 : inline void __CRTDECL operator delete[](void *, void *) _THROW0()
      75                 :         {       // delete if placement array new fails
      76                 :         }
      77                 :  #endif /* __PLACEMENT_VEC_NEW_INLINE */
      78                 : 
      79                 : void __CRTDECL operator delete[](void *) _THROW0();     // delete allocated array
      80                 : 
      81                 : _Ret_bytecap_(_Size) void *__CRTDECL operator new[](size_t _Size)
      82                 :         _THROW1(std::bad_alloc);        // allocate array or throw exception
      83                 : 
      84                 :  #ifndef __NOTHROW_T_DEFINED
      85                 :   #define __NOTHROW_T_DEFINED
      86                 : _Ret_opt_bytecap_(_Size) void *__CRTDECL operator new(size_t _Size, const std::nothrow_t&)
      87                 :         _THROW0();
      88                 : 
      89                 : _Ret_opt_bytecap_(_Size) void *__CRTDECL operator new[](size_t _Size, const std::nothrow_t&)
      90                 :         _THROW0();      // allocate array or return null pointer
      91                 : 
      92                 : void __CRTDECL operator delete(void *, const std::nothrow_t&)
      93                 :         _THROW0();      // delete if nothrow new fails -- REPLACEABLE
      94                 : 
      95                 : void __CRTDECL operator delete[](void *, const std::nothrow_t&)
      96                 :         _THROW0();      // delete if nothrow array new fails -- REPLACEABLE
      97                 :  #endif /* __NOTHROW_T_DEFINED */
      98                 : 
      99                 : 
     100                 :  #if !defined(_INC_NEW) || !defined(_MSC_EXTENSIONS)
     101                 : using std::new_handler;
     102                 :  #endif /* !defined(_INC_NEW) || !defined(_MSC_EXTENSIONS) */
     103                 : 
     104                 : #ifdef  _MSC_VER
     105                 :  #pragma pop_macro("new")
     106                 :  #pragma warning(pop)
     107                 :  #pragma pack(pop)
     108                 : #endif  /* _MSC_VER */
     109                 : 
     110                 : #endif /* RC_INVOKED */
     111                 : #endif /* _NEW_ */
     112                 : 
     113                 : /*
     114                 :  * Copyright (c) 1992-2007 by P.J. Plauger.  ALL RIGHTS RESERVED.
     115                 :  * Consult your license regarding permissions and restrictions.
     116                 :  V5.03:0009 */

Generated by: LCOV version 1.7