TIL C++ has exception for main function to be without return even though they forced it to have int return type. Can someone explain to me why this was done? C was happy with void return type but C++ forces int, yet implicitly adds return 0 if missing.