Timothy E Baldwin
authored
OS_EvaluateExpression is documented as applying GSTrans to any strings within the expression, but did instead GSTrans the entire expression. This would result in a sequence such as: *Set Alias$@RunType_FD1 "Basic -quit ""%0"" %*1" *If "<Alias$@RunType_FD1>"="" Then Set Alias$@RunType_FD1 @RunType_FFB %*0 raising a "Unknown operand" error as the quote in the variable were interpreted as expression syntax. See https://www.riscosopen.org/forum/forums/5/topics/16127 Unfortunately skipping the initial GSTrans breaks common code such as: If "<StrED_cfg$Dir>" = "" AND <Ctrl$Pressed> = 0 Then ... If "<Zap$OSVsn>" <> "" Then SetEval ZapFonts$OSVsn <Zap$OSVsn> Fix by applying a GSTrans transformation over unquoted parts of the expression, then applying GSTrans over the quoted strings. Version 6.51. Tagged as 'Kernel-6_51'