On Sun, 2008-03-30 at 13:58 -0700, ma740988@[EMAIL PROTECTED]
wrote:
> -- used to restrict a variable within a range
> -- for example: -PI to +PI
> type Restrict_Function is access function (X: Real4) return Real4;
>
> type Filt_Data is
> record
> Restrict_Func : Restrict_Function ;
>
> end record ;
>
>
> -- within a procedure we have
> Fdata : Filt_Data;
> Restrict_Func : Restrict_Function := FData.Restrict_Func ;
>
> if Restrict_Func /= null then
> -- stuff
> endif
>
> At issue: I'm not following the conditional logic 'if (Restrict_Func /
> = null)'. Not understanding the impetus behind the check for null.
The type Restrict_Function includes the null value.
The FData.Restrict_Func record component gets the default
initial value for access values. It is therefore null.
So Filt_Data.Restrict_Func is actually null.