Баг или ошибка?

 
    switch(Symbol())
{ case "EURUSD":
StopLoss = SL_EUR;
break;
case "USDJPY":
StopLoss = SL_JPY;
break;
};


Компилятор говорит: 'switch' - different types in switch statement
 
Я тоже когда-то про это спрашивал. Ответ - "учите матчасть" :)
Конкретнее, выражение в switch может быть только целой или символьной константой. Как в чистом С. Хотя, на мой взгляд, было бы полезно расширить этот список и включить в него еще и строковые константы.

С уважением и т.д.
 
Как в чистом С

И в С++ и в Delphi также.
 
switch работает только с целочисленными значениями.

switch ( expression ) statement

labeled-statement :

case constant-expression : statement
default : statement


The type of switch expression and case constant-expression must be integral. The value of each case constant-expression must be unique within the statement body.