Investigating why symbols created by read are not equal to those created in C.
This commit is contained in:
parent
1cfd333e26
commit
cf655e8020
6 changed files with 67 additions and 123 deletions
|
|
@ -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 );
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue