[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Exception handling in clang
From: |
Pete French |
Subject: |
Re: Exception handling in clang |
Date: |
Fri, 08 May 2009 13:58:38 +0100 |
> I've just committed initial support for 'zero-cost' exception handling
> in clang. Currently this only works for @finally and for @catch'ing
> id types (I plan on fixing that limitation soon). I'd appreciate it
> if anyone who has code which uses exceptions could test this. The
> support should currently be enough for anything using NS_DURING and
> friends to compile with zero-cost exceptions, rather than setjmp/
> longjmp.
Is this in the llvm/clang svn tree ? I've been trying to do an update
and get this compiled today (revision 71215), but it fails for me:
llvm[4]: Compiling ASTContext.cpp for Debug build
In file included from
/usr/home/petefrench/llvm-clang/llvm/tools/clang/lib/AST/../../include/clang/AST/DeclBase.h:18,
from
/usr/home/petefrench/llvm-clang/llvm/tools/clang/lib/AST/../../include/clang/AST/Decl.h:17,
from
/usr/home/petefrench/llvm-clang/llvm/tools/clang/lib/AST/../../include/clang/AST/ASTContext.h:21,
from ASTContext.cpp:14:
/usr/home/petefrench/llvm-clang/llvm/include/llvm/ADT/PointerIntPair.h: In
instantiation of 'llvm::PointerIntPair<clang::Type*, 3u, unsigned int,
llvm::PointerLikeTypeTraits<clang::Type*> >':
/usr/home/petefrench/llvm-clang/llvm/tools/clang/lib/AST/../../include/clang/AST/Type.h:76:
instantiated from here
/usr/home/petefrench/llvm-clang/llvm/include/llvm/ADT/PointerIntPair.h:43:
warning: left shift count >= width of type
/usr/home/petefrench/llvm-clang/llvm/include/llvm/ADT/PointerIntPair.h:43:
error: overflow in constant expression
/usr/home/petefrench/llvm-clang/llvm/include/llvm/ADT/PointerIntPair.h: In
member function 'IntType llvm::PointerIntPair<PointerTy, IntBits, IntType,
PtrTraits>::getInt() const [with PointerTy = clang::Type*, unsigned int IntBits
= 3u, IntType = unsigned int, PtrTraits =
llvm::PointerLikeTypeTraits<clang::Type*>]':
/usr/home/petefrench/llvm-clang/llvm/tools/clang/lib/AST/../../include/clang/AST/Type.h:96:
instantiated from here
/usr/home/petefrench/llvm-clang/llvm/include/llvm/ADT/PointerIntPair.h:72:
warning: right shift count >= width of type
/usr/home/petefrench/llvm-clang/llvm/include/llvm/ADT/PointerIntPair.h: In
member function 'void llvm::PointerIntPair<PointerTy, IntBits, IntType,
PtrTraits>::setInt(IntType) [with PointerTy = clang::Type*, unsigned int
IntBits = 3u, IntType = unsigned int, PtrTraits =
llvm::PointerLikeTypeTraits<clang::Type*>]':
/usr/home/petefrench/llvm-clang/llvm/tools/clang/lib/AST/../../include/clang/AST/Type.h:97:
instantiated from here
/usr/home/petefrench/llvm-clang/llvm/include/llvm/ADT/PointerIntPair.h:88:
warning: overflow in implicit constant conversion
/usr/home/petefrench/llvm-clang/llvm/include/llvm/ADT/PointerIntPair.h:89:
warning: left shift count >= width of type
gmake[4]: ***
[/usr/home/petefrench/llvm-clang/llvm/tools/clang/lib/AST/Debug/ASTContext.o]
Error 1
-pete.