Changeset 83a071f9 for src/libcfa/stdlib.c
- Timestamp:
- Aug 11, 2017, 10:10:26 AM (7 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- fd344aa
- Parents:
- 8499c707
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/libcfa/stdlib.c
r8499c707 r83a071f9 44 44 } // new 45 45 46 forall( dtype T | { void ^?{}( T & ); } )46 forall( dtype T | sized(T) | { void ^?{}( T & ); } ) 47 47 void delete( T * ptr ) { 48 48 if ( ptr ) { // ignore null 49 ^ ptr{}; // run destructor49 ^(*ptr){}; // run destructor 50 50 free( ptr ); 51 51 } // if 52 52 } // delete 53 53 54 forall( dtype T, ttype Params | { void ^?{}( T & ); void delete( Params ); } )54 forall( dtype T, ttype Params | sized(T) | { void ^?{}( T & ); void delete( Params ); } ) 55 55 void delete( T * ptr, Params rest ) { 56 56 if ( ptr ) { // ignore null 57 ^ ptr{}; // run destructor57 ^(*ptr){}; // run destructor 58 58 free( ptr ); 59 59 } // if
Note: See TracChangeset
for help on using the changeset viewer.