From 76ccd332a60939abe1df454f4dc322d334baeb51 Mon Sep 17 00:00:00 2001 From: Wilson Snyder Date: Sun, 16 Oct 2022 09:41:39 -0400 Subject: [PATCH] Internals: Remove DETECTARRAY, dead code. --- docs/guide/warnings.rst | 12 ++++-------- src/V3Error.h | 3 +-- test_regress/t/t_detectarray_1.v | 2 -- test_regress/t/t_detectarray_2.v | 4 ---- test_regress/t/t_detectarray_3.v | 2 -- 5 files changed, 5 insertions(+), 18 deletions(-) diff --git a/docs/guide/warnings.rst b/docs/guide/warnings.rst index 00f929b04..1da3907b6 100644 --- a/docs/guide/warnings.rst +++ b/docs/guide/warnings.rst @@ -465,15 +465,11 @@ List Of Warnings .. option:: DETECTARRAY - .. TODO better example + Historical, never issued since version 3.862. - Error when Verilator tries to deal with a combinatorial loop that could - not be flattened, and which involves a datatype which Verilator cannot - handle, such as an unpacked struct or a large unpacked array. This - typically occurs when :vlopt:`-Wno-UNOPTFLAT ` has been used - to override an UNOPTFLAT warning (see below). - - The solution is to break the loop, as described for UNOPTFLAT. + Was an error when Verilator tried to deal with a combinatorial loop that + could not be flattened, and which involves a datatype which Verilator + could not handle, such as an unpacked struct or a large unpacked array. .. option:: DIDNOTCONVERGE diff --git a/src/V3Error.h b/src/V3Error.h index d103866d6..b68941e55 100644 --- a/src/V3Error.h +++ b/src/V3Error.h @@ -54,7 +54,6 @@ public: I_DEF_NETTYPE_WIRE, // `default_nettype is WIRE (false=NONE) I_TIMING, // Enable timing from /*verilator timing_on/off*/ // Error codes: - E_DETECTARRAY, // Error: Unsupported: Can't detect changes on arrayed variable E_ENCAPSULATED, // Error: local/protected violation E_PORTSHORT, // Error: Output port is connected to a constant, electrical short E_UNSUPPORTED, // Error: Unsupported (generally) @@ -167,7 +166,7 @@ public: // Boolean " I_CELLDEFINE", " I_COVERAGE", " I_TRACING", " I_LINT", " I_DEF_NETTYPE_WIRE", " I_TIMING", // Errors - "DETECTARRAY", "ENCAPSULATED", "PORTSHORT", "UNSUPPORTED", "TASKNSVAR", "NEEDTIMINGOPT", "NOTIMING", + "ENCAPSULATED", "PORTSHORT", "UNSUPPORTED", "TASKNSVAR", "NEEDTIMINGOPT", "NOTIMING", // Warnings " EC_FIRST_WARN", "ALWCOMBORDER", "ASSIGNDLY", "ASSIGNIN", "BADSTDPRAGMA", diff --git a/test_regress/t/t_detectarray_1.v b/test_regress/t/t_detectarray_1.v index aa2f20e04..df266bb06 100644 --- a/test_regress/t/t_detectarray_1.v +++ b/test_regress/t/t_detectarray_1.v @@ -1,7 +1,5 @@ // DESCRIPTION: Verilator: Simple test of unoptflat // -// Trigger the DETECTARRAY error. -// // This file ONLY is placed into the Public Domain, for any use, // without warranty, 2013 by Jeremy Bennett. // SPDX-License-Identifier: CC0-1.0 diff --git a/test_regress/t/t_detectarray_2.v b/test_regress/t/t_detectarray_2.v index 72df7ad80..141fc500e 100644 --- a/test_regress/t/t_detectarray_2.v +++ b/test_regress/t/t_detectarray_2.v @@ -1,9 +1,5 @@ // DESCRIPTION: Verilator: Simple test of unoptflat // -// This should trigger the DETECTARRAY error like t_detectarray_1.v, but in -// fact it casuses a broken link error. The only difference is that the struct -// is defined using a constant rather than a localparam. -// // This file ONLY is placed into the Public Domain, for any use, // without warranty, 2013 by Jeremy Bennett. // SPDX-License-Identifier: CC0-1.0 diff --git a/test_regress/t/t_detectarray_3.v b/test_regress/t/t_detectarray_3.v index 13b1e0592..07e7c1be2 100644 --- a/test_regress/t/t_detectarray_3.v +++ b/test_regress/t/t_detectarray_3.v @@ -1,7 +1,5 @@ // DESCRIPTION: Verilator: Simple test of unoptflat // -// Trigger the DETECTARRAY error on packed structure. -// // This file ONLY is placed into the Public Domain, for any use, // without warranty, 2014 by Jie Xu. // SPDX-License-Identifier: CC0-1.0