Building on GCC 11

Talk about code development, features, specific bugs, enhancements, patches, and similar things.
Forum rules
Please keep everything here strictly on-topic.
This board is meant for Pale Moon source code development related subjects only like code snippets, patches, specific bugs, git, the repositories, etc.

This is not for tech support! Please do not post tech support questions in the "Development" board!
Please make sure not to use this board for support questions. Please post issues with specific websites, extensions, etc. in the relevant boards for those topics.

Please keep things on-topic as this forum will be used for reference for Pale Moon development. Expect topics that aren't relevant as such to be moved or deleted.
User avatar
micwoj92
Fanatic
Fanatic
Posts: 174
Joined: 2020-12-22, 20:57

Building on GCC 11

Unread post by micwoj92 » 2021-05-09, 09:04

Just a question if anyone has built Pale Moon (or any UXP app for this sake) using GCC version 11. Did you have any issues or was it just working without any changes?

New Tobin Paradigm

Re: Building on GCC 11

Unread post by New Tobin Paradigm » 2021-05-09, 10:48

I think by now you know that GCC people have lost their god damned minds like most projects these days and that WE only bother looking into the latest shiney when it becomes nessisary and tend to otherwise focus on compiler versions that are proven trustworthy.

Our current recommended GCC versions right now are 7 and 8 with 9 being okay and 10 seeming to work last I checked and made changes to that effect. I have no idea if anyone had even tried to use 11 yet so who knows what curveballs might await us in this effectively compiler as a service model of bullshit.

User avatar
micwoj92
Fanatic
Fanatic
Posts: 174
Joined: 2020-12-22, 20:57

Re: Building on GCC 11

Unread post by micwoj92 » 2021-05-09, 12:12

I know, GCC10 works good for Arch Linux since couple months. When GCC 11 becomes available in Arch testing repos I can test, would bug reports be appreciated? Should I post in this thread or somewhere else?

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35404
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: Building on GCC 11

Unread post by Moonchild » 2021-05-09, 13:44

You can post here, but understand that if there's a choice between existing compiler compatibility and supporting GCC 11, the former will have a lot more weight. I'd like to avoid added complexity in the build system or source code to cater to gcc-latest or whatever theoretical improvements it might bring.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

New Tobin Paradigm

Re: Building on GCC 11

Unread post by New Tobin Paradigm » 2021-05-09, 18:36

In this instance we are reactionary to GCC not proactive because of the situation surrounding GCC it is of more benefit to wait until a major version is settled to do the things so we don't get trapped in revision hell patchwise. And a major version may just end up sub-optimal like the case with GCC 6.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35404
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: Building on GCC 11

Unread post by Moonchild » 2021-05-09, 19:03

New Tobin Paradigm wrote:
2021-05-09, 18:36
And a major version may just end up sub-optimal like the case with GCC 6.
or 8 prior to 8.3 or so
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

New Tobin Paradigm

Re: Building on GCC 11

Unread post by New Tobin Paradigm » 2021-05-09, 19:18

Oh yeah that too and half of the distros that used 5.3. It does become quite the minefield on occasion.

For the record, BinOC is currently using GCC 8.3 and considers it well tested.

I should make a table chart with colors on the DPMO page with color codes.

User avatar
micwoj92
Fanatic
Fanatic
Posts: 174
Joined: 2020-12-22, 20:57

Re: Building on GCC 11

Unread post by micwoj92 » 2021-05-14, 21:54

Aaaaand... it fails. I did test build with gcc 10.2 just to be sure, then changed to testing repos with gcc 11.1.0, pasting build output since errors started

Code: Select all

0:52.36 libtoolkit_components_commandlines.a.desc
 0:53.42 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Rect.h:9,
 0:53.42                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsRect.h:14,
 0:53.42                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:12,
 0:53.42                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.42 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h: In static member function ‘static Sub mozilla::gfx::BaseRect<T, Sub, Point, SizeT, MarginT>::MaxIntRect()’:
 0:53.42 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:563:28: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.42   563 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.42       |                            ^~~~~~~~~~~~~~
 0:53.42 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:563:53: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.42   563 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.42       |                                                     ^~~
 0:53.42       |                                                     std::max
 0:53.42 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.42                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.43                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.43                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.43                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.43                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.43                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.43 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.43  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.43       |     ^~~
 0:53.43 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Rect.h:9,
 0:53.43                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsRect.h:14,
 0:53.43                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:12,
 0:53.43                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.44 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:564:28: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.44   564 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.44       |                            ^~~~~~~~~~~~~~
 0:53.44 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:562:15: error: expected primary-expression before ‘(’ token
 0:53.44   562 |     return Sub(
 0:53.44       |               ^
 0:53.44 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:563:28: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.44   563 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.44       |                            ^~~~~~~~~~~~~~
 0:53.44 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:563:50: error: expected primary-expression before ‘>’ token
 0:53.44   563 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.44       |                                                  ^
 0:53.44 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:563:53: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.44   563 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.45       |                                                     ^~~
 0:53.45       |                                                     std::max
 0:53.45 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.45                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.45                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.45                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.45                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.46                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.46                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.46 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.46  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.46       |     ^~~
 0:53.47 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Rect.h:9,
 0:53.47                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsRect.h:14,
 0:53.47                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:12,
 0:53.47                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.47 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:564:28: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.47   564 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.47       |                            ^~~~~~~~~~~~~~
 0:53.47 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:564:50: error: expected primary-expression before ‘>’ token
 0:53.48   564 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.48       |                                                  ^
 0:53.48 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:564:53: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.48   564 |       static_cast<T>(-std::numeric_limits<int32_t>::max() * 0.5),
 0:53.48       |                                                     ^~~
 0:53.48       |                                                     std::max
 0:53.48 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.48                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.48                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.49                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.49                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.49                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.49                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.49 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.49  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.49       |     ^~~
 0:53.50 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Rect.h:9,
 0:53.50                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsRect.h:14,
 0:53.50                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:12,
 0:53.50                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.50 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:565:27: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.50   565 |       static_cast<T>(std::numeric_limits<int32_t>::max()),
 0:53.50       |                           ^~~~~~~~~~~~~~
 0:53.50 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:565:49: error: expected primary-expression before ‘>’ token
 0:53.51   565 |       static_cast<T>(std::numeric_limits<int32_t>::max()),
 0:53.51       |                                                 ^
 0:53.51 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:565:52: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.51   565 |       static_cast<T>(std::numeric_limits<int32_t>::max()),
 0:53.51       |                                                    ^~~
 0:53.52       |                                                    std::max
 0:53.52 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.52                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.52                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.52                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.52                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.52                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.52                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.53 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.53  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.53       |     ^~~
 0:53.53 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Rect.h:9,
 0:53.53                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsRect.h:14,
 0:53.53                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:12,
 0:53.53                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.53 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:566:27: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.54   566 |       static_cast<T>(std::numeric_limits<int32_t>::max())
 0:53.54       |                           ^~~~~~~~~~~~~~
 0:53.54 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:566:49: error: expected primary-expression before ‘>’ token
 0:53.54   566 |       static_cast<T>(std::numeric_limits<int32_t>::max())
 0:53.54       |                                                 ^
 0:53.54 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/BaseRect.h:566:52: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.55   566 |       static_cast<T>(std::numeric_limits<int32_t>::max())
 0:53.55       |                                                    ^~~
 0:53.55       |                                                    std::max
 0:53.55 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.55                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.55                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.55                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.55                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.55                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.55                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.56 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.56  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.56       |     ^~~
 0:53.72 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxPoint.h:12,
 0:53.72                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxTextRun.h:11,
 0:53.72                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:15,
 0:53.72                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.72 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h: In member function ‘mozilla::gfx::RectTyped<TargetUnits, F> mozilla::gfx::Matrix4x4Typed<SourceUnits, TargetUnits>::ProjectRectBounds(const mozilla::gfx::RectTyped<SourceUnits, F>&, const mozilla::gfx::RectTyped<TargetUnits, F>&) const’:
 0:53.72 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:639:20: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.72   639 |     F min_x = std::numeric_limits<F>::max();
 0:53.72       |                    ^~~~~~~~~~~~~~
 0:53.72 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:639:36: error: expected primary-expression before ‘>’ token
 0:53.72   639 |     F min_x = std::numeric_limits<F>::max();
 0:53.72       |                                    ^
 0:53.72 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:639:39: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.72   639 |     F min_x = std::numeric_limits<F>::max();
 0:53.73       |                                       ^~~
 0:53.73       |                                       std::max
 0:53.74 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.74                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.74                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.75                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.75                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.75                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.75                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.75 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.75  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.75       |     ^~~
 0:53.75 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxPoint.h:12,
 0:53.75                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxTextRun.h:11,
 0:53.75                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:15,
 0:53.75                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.75 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:640:20: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.75   640 |     F min_y = std::numeric_limits<F>::max();
 0:53.76       |                    ^~~~~~~~~~~~~~
 0:53.76 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:640:36: error: expected primary-expression before ‘>’ token
 0:53.76   640 |     F min_y = std::numeric_limits<F>::max();
 0:53.76       |                                    ^
 0:53.77 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:640:39: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.77   640 |     F min_y = std::numeric_limits<F>::max();
 0:53.77       |                                       ^~~
 0:53.77       |                                       std::max
 0:53.77 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.77 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.77  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.77       |     ^~~
 0:53.77 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxPoint.h:12,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxTextRun.h:11,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:15,
 0:53.77                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.78 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:641:21: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.78   641 |     F max_x = -std::numeric_limits<F>::max();
 0:53.78       |                     ^~~~~~~~~~~~~~
 0:53.78 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:641:37: error: expected primary-expression before ‘>’ token
 0:53.78   641 |     F max_x = -std::numeric_limits<F>::max();
 0:53.78       |                                     ^
 0:53.78 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:641:40: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.79   641 |     F max_x = -std::numeric_limits<F>::max();
 0:53.79       |                                        ^~~
 0:53.79       |                                        std::max
 0:53.79 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.79 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.79  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.79       |     ^~~
 0:53.79 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxPoint.h:12,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxTextRun.h:11,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:15,
 0:53.79                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.79 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:642:21: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.79   642 |     F max_y = -std::numeric_limits<F>::max();
 0:53.79       |                     ^~~~~~~~~~~~~~
 0:53.79 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:642:37: error: expected primary-expression before ‘>’ token
 0:53.80   642 |     F max_y = -std::numeric_limits<F>::max();
 0:53.80       |                                     ^
 0:53.80 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:642:40: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.80   642 |     F max_y = -std::numeric_limits<F>::max();
 0:53.80       |                                        ^~~
 0:53.80       |                                        std::max
 0:53.80 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.80                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.80                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.80                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.80                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.80                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.80                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.80 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.80  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.80       |     ^~~
 0:53.80 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxPoint.h:12,
 0:53.80                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxTextRun.h:11,
 0:53.82                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:15,
 0:53.82                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.82 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h: In member function ‘mozilla::gfx::RectTyped<TargetUnits, F> mozilla::gfx::Matrix4x4Typed<SourceUnits, TargetUnits>::TransformAndClipBounds(const mozilla::gfx::RectTyped<SourceUnits, F>&, const mozilla::gfx::RectTyped<TargetUnits, F>&) const’:
 0:53.83 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:694:20: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.83   694 |     F min_x = std::numeric_limits<F>::max();
 0:53.83       |                    ^~~~~~~~~~~~~~
 0:53.83 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:694:36: error: expected primary-expression before ‘>’ token
 0:53.83   694 |     F min_x = std::numeric_limits<F>::max();
 0:53.83       |                                    ^
 0:53.83 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:694:39: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.83   694 |     F min_x = std::numeric_limits<F>::max();
 0:53.83       |                                       ^~~
 0:53.83       |                                       std::max
 0:53.83 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.83                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.83                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.83                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.83                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.83                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.83                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.83 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.83  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.83       |     ^~~
 0:53.83 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxPoint.h:12,
 0:53.83                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxTextRun.h:11,
 0:53.84                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:15,
 0:53.84                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.84 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:695:20: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.84   695 |     F min_y = std::numeric_limits<F>::max();
 0:53.84       |                    ^~~~~~~~~~~~~~
 0:53.84 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:695:36: error: expected primary-expression before ‘>’ token
 0:53.84   695 |     F min_y = std::numeric_limits<F>::max();
 0:53.84       |                                    ^
 0:53.84 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:695:39: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.84   695 |     F min_y = std::numeric_limits<F>::max();
 0:53.84       |                                       ^~~
 0:53.84       |                                       std::max
 0:53.84 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.84                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.84                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.84                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.84                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.84                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.84                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.88 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.88  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.88       |     ^~~
 0:53.88 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxPoint.h:12,
 0:53.88                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxTextRun.h:11,
 0:53.89                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:15,
 0:53.89                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.89 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:696:21: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.89   696 |     F max_x = -std::numeric_limits<F>::max();
 0:53.89       |                     ^~~~~~~~~~~~~~
 0:53.89 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:696:37: error: expected primary-expression before ‘>’ token
 0:53.89   696 |     F max_x = -std::numeric_limits<F>::max();
 0:53.89       |                                     ^
 0:53.89 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:696:40: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.89   696 |     F max_x = -std::numeric_limits<F>::max();
 0:53.89       |                                        ^~~
 0:53.89       |                                        std::max
 0:53.89 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.89                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.89                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.89                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.89                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.89                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.89                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.89 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.89  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.89       |     ^~~
 0:53.89 In file included from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxPoint.h:12,
 0:53.90                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/gfxTextRun.h:11,
 0:53.90                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:15,
 0:53.90                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.90 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:697:21: error: ‘numeric_limits’ is not a member of ‘std’
 0:53.90   697 |     F max_y = -std::numeric_limits<F>::max();
 0:53.90       |                     ^~~~~~~~~~~~~~
 0:53.90 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:697:37: error: expected primary-expression before ‘>’ token
 0:53.90   697 |     F max_y = -std::numeric_limits<F>::max();
 0:53.90       |                                     ^
 0:53.90 /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/mozilla/gfx/Matrix.h:697:40: error: ‘::max’ has not been declared; did you mean ‘std::max’?
 0:53.90   697 |     F max_y = -std::numeric_limits<F>::max();
 0:53.90       |                                        ^~~
 0:53.90       |                                        std::max
 0:53.90 In file included from /usr/include/c++/11.1.0/algorithm:62,
 0:53.90                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers/algorithm:3,
 0:53.90                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers/algorithm:52,
 0:53.90                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsCoord.h:17,
 0:53.90                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nsColor.h:12,
 0:53.90                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.h:9,
 0:53.92                  from /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp:6:
 0:53.92 /usr/include/c++/11.1.0/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 0:53.92  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
 0:53.92       |     ^~~
 0:54.02 libtoolkit_components_terminator.a.desc
 0:54.23 libicustubdata.a.desc
 0:56.87 libimage_decoders_icon_gtk.a.desc
 0:59.17 
 0:59.17 In the directory  /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/layout/mathml
 0:59.17 The following command failed to execute properly:
 0:59.17 /usr/bin/g++ -std=gnu++11 -o nsMathMLChar.o -c -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/stl_wrappers -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/system_wrappers -include /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/config/gcc_hidden.h -DNDEBUG=1 -DTRIMMED=1 -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/layout/mathml -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/base -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/generic -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/style -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/tables -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/xul -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/dom/base -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/dom/mathml -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nspr -I/home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /home/micwoj92/Desktop/pr/palemoon-gtk3/src/pmbuild/mozilla-config.h -MD -MP -MF .deps/nsMathMLChar.o.pp -D_FORTIFY_SOURCE=2 -O2 -Wno-format-overflow -Wall -Wc++11-compat -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wc++14-compat -Wc++1z-compat -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=multistatement-macros -flifetime-dse=1 -march=native -O2 -pipe -fno-plt -fno-exceptions -fno-strict-aliasing -fno-rtti -fno-exceptions -fno-math-errno -msse2 -mfpmath=sse -pthread -pipe -g -O2 -w -fomit-frame-pointer -Wno-error=shadow /home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/layout/mathml/nsMathMLChar.cpp
 0:59.17 make[5]: *** [/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/config/rules.mk:886: nsMathMLChar.o] Error 1
 0:59.17 make[4]: *** [/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/config/recurse.mk:71: layout/mathml/target] Error 2
 0:59.17 make[4]: *** Waiting for unfinished jobs....
 1:07.35 liburiloader_prefetch.a.desc
 1:12.15 brotli
 1:34.05 libtoolkit_components_places.a.desc
 1:35.09 libdom_xslt_xpath.a.desc
 1:42.76 libicuuc.a.desc
 1:55.46 libicui18n.a.desc
 1:55.53 make[3]: *** [/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/config/recurse.mk:33: compile] Error 2
 1:55.53 make[2]: *** [/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/platform/config/rules.mk:494: default] Error 2
 1:55.53 make[1]: *** [/home/micwoj92/Desktop/pr/palemoon-gtk3/src/Pale-Moon/client.mk:406: realbuild] Error 2
 1:55.53 make: *** [client.mk:164: build] Error 2
 1:55.56 0 compiler warnings present.


User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35404
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: Building on GCC 11

Unread post by Moonchild » 2021-05-14, 23:05

It's likely because of GCC 11's breaking changes: https://www.gnu.org/software/gcc/gcc-11/porting_to.html

Header dependency changes
Some C++ Standard Library headers have been changed to no longer include other headers that they do need to depend on. As such, C++ programs that used standard library components without including the right headers will no longer compile. The following headers are used less widely in libstdc++ and may need to be included explicitly when compiled with GCC 11:

<limits> (for std::numeric_limits)
<memory> (for std::unique_ptr, std::shared_ptr etc.)
<utility> (for std::pair, std::tuple_size, std::index_sequence etc.)
<thread> (for members of namespace std::this_thread.)

std::numeric_limits is a standard and broadly-used c++ feature. I'm not sure what they were thinking, if anything, when deciding to require special includes for that set of const templates. Not like that takes oodles of memory or what not.
For the record, std::numeric_limits is used in a hell of a lot of places in UXP. I don't particularly feel the drive to make special arrangements for gcc 11 in near 200 files.
numeric_limits

Found 562 matching lines in 193 files
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

User avatar
micwoj92
Fanatic
Fanatic
Posts: 174
Joined: 2020-12-22, 20:57

Re: Building on GCC 11

Unread post by micwoj92 » 2021-05-15, 20:11

So if I'm understanding it correctly it looks like the problem can be solved by couple

Code: Select all

#include
's where needed?

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35404
Joined: 2011-08-28, 17:27
Location: Motala, SE
Contact:

Re: Building on GCC 11

Unread post by Moonchild » 2021-05-15, 20:16

Maybe. And as I pointed out not "a couple".
And likely it needs to be in #ifdef blocks specifically for gcc 11 if the implied new headers aren't available on other compilers, platforms or versions of gcc.

aaaand... when you're done with that it's quite possible you'll run into more of the same or other breaking changes imposed by gcc 11.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

New Tobin Paradigm

Re: Building on GCC 11

Unread post by New Tobin Paradigm » 2021-05-15, 20:28

Well I believe SOMEWHERE in the build system there are standard includes that are available when needed. Not entirely sure where this is defined if it is. Regardless, we can watch bug #1683838.

User avatar
Nheghathivhisth
New to the forum
New to the forum
Posts: 1
Joined: 2021-07-21, 08:34

Re: Building on GCC 11

Unread post by Nheghathivhisth » 2021-07-21, 10:04

It seems that #include <limits> is missing only in the

platform/gfx/2d/BaseRect.h
platform/netwerk/base/nsURLParsers.cpp

files, if I am not wrong.

Gentoo build works fine with gcc-11 after these includes are added. Maybe I am not placing them there in the correct order.
This way built Pale Moon "survives" HTML5Test with score of 428 points and is able to play television stream and visit Twitter without any troubles happening.

Locked