This bug is related to bug 2707. I think the following code should generate a warning:
int64_t i = 9223372036854775807ll; int32_t j = i; It does not generate any warnings with "gcc-4.2.1 -Wall -Wextra". -- Summary: gcc does not warn on trucate of int64_t to int32_t Product: gcc Version: 4.2.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sean dot c dot rhea at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37249