[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference clt::dec_pascal_bugs

Title:DEC Pascal Bug Reports
Notice:New kit announcement in TURRIS::Pascal conference
Moderator:TLE::GARRISON
Created:Wed Sep 09 1992
Last Modified:Fri May 30 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:838
Total number of notes:3659

833.0. "Compiler error with parameter initialization" by TLE::REAGAN (All of this chaos makes perfect sense) Thu Mar 13 1997 16:06

The following program gets an internal error on VAX, and an
assertion with a GEM-based compiler.  If you use a VARYING
instead of a STRING, it works.  Also, on VAX, if you only have
1 parameter instead of 2, it works.  With a GEM-based compiler,
it gets an assertion even with 1 parameter.

				-John

program foo(output);
type
   rec_a = record
           s : string(16);
           end;

procedure test(p : rec_a := [otherwise zero];
               q : rec_a := [otherwise zero]);
  begin
  writeln(p.s,q.s);
  end;
begin
test;
end.

T.RTitleUserPersonal
Name
DateLines
833.1TLE::REAGANAll of this chaos makes perfect senseWed May 21 1997 16:2514
    This is an invalid program.  We made the decision back when we
    added schema that we wouldn't handle default parameter values for
    run-time-sized types.  If you try something like
    
    p : rec_a := zero
    
    you already get an error message.  I've fixed the compiler to also
    give a message for [otherwise zero].
    
    Yes, in theory, we certainly could support these concepts, but not
    this close to the next release and not without some reasonable
    requests from customers.
    
    				-John