[LLVMdev] isa and friends as an alternative to dynamic cast?
Jeff Cohen
jeffc at jolt-lang.org
Sat Apr 23 20:29:03 PDT 2005
That requires RTTI.
Anyway, I verified exceptions really don't need RTTI in VC++ also.
Furthermore, VC++ complains when dynamic_cast is used with RTTI disabled.
Reid Spencer wrote:
>My understanding is that EH works fine without RTTI. However, we use
>typeid in LLVM in a few limited spots like lib/VMCore/Pass.cpp
>
>Reid.
>
>On Sat, 2005-04-23 at 20:12 -0700, Jeff Cohen wrote:
>
>
>>As far as I can tell, exceptions work just fine without RTTI when using
>>gcc 3.4.2. dynamic_cast, on the hand, crashes without RTTI (no
>>compilation error or warning is generated).
>>
>>Jeff Cohen wrote:
>>
>>
>>
>>>This may be the case with GCC, but VC++ allows exception handling to
>>>be enabled while RTTI is disabled. According to VC++ documentation,
>>>RTTI is needed only to support dynamic_cast, the typeid operator, and
>>>the type_info class.
>>>
>>>Chris Lattner wrote:
>>>
>>>
>>>
>>>>On Thu, 21 Apr 2005, Jeff Cohen wrote:
>>>>
>>>>
>>>>
>>>>>That's a good point.
>>>>>
>>>>>
>>>>
>>>>I think there are some issues with doing this (e.g. EH doesn't work,
>>>>so the very few places we use it would have to be modified), but
>>>>other than that I fully support the idea.
>>>>
>>>>-Chris
>>>>
>>>>
>>>_______________________________________________
>>>LLVM Developers mailing list
>>>LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>>>http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>
>>>
>>>
>>>
>>_______________________________________________
>>LLVM Developers mailing list
>>LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>>http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>>
More information about the llvm-dev
mailing list