// Clause: 6.3.1.4 — real floating to integer; if integral part cannot be represented by the integer type, behavior is undefined.
#include <float.h>
#include <limits.h>
#include <stdio.h>
int main(void){
    volatile double x = DBL_MAX;   // finite, too large
    volatile int y = (int)x;       // UB if not representable
    printf("%d\n", y);
    return 0;
}
