Menu

#63 gcc-15 build fix

None
closed-fixed
None
5
2024-07-22
2024-07-21
No

Without the change build of mjpegtools on upcoming gcc-15 will fail as:

In file included from SetRegion2D.hh:12,
                 from MotionSearcher.hh:15,
                 from newdenoise.cc:19:
Region2D.hh: In member function 'void Region2D<INDEX, SIZE>::UnionDebug(Status_t&, INDEX, INDEX, INDEX, REGION_TEMP&)':
Region2D.hh:439:34: error: 'class Region2D<INDEX, SIZE>' has no member named 'DoesContainPoint'
  439 |                         || this->DoesContainPoint (rHere.m_tnY, tnX)))
      |                                  ^~~~~~~~~~~~~~~~
Region2D.hh:446:29: error: 'class Region2D<INDEX, SIZE>' has no member named 'Begin'
  446 |         for (itHere = this->Begin(); itHere != this->End(); ++itHere)
      |                             ^~~~~
Region2D.hh:446:54: error: 'class Region2D<INDEX, SIZE>' has no member named 'End'
  446 |         for (itHere = this->Begin(); itHere != this->End(); ++itHere)
      |                                                      ^~~
Region2D.hh: In member function 'void Region2D<INDEX, SIZE>::UnionDebug(Status_t&, REGION_O&, REGION_TEMP&)':
Region2D.hh:549:35: error: 'class Region2D<INDEX, SIZE>' has no member named 'DoesContainPoint'
  549 |                         && !this->DoesContainPoint (rHere.m_tnY, tnX))
      |                                   ^~~~~~~~~~~~~~~~
Region2D.hh:556:29: error: 'class Region2D<INDEX, SIZE>' has no member named 'Begin'
  556 |         for (itHere = this->Begin(); itHere != this->End(); ++itHere)
      |                             ^~~~~
Region2D.hh:556:54: error: 'class Region2D<INDEX, SIZE>' has no member named 'End'
  556 |         for (itHere = this->Begin(); itHere != this->End(); ++itHere)
      |                                                      ^~~
Region2D.hh: In member function 'void Region2D<INDEX, SIZE>::SubtractDebug(Status_t&, REGION_O&, REGION_TEMP&)':
Region2D.hh:635:37: error: 'class Region2D<INDEX, SIZE>' has no member named 'DoesContainPoint'
  635 |                         if (!(this->DoesContainPoint (rHere.m_tnY, tnX)
      |                                     ^~~~~~~~~~~~~~~~
Region2D.hh:643:29: error: 'class Region2D<INDEX, SIZE>' has no member named 'Begin'
  643 |         for (itHere = this->Begin(); itHere != this->End(); ++itHere)
      |                             ^~~~~
Region2D.hh:643:54: error: 'class Region2D<INDEX, SIZE>' has no member named 'End'
  643 |         for (itHere = this->Begin(); itHere != this->End(); ++itHere)
      |                                                      ^~~

As I understand the underlying issue is that Region2D::UnionDebug() and Region2D::SubtractDebug() can possibly be called without a resolution errors.

The error started appearing after gcc-15 expanded on more cases of problematic instantiations in https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=313afcfdabeab3e6705ac0bd1273627075be0023

Attaches patch fixes the build for me ongcc-15 from master branch.

1 Attachments

Discussion

  • Steven Schultz

    Steven Schultz - 2024-07-22
    • status: open --> closed-fixed
    • assigned_to: Steven Schultz
    • Group: -->
     
  • Steven Schultz

    Steven Schultz - 2024-07-22

    patch applied

     

Log in to post a comment.