[an error occurred while processing this directive]
|
здравствуйте уважаемые,
вопрос такого содержания - давно хотел себе генератор псевдослучайной последовательности чисто для моделирования.
надыбал в инете такой вот код
attribute FOREIGN : string;
function RAND return integer;
-- returns an integer pseudo-random number with uniform distribution.
-- It uses the foreign native C function rand().
attribute FOREIGN of RAND : function is "C_NATIVE";
function RAND return integer is begin end;
по немногословному описанию и после изучения стандарта IEEE Std 1076,2000 Edition в общем стало понятно чито откудато извне эту СИ-шную функцию компилятор должен вытащить и вставить ее результат вместо результата вызываемой, к тому же поддерживается этот атрибут с 1992года, но на поверку
во первых - при компиляции выдается варнинг что функция завершается без returna
во вторых - при моделировании вываливается то же error
тоесть выходит что никакая функция извне не вызывается. может нужно где пути к либам указать, тока я не нашел где
перерыл все хелпы Альдека - нигде этот атрибут не описывается в сочетании со значением "C_NATIVE".
в стандарте тоже описания действий по моделирования функций с такими атрибутами нет.
кто использовал такое - поделитезь плз секретом.
причем я бы сказал что большей интерес представляет вообще факт возможности таких вызовов
E-mail: info@telesys.ru