Cannot pass FlashStringHelper string from F macro to called routine.

On version 1.8.4 of the Arduino IDE on Windows 10.

Here’s a stripped out sample of my problem. I saw an answer to this same problem that gave the solution I am using here. That answer is:

I do see that your snippet has the __FlashStringHelper error. This is because the output of the F() function is a (char const *) and your definition it is a (char *). Hence the miss-match.

It does not work for me, still giving:

cannot convert ‘const __FlashStringHelper*’ to ‘const char*’ for argument ‘1’ to ‘void AppendAndSendHTML(const char*, bool, bool)’

void setup() { }

void AppendAndSendHTML(char const * HTML, bool initial = false, bool final = false)
{ }

void loop() {
  AppendAndSendHTML(F("HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n"), true, false);

That's an incorrect answer. You need to do this:

void AppendAndSendHTML(const __FlashStringHelper* HTML, bool initial = false, bool final = false)