From 89bf0115cd516086308596bab9b396ed37230f6e Mon Sep 17 00:00:00 2001 From: Keith Rothman <537074+litghost@users.noreply.github.com> Date: Mon, 14 Jan 2019 11:37:45 -0800 Subject: [PATCH] Accumulate all missing features, rather than stopping on first failure. Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com> --- prjxray/fasm_assembler.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/prjxray/fasm_assembler.py b/prjxray/fasm_assembler.py index 4b633d45..ea4378c1 100644 --- a/prjxray/fasm_assembler.py +++ b/prjxray/fasm_assembler.py @@ -138,6 +138,7 @@ class FasmAssembler(object): (gridinfo.tile_type, db_k, line)) def parse_fasm_filename(self, filename): + missing_features = [] for line in fasm.parse_fasm_filename(filename): if not line.set_feature: continue @@ -160,4 +161,10 @@ class FasmAssembler(object): if flat_set_feature.start is not None: address = flat_set_feature.start - self.enable_feature(tile, feature, address, line_str) + try: + self.enable_feature(tile, feature, address, line_str) + except FasmLookupError as e: + missing_features.append(str(e)) + + if missing_features: + raise FasmLookupError('\n'.join(missing_features))