SDL Wiki
(This is the documentation for SDL3, which is the current stable version. SDL2 was the previous version!)

SDL_FALLTHROUGH

A macro to signal that a case statement without a break is intentional.

Header File

Defined in <SDL3/SDL_begin_code.h>

Syntax

#define SDL_FALLTHROUGH [[fallthrough]]

Remarks

C compilers have gotten more aggressive about warning when a switch's case block does not end with a break or other flow control statement, flowing into the next case's code, as this is a common accident that leads to strange bugs. But sometimes falling through to the next case is the correct and desired behavior. This symbol lets an app communicate this intention to the compiler, so it doesn't generate a warning.

It is used like this:

switch (x) {
    case 1:
        DoSomethingOnlyForOne();
        SDL_FALLTHROUGH;  // tell the compiler this was intentional.
    case 2:
        DoSomethingForOneAndTwo();
        break;
}

Version

This macro is available since SDL 3.1.3.


CategoryAPI, CategoryAPIMacro, CategoryBeginCode


[ edit | delete | history | feedback | raw ]

[ front page | index | search | recent changes | git repo | offline html ]

All wiki content is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
Wiki powered by ghwikipp.