В Dependency Walker имя функции "Sum" без всяких значков.
Тут дело, кажется, не в этом. Если в функции не использовать динамический массив, то всё работает.
## Код:
```
PROCEDURE ["StdCall"] Sum*(n: INTEGER): REAL;
VAR a: ARRAY 50 OF REAL; i: INTEGER; s: REAL; 
BEGIN 
  FOR i := 0 TO n-1 DO a[i] := i; END; 
  s := 0; 
  FOR i := 0 TO n-1 DO s := s + a[i]; END;
  RETURN s; 
END Sum;
```
