Implementing a software breakpoint means inserting a special breakpoint instruction to the execution memory. This means that the actual memory, containing the code, will be modified. If the Verify option is enabled, winIDEA compares the actual memory with the Program File. Since the memory has been modified by a breakpoint, verify will report errors.
It is not recommend to use software breakpoints in flash memory because it could lead to unpredicted behaviour and faster flash wear out.
If you are using the Verify command, disable all breakpoints prior to that:
1. Open Debug | Breakpoints.
2. Click the Disable All button.
3. Perform Debug | Verify Download.
Automatic verify after download is not affected as it is performed before breakpoints are set.