Chris Leary
Chris Leary
(And note this is technically a frontend issue since it's an error in IR conversion.)
+1 this would be quite nice to support, and can follow our "feature that matches Rust" principle!
Re: #982 -- we generally don't want to introduce more backtracking into the parser as an implementation strategy, since it makes for bad error messages and slow parsing. I was...
Oh, and the workaround is to define a type alias and then use that as the parametric argument to `zero!`
I think this is probably documented in other issues but they'd probably be harder to find vs repeating here. :-) The challenge is that you want static behavior and dynamic...
Rob said I could steal this one. :-)
Example of something very simple that should flag an error -- even though there's a "phantom" parametric (unused in the body of the struct definition), they are _structurally_ the same...
Was playing on my home laptop and bumping it up didn't work, I tried to make the LLVM toolchains optionally register because it seems like things work "just fine" when...
[enhancement] User-specified `dead_if(predicate)` akin to `assume(predicate)` to enable clock gating
@meheff notes that our current conditional specialization does basic observability analysis here: https://github.com/google/xls/blob/3d0366f21867fb4f51aaf38faf4b2730ccf7dad5/xls/passes/conditional_specialization_pass.cc#L338 Another relevant ref that came up in discussion, paper from UCLA/AutoESL in '09: https://www.csl.cornell.edu/~zhiruz/pdfs/blodc-islped2009.pdf
Note that this is what `unroll_for!` is for in the DSL -- in a normal type system that doesn't macro expand it doesn't make sense to have one binding (i.e....