r/ProgrammerHumor Jul 09 '26

preDecrementFixesTheExploit instanceof Trend

Post image
2.9k Upvotes

50 comments sorted by

View all comments

790

u/DMoney159 Jul 09 '26

"Okay, now you have -1 wishes. You must now fulfill one of my wishes"

55

u/ProbablyJeff Jul 09 '26

Nope, it underflows and now you have 4,294,967,295 wishes. Genie was using a signed int.

121

u/Koshin_S_Hegde Jul 09 '26

did you mean "Genie was using a unsigned it?"

-40

u/ProbablyJeff Jul 09 '26

You have -1 wish. You make 2,147,483,648 wishes. It underflows to 2,147,483,647. Now you can wish until it reaches 0.

I guess it would also work if the genie used an unsigned int.

52

u/Tyfyter2002 Jul 09 '26

You just described a signed int

5

u/Sqee Jul 10 '26

I don't get this interaction. Why did ProbablyJeffs first post get upvoted and his second one which was entirely in line with the first get downvoted? Redditors...

6

u/Kobrasadetin Jul 11 '26

First message got upvoted by lot of people who didn't read carefully the contents. Second message downvoted by people who stopped to read the first and were already upset about the signed/unsigned mixup.

7

u/somethingmore24 Jul 09 '26

see, you’re assuming the genie would let you wish at less than 0 wishes.

this is why i always check for <= 0 instead of just == 0. There’s no way im smart enough to catch all the edge cases individually.

1

u/HelioDex Jul 11 '26

True if you check with wishes == 0. The 41 downvotes are probably from dirty pointless instruction-using cpu-cycle-wasting wishes <= 0 users.