Slashdot Mirror


Winner of the 2015 Underhanded C Contest Announced (underhanded-c.org)

Xcott Craver writes: The Underhanded C contest results have now been announced. This time the contest challenge was to cause a false match in a nuclear inspection scenario, allowing a country to remove fissile material from a warhead without being noticed. The winner receives $1000 from the Nuclear Threat Initiative.

3 of 48 comments (clear)

  1. Re:Do these programs compile by Anonymous Coward · · Score: 5, Insightful

    yes? mine do. Always.
    if there's a warning you fix it. Or if it's unfixable you suppress that specific warning.

  2. Re:Do these programs compile by luis_a_espinal · · Score: 5, Insightful

    Some of the "warning" -Wall checks and calls out are asinine. There not worth the time to "fix" just to make the compiler happy.

    I cannot remember a concrete, very specific case from ages past where this was true. But in general, and after seeing a ton of code, if you start from the beginning with -Wall -Werror and don't let that shit go, it goes a long way towards maintainability.

    Additionally, the moment you let that discipline go, things begin to go to shit. And before you know it, you have your compilation logs fulled with warnings that you cannot turn off because of the off change one of them might be relevant, and no way to go back and clean that shit up because the technical debt is too huge.

    I hate working with projects were -Wall -Werror is not the norm for the bulk of source code. In the general case, warnings are latent errors and you might as well squash them without mercy before the creep out of your control.

  3. Re:Do these programs compile by Anonymous Coward · · Score: 2, Insightful

    Some of the "warning" -Wall checks and calls out are asinine. There not worth the time to "fix" just to make the compiler happy.

    Dude, when the folks who wrote the compiler that you're using to turn your source code into a runnable program took the time to do extra work to warn you that your seemingly-correct source code does something dodgy, you'd probably be best served to listen to them.