Ada:包链接错误

时间:2017-10-23 14:01:53

标签: module package task ada

我的项目有问题。 链接包和任务可见性的问题。

in bufor1.ads

package bufor1 is
    task type Bufor is
        entry Przyjmij(Wyrob: in Typ_Wyrobow; Numer: in Integer);
        entry Wydaj(Zestaw: in Typ_Zestawow; Numer: out Integer);
    end Bufor;
end bufor1;

在另一个广告文件中,我想像这样调用Wydaj函数:

with bufor1; use bufor1;
...
bufor1.Bufor.Wydaj(Rodzaj_Zestawu, Numer_Zestawu);

导致错误:

  

在表达式中无效使用子类型标记或调用

我是ADA的新用户。提前感谢您的时间。 问候。

1 个答案:

答案 0 :(得分:4)

您正在尝试调用task type,而不是任务对象。 要么使它成为一个任务对象(匿名任务类型):

task Bufor is

或创建任务对象:

foo : bufor1.Bufor; ... foo.Wydaj(Rodzaj_Zestawu, Numer_Zestawu);