summaryrefslogtreecommitdiff
path: root/win32/win32thread.h
diff options
context:
space:
mode:
authorSteve Hay <steve.m.hay@googlemail.com>2011-09-10 17:21:58 +0100
committerSteve Hay <steve.m.hay@googlemail.com>2011-09-10 18:16:59 +0100
commit378eeda70cc27194f0f718b4c65b8ba147259910 (patch)
tree26c3c6b5adb9c5027a78c6143cdced30ce57a9d4 /win32/win32thread.h
parent528bd3ce854c33aaf668dd3aa007a60a4994edac (diff)
downloadperl-378eeda70cc27194f0f718b4c65b8ba147259910.tar.gz
The Borland Chainsaw Massacre
Remove support for the Borland C++ compiler on Win32, as agreed here: http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2011-09/msg00034.html
Diffstat (limited to 'win32/win32thread.h')
-rw-r--r--win32/win32thread.h15
1 files changed, 5 insertions, 10 deletions
diff --git a/win32/win32thread.h b/win32/win32thread.h
index c6f93097ff..9af3aa3ea2 100644
--- a/win32/win32thread.h
+++ b/win32/win32thread.h
@@ -109,10 +109,9 @@ typedef HANDLE perl_mutex;
/* XXX Docs mention that the RTL versions of thread creation routines
* should be used, but that advice only seems applicable when the RTL
- * is not in a DLL. RTL DLLs in both Borland and VC seem to do all of
- * the init/deinit required upon DLL_THREAD_ATTACH/DETACH. So we seem
- * to be completely safe using straight Win32 API calls, rather than
- * the much braindamaged RTL calls.
+ * is not in a DLL. RTL DLLs seem to do all of the init/deinit required
+ * upon DLL_THREAD_ATTACH/DETACH. So we seem to be completely safe using
+ * straight Win32 API calls, rather than the much braindamaged RTL calls.
*
* _beginthread() in the RTLs call CloseHandle() just after the thread
* function returns, which means: 1) we have a race on our hands
@@ -123,11 +122,7 @@ typedef HANDLE perl_mutex;
*/
#ifdef USE_RTL_THREAD_API
# include <process.h>
-# if defined(__BORLANDC__)
- /* Borland RTL doesn't allow a return value from thread function! */
-# define THREAD_RET_TYPE void _USERENTRY
-# define THREAD_RET_CAST(p) ((void)(thr->i.retv = (void *)(p)))
-# elif defined (_MSC_VER)
+# if defined (_MSC_VER)
# define THREAD_RET_TYPE unsigned __stdcall
# define THREAD_RET_CAST(p) ((unsigned)(p))
# else
@@ -145,7 +140,7 @@ typedef THREAD_RET_TYPE thread_func_t(void *);
START_EXTERN_C
-#if defined(PERLDLL) && defined(USE_DECLSPEC_THREAD) && (!defined(__BORLANDC__) || defined(_DLL))
+#if defined(PERLDLL) && defined(USE_DECLSPEC_THREAD)
extern __declspec(thread) void *PL_current_context;
#define PERL_SET_CONTEXT(t) (PL_current_context = t)
#define PERL_GET_CONTEXT PL_current_context