Investigating why symbols created by read are not equal to those created in C.

This commit is contained in:
Simon Brooke 2026-05-06 09:16:46 +01:00
parent 1cfd333e26
commit cf655e8020
6 changed files with 67 additions and 123 deletions

View file

@ -172,7 +172,6 @@ char *lisp_string_to_c_string( struct pso_pointer s ) {
return result;
}
/**
* Return a lisp symbol representation of this wide character string. In
* symbols, I am accepting only lower case characters and certain punctuation.
@ -182,9 +181,9 @@ struct pso_pointer c_string_to_lisp_symbol( struct pso_pointer frame_pointer,
struct pso_pointer result = nil;
for ( int i = wcslen( symbol ) - 1; i >= 0; i-- ) {
char32_t c = towlower( symbol[i] );
char32_t c = symbol[i];
if ( iswalpha( c ) || wcschr(L"-*|!?", c)) {
if ( symbol_char_p(c)) {
result = make_symbol( frame_pointer, c, result );
}
}