• Perroboc@lemmy.world
    link
    fedilink
    arrow-up
    56
    ·
    1 year ago

    int unused_variable = 0;

    Dude wtf is your problem don’t just leave things lying about there don’t you know how to code I mean what the- I don’t go to your house and leave shit on the floor and just—

    int _unused_variable = 0;

    Ok. We cool.

    • lseif@sopuli.xyz
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      sometimes you need an unused variable. some uses in rust:

      // destructuring
      let (width, _height) = get_dimensions();
      
      // trait implementations (i couldnt think of a better example for this)
      impl Into for AlwaysZero {
          fn into(_value: Self) -> {
              return 0;
          }
      }
      
      // some types (eg. Result) must be 'used'
      // assigned to a variable if we dont care about the return value
      let _ = returns_result("foo");
      
  • nautilus@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    49
    arrow-down
    1
    ·
    1 year ago

    mfw my face when the go compiler fucking screams at me because I dared to declare a variable and not use it

    • clearleaf@lemmy.world
      link
      fedilink
      arrow-up
      11
      arrow-down
      1
      ·
      1 year ago

      “Don’t worry too much about your loops bro, I am the apex of computer science research, I know every optimization in the book.” Ok want to compile this? “Is that… An unused variable?!? WHAT THE FUCK ARE WE GOING TO DO GOD IS DEAD”

      • nautilus@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        honestly my dumb ass will choose for i in list: over for i := range slice { every single time. I’m ugly and I’m proud!

  • Bappity@lemmy.world
    link
    fedilink
    English
    arrow-up
    29
    ·
    edit-2
    1 year ago

    I am guilty of passing Exception variables into try catches and not using them

  • Limitless_screaming@kbin.social
    link
    fedilink
    arrow-up
    14
    arrow-down
    1
    ·
    1 year ago

    Function is changing a global variable, the global variable is checked after every call to the function. That’s your return value.

    • qaz@lemmy.worldOP
      link
      fedilink
      arrow-up
      10
      arrow-down
      2
      ·
      1 year ago

      I would love to use golang for this but it’s standard library alone is bigger than the amount of available RAM.

      • gredo@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        Interesting, since golang only includes the parts of the stdlib that are used in the executable binary.

        • qaz@lemmy.worldOP
          link
          fedilink
          arrow-up
          4
          ·
          1 year ago

          I just tested it and a simple hello world program still produces a 1.7MiB binary, while the device only has 512KiB of RAM.

          package main
          
          import "fmt"
          
          func main() {
              fmt.Println("hello world")
          }
          
  • fl42v@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Idk, mb they expected you to modify smth passed by reference/pointer, and the compiler’s too busy to care :)

  • marcos@lemmy.world
    link
    fedilink
    arrow-up
    1
    arrow-down
    3
    ·
    1 year ago

    Ok, you are certainly in one of those languages where plenty of your functions shouldn’t return a value, and you won’t ever let the compiler know that.

    On all of the other languages, it’s an error, not even a warning.