Giter Site home page Giter Site logo

Enable more g++ warning flags about fltk HOT 7 CLOSED

fltk avatar fltk commented on June 27, 2024
Enable more g++ warning flags

from fltk.

Comments (7)

Albrecht-S avatar Albrecht-S commented on June 27, 2024

Thanks for the offer.

I don't think though that we need to "support" any specific warning flags in our build environment. Users can always add their own flags when building FLTK with both build systems supported by us (autoconf/make and CMake), for instance by setting environment variables CXXFLAGS, LDFLAGS, etc.

Am I missing anything, are there other reasons I didn't see?

from fltk.

psyomn avatar psyomn commented on June 27, 2024

Nope, thanks for the reply! This answers my question.

from fltk.

erco77 avatar erco77 commented on June 27, 2024

Just want to check on the goal of the request, to make sure we aren't missing out on something.

Was the goal to just allow end users to influence build flags, and this is served by specifying e.g. CXXFLAGS?

Or is it to add specific new compiler warning flags that we should be using to ensure future FLTK development doesn't trip on code problems these new flags would prevent, but are flags that -Wall does not currently support? And if so, is the OP offering to provide some kind of mechanism that only enables such flags if the compile time g++ compiler environment supports them, and are not already enabled by -Wall?

If the latter, that might be interesting, though I would imagine our existing use of -Wall would cover this.. not sure.

Certainly I can say that when we used to compile on SGIs, the SGI compiler would catch many problems that gnu did not, and I imagine now that we also support clang, it similarly catches other problems gnu doesn't, and having such features /is/ useful.

Anyway, just checking if we're not missing something that might be good to add..

from fltk.

psyomn avatar psyomn commented on June 27, 2024

Or is it to add specific new compiler warning flags that we should be using to ensure future FLTK development doesn't trip on code problems these new flags would prevent, but are flags that -Wall does not currently support?

This was my original concern, but also wanted to give myself a "good first issue" so I could start learning the fltk code base. I figured that enabling a flag like -Wold-style-cast, or other small (perhaps benign) flags like this, could create a small task to get familiar with the code base.

from fltk.

erco77 avatar erco77 commented on June 27, 2024

If you'd like to familiarize yourself with the code base, feel free to try fixing bugs in the bug list: https://www.fltk.org/str.php
Some are pretty challenging, but some might be easy.

from fltk.

Albrecht-S avatar Albrecht-S commented on June 27, 2024

I figured that enabling a flag like -Wold-style-cast, or other small (perhaps benign) flags like this, could create a small task to get familiar with the code base.

@psyomn - Regarding the flag mentioned above: please note that we're using old style casts intentionally. Our code base is targeted at pretty old compilers, hence we don't use more modern C++ features.

Before you familiarize yourself with the FLTK code base you might want to take a look at our Configuration Management Plan, particularly at the chapter General Coding style.

from fltk.

psyomn avatar psyomn commented on June 27, 2024

Thanks!

from fltk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.