Fix for ICE in clang due to infinite loop.

Eli Friedman eli.friedman at gmail.com
Wed Sep 25 17:53:49 PDT 2013


On Tue, Sep 24, 2013 at 11:48 PM, MAYUR PANDEY <mayur.p at samsung.com> wrote:

>  This is the similar way it has been fixed in gcc. They have kept a note
> of parent and they break the loop when it is again noticed. With the usage
> of global
>
> map there are no performance issues as such. Also please suggest the
> alternate way of fixing this issue.
>

I'm not an expert on overload resolution rules, so if you're certain we
actually need a map to catch this case, that's fine, I guess.  (Richard,
can you chime in?)

The rest of my feedback still applies.

-Eli

------- *Original Message* -------
>
> *Sender* : Eli Friedman<eli.friedman at gmail.com>
>
> *Date* : Sep 10, 2013 06:53 (GMT+09:00)
>
> *Title* : Re: Fix for ICE in clang due to infinite loop.
>
>
>  On Mon, Sep 9, 2013 at 5:08 AM, MAYUR PANDEY <mayur.p at samsung.com> wrote:
>
>>  Hi,
>>
>> Attached is the fix for Compiler crash caused by infinite loop when we
>> try to compile the following code.
>>
>>
>>
>> struct A;
>>
>> struct B
>> {
>>   B (A const &);
>>
>>   B (B &);
>> };
>>
>> struct A
>> {
>>   A (B);
>> };
>>
>> B
>> f (B const& b)
>> {
>>   return b;
>>
>> }
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130925/b28c2b5d/attachment.html>


More information about the cfe-commits mailing list