infinite recursion [-Wanalyzer-infinite-recursion]
19 foo_widget::draw (); /* { dg-warning "infinite recursion" } */
~~~~~~~~~~~~~~~~~^~
virtual void foo_widget::draw()
virtual void foo_widget::draw(): events 1-2
16 void foo_widget::draw ()
^~~~~~~~~~
|
(1) initial entry to ‘foo_widget::draw’
[...]
19 foo_widget::draw (); /* { dg-warning "infinite recursion" } */
~~~~~~~~~~~~~~~~~~~
|
(2) calling ‘foo_widget::draw’ from ‘foo_widget::draw’
virtual void foo_widget::draw()
virtual void foo_widget::draw(): events 3-4
16 void foo_widget::draw ()
^~~~~~~~~~
|
(3) recursive entry to ‘foo_widget::draw’; previously entered at (1)
(4) ⚠️ apparently infinite recursion
infinite recursion [-Wanalyzer-infinite-recursion]
35 return *this; /* { dg-warning "infinite recursion" } */
^~~~~
boxed_int::operator int()
boxed_int::operator int(): events 1-2
33 boxed_int::operator int ()
^~~~~~~~~
|
(1) initial entry to ‘boxed_int::operator int’
34 {
35 return *this; /* { dg-warning "infinite recursion" } */
~~~~~
|
(2) calling ‘boxed_int::operator int’ from ‘boxed_int::operator int’
boxed_int::operator int()
boxed_int::operator int(): events 3-4
33 boxed_int::operator int ()
^~~~~~~~~
|
(3) recursive entry to ‘boxed_int::operator int’; previously entered at (1)
(4) ⚠️ apparently infinite recursion
infinite recursion [-Wanalyzer-infinite-recursion]
44 return get_value (); /* { dg-warning "infinite recursion" } */
~~~~~~~~~~^~
T buggy_getter<T>::get_value() const [with T = int]
T buggy_getter<T>::get_value() const [with T = int]: events 1-2
42 T get_value () const
^~~~~~~~~
|
(1) initial entry to ‘buggy_getter<int>::get_value’
43 {
44 return get_value (); /* { dg-warning "infinite recursion" } */
~~~~~~~~~~~~
|
(2) calling ‘buggy_getter<int>::get_value’ from ‘buggy_getter<int>::get_value’
T buggy_getter<T>::get_value() const [with T = int]
T buggy_getter<T>::get_value() const [with T = int]: events 3-4
42 T get_value () const
^~~~~~~~~
|
(3) recursive entry to ‘buggy_getter<int>::get_value’; previously entered at (1)
(4) ⚠️ apparently infinite recursion
infinite recursion [-Wanalyzer-infinite-recursion]
60 static_cast<D *>(this)->foo (); /* { dg-warning "-Wanalyzer-infinite-recursion" } */
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
void C<D>::foo() [with D = D]
void C<D>::foo() [with D = D]: events 1-2
58 void foo ()
^~~
|
(1) initial entry to ‘C<D>::foo’
59 {
60 static_cast<D *>(this)->foo (); /* { dg-warning "-Wanalyzer-infinite-recursion" } */
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
(2) calling ‘C<D>::foo’ from ‘C<D>::foo’
void C<D>::foo() [with D = D]
void C<D>::foo() [with D = D]: events 3-4
58 void foo ()
^~~
|
(3) recursive entry to ‘C<D>::foo’; previously entered at (1)
(4) ⚠️ apparently infinite recursion