G'day. I noticed that pound signs in my CGI scripts were outputting as diamonds with ? inside which is usually an indicator that a UTF8 declared page is attempting to output a Latin1 character.
Investigating further I can see that the Rose module .pm file that contains the pound sign within the code (and which correctly has use utf8; at the top) is indeed encoded Latin1.
This file is generated with Rose make_modules. The batch Perl script that generates the file using make_modules has all the following at the top:
use utf8;
use open ':encoding(utf8)';
binmode(STDOUT, ":utf8");
The make_modules incorporates 2 additional files via module_postamble but both of these are encoded and opened in UTF8.
I currently conclude that make_modules is creating a Latin1 encoded file even though all the input is UTF8. Is there a way to control this and have it output a UTF8 file?
many thanks for any tips. 8o)