MISRA C:2023 Rule 22.4
There shall be no attempt to write to a stream which has been opened as read-only
Since R2024a
Description
Rule Definition
There shall be no attempt to write to a stream which has been opened as read-only.
Rationale
The Standard does not specify the behavior if an attempt is made to write to a read-only stream.
Polyspace Implementation
Polyspace® reports a violation of this rule if you open a stream as read-only and then attempt to write in the stream. The functions that are recognised as writing functions include:
fprintf()
,fprintf_s()
,fwprintf()
,fwprintf_s()
,vfprintf()
,vfprintf_s()
,vfwprintf()
,vfwprintf_s()
fwrite()
fputc()
,fputwc()
fputs()
,fputws()
ungetc()
,ungetwc()
A violation is reported once for a file. Subsequent write operations on the read-only file stream are not reported.
Troubleshooting
If you expect a rule violation but do not see it, refer to Diagnose Why Coding Standard Violations Do Not Appear as Expected.
Examples
Check Information
Group: Resources |
Category: Mandatory |
AGC Category: Mandatory |