asyncvlsi / act

ACT hardware description language and core tools.
http://avlsi.csl.yale.edu/act
GNU General Public License v2.0
101 stars 23 forks source link

Transistor length doesn't support pint expressions #18

Closed nbingham1 closed 3 years ago

nbingham1 commented 3 years ago

Describe the bug When using a pint expression to set the transistor length, aflat produces a parse error about transistor flavor. Notice that replacing "B" with 20 does not produce this error.

To Reproduce Steps to reproduce the behavior:

  1. Use the ACT source included below.
  2. Run the following sequence of commands: aflat test.act
  3. Observe that the following parse error occurs.
    Parse error: Could not parse entire file.
    Error parsing production rule: unknown transistor flavor
    File `test.act', line: 8, col: 9.
    Exception: number=1, message -none-
    FATAL: Uncaught exception

ACT source test.act:

pint A = 6;
pint B = 20;

defproc test()
{
  bool a, b;
  prs {
    a<A,B> -> b-
    ~a<A,B> -> b+
  }
}

test t;

Expected behavior aflat succeeds and emits the flattened prs.

Computer setup (please complete the following information): Ubuntu 20.10 gcc 10.2.0 GNU Make 4.3 ACT commit a75aa488c29edb8e8b29fa1e215c54793b9582cc

rmanohar commented 3 years ago

Should be fixed now.

nbingham1 commented 3 years ago

Yep, its fixed. Thanks!