[LLVMdev] LLVM asserts

Chris Lattner clattner at apple.com
Wed Aug 19 09:42:43 PDT 2009


Please email llvmdev, not me directly.

On Aug 19, 2009, at 9:37 AM, Kenneth Uildriks wrote:

> So things like type mismatches, missing return statements, and whatnot
> count as "internal errors"?  I guess that makes sense... I'll just
> have to do those check on my side then.

Yes.  The IR has to be well formed by your frontend.

-Chris

>
> On Wed, Aug 19, 2009 at 11:29 AM, Chris Lattner<clattner at apple.com>  
> wrote:
>>
>> On Aug 19, 2009, at 9:02 AM, Kenneth Uildriks wrote:
>>
>>> How do you get LLVM methods to return or throw an error to the
>>> caller's code rather than aborting the process?  I'd like my  
>>> compiler
>>> to be able to print diagnostic messages, including language source
>>> lines, whenever LLVM reports a problem.
>>
>> Hi Kenneth,
>>
>> Recoverable errors are handled with llvm/Support/ErrorHandling.h.   
>> We use
>> asserts for conditions that "cannot happen".  These are internal  
>> errors and
>> are not recoverable.  The best way to not get one of these is for  
>> your
>> compiler to not have bugs :)
>>
>> -Chris
>>




More information about the llvm-dev mailing list