Looks like error code coming from reason phrase of CLOSE_FRAME can be very big number (64 bits) but the target enum QuicErrorCode can be of non-fixed underlying type unsigned int (32 bits). This can lead to narrowing. I have checked this behavior by updating the QuicFramerTest.ConnectionCloseFrameWithUnknownErrorCode so it sends following reason phrase "4294967296:bla" which leads to quic_error_code with value 0 (QUIC_NO_ERROR) because of narrowing.
Looks like error code coming from reason phrase of CLOSE_FRAME can be very big number (64 bits) but the target enum QuicErrorCode can be of non-fixed underlying type unsigned int (32 bits). This can lead to narrowing. I have checked this behavior by updating the QuicFramerTest.ConnectionCloseFrameWithUnknownErrorCode so it sends following reason phrase "4294967296:bla" which leads to quic_error_code with value 0 (QUIC_NO_ERROR) because of narrowing.
The problematic code: