9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* polymorphic buglet
@ 1995-11-17  9:21 forsyth
  0 siblings, 0 replies; 2+ messages in thread
From: forsyth @ 1995-11-17  9:21 UTC (permalink / raw)


adt Block[T] {
	int	fred;
	T	for2;
};

adt Blake[T] {
	int	sam;
	T	foru;
};

vortex% 8al t.l
t.l:6: syntax error, near symbol 'T'

i'm fairly sure that T is being entered in the wrong scope.






^ permalink raw reply	[flat|nested] 2+ messages in thread

* polymorphic buglet
@ 1995-11-17 14:46 philw
  0 siblings, 0 replies; 2+ messages in thread
From: philw @ 1995-11-17 14:46 UTC (permalink / raw)


These diffs fix both of forsyth's complaints.
diff's are relative to the CD.

This fixes the poly bug.

philw-helix% diff parl.y /n/juke/plan_9/sys/src/alef/port
242,254d241
< 		| Ttypename
< 		{
< 			$$ = an(ONAME, nil, nil);
< 			if($1.t->type != TPOLY) {
< 				diag(nil, "type parameter must be poly [%T]", $1.t);
< 				$$->t = at(TPOLY, 0);
< 				$$->sym = enter("POLY", Ttypename);
< 			}
< 			else {
< 				$$->t = $1.t;
< 				$$->sym = $1.s;
< 			}
< 		}

This fixes the !{.

347d346
< 	static int itmp;
355c354
< 	sprint(buf, ".i%d", itmp++);
---
> 	sprint(buf, ".i%d", stmp++);

You need to put the !{ fix in v/reg.c, 8/reg.c and k/reg.c

I will put a boddle on the web page tonight.

phil






^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1995-11-17 14:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1995-11-17  9:21 polymorphic buglet forsyth
1995-11-17 14:46 philw

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).