diff options
author | Slava Barinov <v.barinov@samsung.com> | 2024-03-29 15:13:32 +0300 |
---|---|---|
committer | Slava Barinov <v.barinov@samsung.com> | 2024-03-29 15:13:32 +0300 |
commit | 4504701fb80f2f506b4ca0703ca34e57522aec12 (patch) | |
tree | bace09b4dec1eb98f43ada6748c6f7e9dad3fe6a | |
parent | 2c748794e4a39e71b670aaafaa2a0a60cde1a05b (diff) | |
download | aul-1-4504701fb80f2f506b4ca0703ca34e57522aec12.tar.gz aul-1-4504701fb80f2f506b4ca0703ca34e57522aec12.tar.bz2 aul-1-4504701fb80f2f506b4ca0703ca34e57522aec12.zip |
Switch to custom deleter type for unique_ptr
This prevents the error:
src/parser/exec-checker/src/exec_checker.cc:202:42: error: ignoring attributes on template argument 'int (*)(FILE*)' [-Werror=ignored-attributes]
202 | std::unique_ptr<FILE, decltype(fclose)*> fp_auto(fp, fclose);
| ^
When building with new toolchain
Change-Id: I3b0b71ddb2c887d349e783e5ad3a6d1b1bbb561e
-rw-r--r-- | src/parser/exec-checker/src/exec_checker.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/parser/exec-checker/src/exec_checker.cc b/src/parser/exec-checker/src/exec_checker.cc index 40f7cafa..655995c2 100644 --- a/src/parser/exec-checker/src/exec_checker.cc +++ b/src/parser/exec-checker/src/exec_checker.cc @@ -199,7 +199,13 @@ bool ExecChecker::CheckMainSymbol() { return false; } - std::unique_ptr<FILE, decltype(fclose)*> fp_auto(fp, fclose); + struct file_closer { + void operator() (FILE* f) const { + fclose(f); + } + }; + + std::unique_ptr<FILE, file_closer> fp_auto(fp); header h; size_t nbytes = fread(h.c, 1, sizeof(h), fp); if (nbytes < 2) { |