diff options
author | Clifford Wolf <clifford@clifford.at> | 2018-06-05 17:10:00 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-05 17:10:00 +0200 |
commit | 7bb3a5c5651570d99073202d0dc05549b3d58932 (patch) | |
tree | f42c89607963092d8146c450685614c1e7a51f06 | |
parent | 3021d8c1fb910bc9c4270d463114f3600ccbb0bf (diff) | |
parent | eb9947d3da711adcef9ae3444a288a44b8d05952 (diff) | |
download | icestorm-7bb3a5c5651570d99073202d0dc05549b3d58932.tar.gz icestorm-7bb3a5c5651570d99073202d0dc05549b3d58932.tar.bz2 icestorm-7bb3a5c5651570d99073202d0dc05549b3d58932.zip |
Merge pull request #150 from mithro/better-error
Improve error message.
-rwxr-xr-x | icebox/icebox_hlc2asc.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/icebox/icebox_hlc2asc.py b/icebox/icebox_hlc2asc.py index 3f3df90..54c9dc0 100755 --- a/icebox/icebox_hlc2asc.py +++ b/icebox/icebox_hlc2asc.py @@ -509,7 +509,6 @@ def logic_expression_to_lut(s, args): for j in range(len(args)))) else '0' for i in range(1 << len(args))) - class ParseError(Exception): pass @@ -749,11 +748,19 @@ class Tile: bits_set.add((int(match.group(2)), int(match.group(3)))) if set.intersection(bits_set, bits_clear): - raise ValueError("trying to set/clear the same bit(s) at once") + raise ValueError( + "trying to set/clear the same bit(s) at once set:{} clear:{}".format( + bits_set, bits_clear)) if set.intersection(bits_set, self.bits_cleared) or \ set.intersection(bits_clear, self.bits_set): - raise ParseError("conflicting bits") + raise ParseError("""\ +conflicting bits {} + setting:{:<30} - current clear:{} +clearing:{:<30} - current set :{}""".format( + bits, + str(bits_set), self.bits_cleared, + str(bits_clear), self.bits_set)) self.bits_set.update(bits_set) self.bits_cleared.update(bits_clear) |