3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-09-10 19:51:27 +00:00

Ensure static IdStrings get prepopulated when initializing yosys

An alternative would be to call ensure_prepopulated() in various
IdString methods.
This commit is contained in:
Jannis Harder 2025-09-08 13:33:46 +02:00
parent ca9d1e5fd8
commit 0068b71558
2 changed files with 9 additions and 2 deletions

View file

@ -217,8 +217,7 @@ struct RTLIL::IdString
return it->second;
}
if (global_id_index_.empty())
prepopulate();
ensure_prepopulated();
if (!p[0])
return 0;
@ -457,6 +456,12 @@ struct RTLIL::IdString
private:
static void prepopulate();
public:
static void ensure_prepopulated() {
if (global_id_index_.empty())
prepopulate();
}
};
namespace hashlib {

View file

@ -196,6 +196,8 @@ void yosys_setup()
already_setup = true;
already_shutdown = false;
IdString::ensure_prepopulated();
#ifdef WITH_PYTHON
// With Python 3.12, calling PyImport_AppendInittab on an already
// initialized platform fails (such as when libyosys is imported