On 07/11/2012 10:51 AM, Florian Weimer wrote:
The attached patches are necessary to compile Condor with Clang. Only patch 2 is clearly correct (variable-length arrays are a GCC extension). Patch 1 could be Clang bug, but I don't think so. Patch 3 is odd because the comment above the ThreadInfo class definition strongly suggests that there should have been an operator== in the first place.
The ThreadInfo fix wasn't applied to the master branch. Here's a new one, based on off-list discussion with Greg Thain.
This time, I compiled the patched sources with both Clang and GCC. -- Florian Weimer / Red Hat Product Security Team
>From 1766da036a7b15d97f6a95143be6961a69b9c03a Mon Sep 17 00:00:00 2001 From: Florian Weimer <fwei...@redhat.com> Date: Fri, 3 Aug 2012 11:17:52 +0200 Subject: [PATCH] Remove superfluous explicit template instances ThreadInfo is not fully defined at this point, so this is not the right place. This change is required to build Condor with Clang. --- src/condor_utils/condor_threads.cpp | 7 ------- 1 files changed, 0 insertions(+), 7 deletions(-) diff --git a/src/condor_utils/condor_threads.cpp b/src/condor_utils/condor_threads.cpp index f0a59da..293d5fb 100644 --- a/src/condor_utils/condor_threads.cpp +++ b/src/condor_utils/condor_threads.cpp @@ -231,13 +231,6 @@ pthread_cond_signal (pthread_cond_t *cv) #include "threads_implementation.h" -#ifndef WIN32 - // explicit template instantiation - template class HashTable<ThreadInfo,WorkerThreadPtr_t>; - template class HashTable<int,WorkerThreadPtr_t>; - template class Queue<WorkerThreadPtr_t>; -#endif - #ifdef WIN32 int ThreadImplementation::m_CurrentTid = 0; #endif -- 1.7.7.6
_______________________________________________ Condor-devel mailing list Condor-devel@cs.wisc.edu https://lists.cs.wisc.edu/mailman/listinfo/condor-devel