else:\r
raise BadExpression(ERR_EXPR_TYPE)\r
if isinstance(Oprand1, type('')) and isinstance(Oprand2, type('')):\r
- if (Oprand1.startswith('L"') and not Oprand2.startswith('L"')) or \\r
- (not Oprand1.startswith('L"') and Oprand2.startswith('L"')):\r
+ if ((Oprand1.startswith('L"') or Oprand1.startswith('L')) and (not Oprand2.startswith('L"')) and (not Oprand2.startswith("L'"))) or \\r
+ (((not Oprand1.startswith('L"')) and (not Oprand1.startswith("L'"))) and (Oprand2.startswith('L"') or Oprand2.startswith('L'))):\r
raise BadExpression(ERR_STRING_CMP % (Oprand1, Operator, Oprand2))\r
if 'in' in Operator and isinstance(Oprand2, type('')):\r
Oprand2 = Oprand2.split()\r
PcdValue = PcdValue.strip()\r
if PcdValue.startswith('{') and PcdValue.endswith('}'):\r
PcdValue = SplitPcdValueString(PcdValue[1:-1])\r
+ if ERR_STRING_CMP.split(':')[0] in Value.message:\r
+ raise BadExpression("Type: %s, Value: %s, %s" % (self.PcdType, PcdValue, Value))\r
if isinstance(PcdValue, type([])):\r
TmpValue = 0\r
Size = 0\r