Here is the code (valid C and C++)

```
#include <stdio.h>

int main() {
    printf("asfd");
    // LINE 1
    return 0;
}

```

If in line 1 I put segfaulting expression the program would just crash without printing anything (as expected).

But why is the above code printing "asdf" and not exiting without buffer being flushed? What is under the hood and why does it work as expected?