In article <10391 at pt.cs.cmu.edu> hjelm at g.gp.cs.cmu.edu (Mark Hjelm) writes: <What is the compiler allowed/required to do for this: < f(a, b) < float a; < char b; < { < } It is semantically equivalent to: f(atmp,btmp) double atmp; int btmp; { float a = atmp; char b = btmp; .... }