7da270fbb5
Fix the following build failure with gcc 4.8 raised since commit
72a009fa98
:
hw.cc: In member function 'long long int hw::value::asInteger() const':
hw.cc:2462:36: error: 'stoll' was not declared in this scope
return stoll(This->s, NULL, 0);
^
Fixes:
- http://autobuild.buildroot.org/results/162e438e3f9aab9310fdbc3cf7529144ce7cb50e
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
66 lines
2.1 KiB
Diff
66 lines
2.1 KiB
Diff
From 383c80bf486f806438bb11a9c9a9567407cd47ab Mon Sep 17 00:00:00 2001
|
|
From: "E.V.Acacia" <624758472@qq.com>
|
|
Date: Fri, 3 Sep 2021 14:19:37 +0800
|
|
Subject: [PATCH] solve: Compile error when gcc version is less than 5
|
|
|
|
[Retrieved from:
|
|
https://github.com/lyonel/lshw/pull/70/commits/383c80bf486f806438bb11a9c9a9567407cd47ab]
|
|
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
---
|
|
src/core/cpuinfo.cc | 8 ++++----
|
|
src/core/hw.cc | 2 +-
|
|
src/core/spd.cc | 4 ++--
|
|
3 files changed, 7 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/src/core/cpuinfo.cc b/src/core/cpuinfo.cc
|
|
index 9e41a421..ed1c4164 100644
|
|
--- a/src/core/cpuinfo.cc
|
|
+++ b/src/core/cpuinfo.cc
|
|
@@ -465,13 +465,13 @@ string value)
|
|
if (id == "model name")
|
|
cpu->setProduct(value);
|
|
if (id == "microcode")
|
|
- cpu->setConfig(id, stoll(value, NULL, 0));
|
|
+ cpu->setConfig(id, strtoll(value.c_str(), NULL, 0));
|
|
if (id == "cpu family")
|
|
- cpu->addHint(id, stoll(value, NULL, 0));
|
|
+ cpu->addHint(id, strtoll(value.c_str(), NULL, 0));
|
|
if (id == "model")
|
|
- cpu->addHint(id, stoll(value, NULL, 0));
|
|
+ cpu->addHint(id, strtoll(value.c_str(), NULL, 0));
|
|
if (id == "stepping")
|
|
- cpu->addHint(id, stoll(value, NULL, 0));
|
|
+ cpu->addHint(id, strtoll(value.c_str(), NULL, 0));
|
|
|
|
family = cpu->getHint("cpu family");
|
|
model = cpu->getHint("model");
|
|
diff --git a/src/core/hw.cc b/src/core/hw.cc
|
|
index 1c1dad46..b266a863 100644
|
|
--- a/src/core/hw.cc
|
|
+++ b/src/core/hw.cc
|
|
@@ -2459,7 +2459,7 @@ long long value::asInteger() const
|
|
switch(This->type)
|
|
{
|
|
case hw::text:
|
|
- return stoll(This->s, NULL, 0);
|
|
+ return strtoll(This->s.c_str(), NULL, 0);
|
|
case hw::integer:
|
|
return This->ll;
|
|
case hw::boolean:
|
|
diff --git a/src/core/spd.cc b/src/core/spd.cc
|
|
index a304d061..2ad66b82 100644
|
|
--- a/src/core/spd.cc
|
|
+++ b/src/core/spd.cc
|
|
@@ -195,9 +195,9 @@ static bool scan_eeproms(hwNode & memory)
|
|
{
|
|
if (scan_eeprom(memory, namelist[i]->d_name))
|
|
current_bank++;
|
|
- free(namelist[i]);
|
|
+ delete(namelist[i]);
|
|
}
|
|
- free(namelist);
|
|
+ delete(namelist);
|
|
|
|
return true;
|
|
}
|