Daniel Dunbar a écrit : > On Sat, Feb 21, 2009 at 9:14 AM, Cedric Venet <[email protected]> > wrote: > >> Author: venet >> Date: Sat Feb 21 11:14:49 2009 >> New Revision: 65233 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=65233&view=rev >> Log: >> Fix build on windows. >> >> Should clang have a config.h or should we use the config.h of llvm or using >> the preprocessor is OK? I did a quick fix here, but having a guideline on >> how to handle non portable function would be great (or ask ted to stop >> breaking the windows build :)). >> > > No on config.h. > > Generally portability issues should be handled by adding a portable > API to llvm (for example, llvm::System which encapsulates the features > needed. In this case the right place would be StringExtras.h, we > already have StringEqualsNoCase, for example. > >
Yes I was thinking to put it here at first, but was unsure if I should put a clang specific in the llvm files. I suppose that since the support api are commun to the two it is not a problem... Now, should I create a function StringEqualsNoCaseN (or StringCmpNoCaseSafe) or using a macro to define strncasecmp is fine? regards, Cédric > - Daniel > > >> Modified: >> cfe/trunk/lib/AST/ASTContext.cpp >> cfe/trunk/lib/Analysis/CFRefCount.cpp >> >> Modified: cfe/trunk/lib/AST/ASTContext.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ASTContext.cpp?rev=65233&r1=65232&r2=65233&view=diff >> >> ============================================================================== >> --- cfe/trunk/lib/AST/ASTContext.cpp (original) >> +++ cfe/trunk/lib/AST/ASTContext.cpp Sat Feb 21 11:14:49 2009 >> @@ -2816,7 +2816,7 @@ >> if (areCompatVectorTypes(LHS->getAsVectorType(), RHS->getAsVectorType())) >> return LHS; >> return QualType(); >> - case Type::ObjCInterface: >> + case Type::ObjCInterface: { >> // Check if the interfaces are assignment compatible. >> const ObjCInterfaceType* LHSIface = LHS->getAsObjCInterfaceType(); >> const ObjCInterfaceType* RHSIface = RHS->getAsObjCInterfaceType(); >> @@ -2825,6 +2825,7 @@ >> return LHS; >> >> return QualType(); >> + } >> case Type::ObjCQualifiedId: >> // Distinct qualified id's are not compatible. >> return QualType(); >> >> Modified: cfe/trunk/lib/Analysis/CFRefCount.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/CFRefCount.cpp?rev=65233&r1=65232&r2=65233&view=diff >> >> ============================================================================== >> --- cfe/trunk/lib/Analysis/CFRefCount.cpp (original) >> +++ cfe/trunk/lib/Analysis/CFRefCount.cpp Sat Feb 21 11:14:49 2009 >> @@ -35,6 +35,10 @@ >> >> using namespace clang; >> >> +#ifdef _MSC_VER >> +# define strncasecmp _strnicmp >> +#endif // #ifdef _MSC_VER >> + >> >> //===----------------------------------------------------------------------===// >> // Utility functions. >> >> //===----------------------------------------------------------------------===// >> >> >> _______________________________________________ >> cfe-commits mailing list >> [email protected] >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >> >> > > _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
