Steven Sharp wrote, of static locals of a task: > Given this, it is technically noncompliant to inline a > static task or function at a call site using variables > local to that call site or calling process. However, > I wouldn't expect anyone to complain about it. I think I would complain. Verilog's subprogram semantics are bizarre, but entirely consistent; once you've understood argument passing by copy-in/copy-out, and static locals, there's a natural tendency to make the best of what you have. Given that tasks are local to a module and instantiated therewith, it's entirely reasonable and useful to exploit a task's static local storage in various interesting ways. In general I would expect such uses to have been superseded by classes, but the persistence and per-instance-ness (!) of task/function locals should not be compromised. > The sharing of these statics for locals in a static > task or function is generally considered a potential > problem to be avoided, not something to rely on. But if people have learnt to rely on it in creative but standards-compliant ways... -- Jonathan Bromley Doulos LtdReceived on Wed May 3 16:23:36 2006
This archive was generated by hypermail 2.1.8 : Wed May 03 2006 - 16:23:41 PDT