The check now recognizes error cases like new char[strlen(s + 1)] and suggests a fix in the format new char[strlen(s) + 1].
Break after if condition. You could use the ternary operator, too.
Maybe a safeguard assertion if Alloc is nullptr after the second assignemt. This would uncover a potential bug.
The backticks should be single quotes instead, I think.
Please add tests showing that the correct behavior does not diagnose. Also, please add a test showing that this works with overloaded operator new().