diff options
author | Clifford Wolf <clifford@clifford.at> | 2018-02-28 16:13:12 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-28 16:13:12 +0100 |
commit | 535fde63613eccfeb7e5aad8ff97fbfb652a33b6 (patch) | |
tree | 9ddc0c6adbcca2d4487799f071853e88cabc015a | |
parent | 54511ff50852632fd3cdfe63757a2e1090ac7460 (diff) | |
parent | c1d7ef8b529953bb38f575930eca662d714385ab (diff) | |
download | icestorm-535fde63613eccfeb7e5aad8ff97fbfb652a33b6.tar.gz icestorm-535fde63613eccfeb7e5aad8ff97fbfb652a33b6.tar.bz2 icestorm-535fde63613eccfeb7e5aad8ff97fbfb652a33b6.zip |
Merge pull request #129 from daveshah1/icetime_ufix
Fix handling of a port name like CLKHF_FABRIC in icetime
-rw-r--r-- | icetime/icetime.cc | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/icetime/icetime.cc b/icetime/icetime.cc index 9caf82b..0b7cea2 100644 --- a/icetime/icetime.cc +++ b/icetime/icetime.cc @@ -1283,12 +1283,18 @@ std::string ecnetname_to_vlog(std::string ec_name) std::string end = ec_name.substr(last_+1); size_t nidx = 0; - int num = std::stoi(end, &nidx, 10); - if(nidx == end.length()) { - return base + "[" + std::to_string(num) + "]"; - } else { + int num = 0; + try { + num = std::stoi(end, &nidx, 10); + if(nidx == end.length()) { + return base + "[" + std::to_string(num) + "]"; + } else { + return ec_name; + } + } catch(std::invalid_argument e) { // Not numeric and stoi throws exception return ec_name; } + } std::string make_dsp_ip(int x, int y, std::string net, std::string &primnet) |