xref: /xnu-12377.41.6/tests/intrusive_shared_ptr_src/abi.callee.raw.cpp (revision bbb1b6f9e71b8cdde6e5cd6f4841f207dee3d828)
1*bbb1b6f9SApple OSS Distributions //
2*bbb1b6f9SApple OSS Distributions // Declare a function as returning a shared pointer (in the header), but
3*bbb1b6f9SApple OSS Distributions // implement it by returning a raw pointer. This represents a TU that would
4*bbb1b6f9SApple OSS Distributions // not have been translated to shared pointers yet.
5*bbb1b6f9SApple OSS Distributions //
6*bbb1b6f9SApple OSS Distributions // In this TU, SharedPtr<T> is just T* since USE_SHARED_PTR is not defined.
7*bbb1b6f9SApple OSS Distributions //
8*bbb1b6f9SApple OSS Distributions 
9*bbb1b6f9SApple OSS Distributions #include "abi_helper.h"
10*bbb1b6f9SApple OSS Distributions 
11*bbb1b6f9SApple OSS Distributions SharedPtr<T>
return_raw_as_shared(T * ptr)12*bbb1b6f9SApple OSS Distributions return_raw_as_shared(T* ptr)
13*bbb1b6f9SApple OSS Distributions {
14*bbb1b6f9SApple OSS Distributions 	return ptr;
15*bbb1b6f9SApple OSS Distributions }
16