• QuaternionsRock@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    7 months ago

    I’ve never really thought about this before, but const volatile value types don’t really make sense, do they? const volatile pointers make sense, since const pointers can point to non-const values, but const values are typically placed in read-only memory, in which case the volatile is kind of meaningless, no?

    • rooster_butt@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      7 months ago

      They do in embedded when you are polling a read only register. The cpu can change the register but writing to it does nothing.

    • zea@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      0
      ·
      7 months ago

      Maybe there’s a signal handler or some other outside force that knows where that variable lives on the stack (maybe through DWARF) and can pause your program to modify it asynchronously. Very niche. More practical is purely to inhibit certain compiler optimizations.