mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-07-06 22:12:47 -05:00
Replace assert(false) with an unreachable() macro.
Taking a leaf out of the LLVM code base: this macro still includes an assert(false) so that the message will show up in a typical build, but it follows it up with a call to a function explicitly marked as no- return. So this ought to do a better job of convincing compilers that once a code path hits this function it _really doesn't_ have to still faff about with making up a bogus return value or filling in a variable that 'might be used uninitialised' in the following code that won't be reached anyway. I've gone through the existing code looking for the assert(false) / assert(0) idiom and replaced all the ones I found with the new macro, which also meant I could remove a few pointless return statements and variable initialisations that I'd already had to put in to placate compiler front ends.
This commit is contained in:
@ -6540,7 +6540,7 @@ int format_small_keypad_key(char *buf, Terminal *term, SmallKeypadKey key)
|
||||
case SKK_END: code = 4; break;
|
||||
case SKK_PGUP: code = 5; break;
|
||||
case SKK_PGDN: code = 6; break;
|
||||
default: assert(false && "bad small keypad key enum value");
|
||||
default: unreachable("bad small keypad key enum value");
|
||||
}
|
||||
|
||||
/* Reorder edit keys to physical order */
|
||||
|
Reference in New Issue
Block a user