Spurious error ("Illegal character \0") on '\xFF'

The following simple file (“test.c”):

#include <stdio>
int main()
{
    printf("България\n");
}

causes the following two PGCC errors:

PGC-S-0026-Unmatched double quote (test.c: 3)
PGC-F-0025-Illegal character: ‘\0’ (test.c: 4)

Unlike PGCC, PGCPP successfully compiles it.
The encoding I use is the standard Windows encoding for Cyrillic letters, “Windows-1251”. If I replace the last character of the string “България” (ASCII code 255) with “\xff” in the string (so that it becomes “Българи\xff”), PGCC also successfully compiles it.

This seems like a bug. If so, please report it to the developer team. Alas, I can’t leave my code with "\xff"s instead of the "я"s, since I’d like it to allow easy transcoding of the Cyrillic strings in it from one encoding to another (e.g. from “Windows-1251” to “UTF-8”).

Hi luchezar,

Thanks for the report. I’ve submitted a problem report (TRS#18049) and sent it to our engineers for further investigation.

  • Mat

luchezar,

Some late housekeeping. The problem 18049 was corrected in the 12.2 release.

regards,
dave