Skip to content

Build fails on Debian for architecture armel, amrhf, mips & mipsel with "error: template-id 'ink_atomic_swap<int64_t>' used as a declarator" error #4361

@jbfavre

Description

@jbfavre

All theses architecture fail with same error:

make[3]: Entering directory '/<<PKGBUILDDIR>>/lib/records'
c++ -DHAVE_CONFIG_H -I. -I../../include  -Dlinux -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/<<PKGBUILDDIR>>/iocore/eventsystem -I/<<PKGBUILDDIR>>/iocore/utils -I/<<PKGBUILDDIR>>/mgmt -I/<<PKGBUILDDIR>>/mgmt/api/include -I/<<PKGBUILDDIR>>/mgmt/utils -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/lib -I/usr/include/tcl8.6 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -DOPENSSL_NO_SSL_INTERN -std=c++17 -g -pipe -Wall -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter -Wno-format-truncation -Wno-cast-function-type -Wno-stringop-overflow -feliminate-unused-debug-symbols -fno-strict-aliasing -Wno-invalid-offsetof -Wno-noexcept-type -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -O3 -c -o P_RecCore.o P_RecCore.cc
c++ -DHAVE_CONFIG_H -I. -I../../include  -Dlinux -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/<<PKGBUILDDIR>>/iocore/eventsystem -I/<<PKGBUILDDIR>>/iocore/utils -I/<<PKGBUILDDIR>>/mgmt -I/<<PKGBUILDDIR>>/mgmt/api/include -I/<<PKGBUILDDIR>>/mgmt/utils -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/lib -I/usr/include/tcl8.6 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -DOPENSSL_NO_SSL_INTERN -std=c++17 -g -pipe -Wall -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter -Wno-format-truncation -Wno-cast-function-type -Wno-stringop-overflow -feliminate-unused-debug-symbols -fno-strict-aliasing -Wno-invalid-offsetof -Wno-noexcept-type -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -O3 -c -o RecConfigParse.o RecConfigParse.cc
c++ -DHAVE_CONFIG_H -I. -I../../include  -Dlinux -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/<<PKGBUILDDIR>>/iocore/eventsystem -I/<<PKGBUILDDIR>>/iocore/utils -I/<<PKGBUILDDIR>>/mgmt -I/<<PKGBUILDDIR>>/mgmt/api/include -I/<<PKGBUILDDIR>>/mgmt/utils -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/lib -I/usr/include/tcl8.6 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -DOPENSSL_NO_SSL_INTERN -std=c++17 -g -pipe -Wall -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter -Wno-format-truncation -Wno-cast-function-type -Wno-stringop-overflow -feliminate-unused-debug-symbols -fno-strict-aliasing -Wno-invalid-offsetof -Wno-noexcept-type -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -O3 -c -o RecCore.o RecCore.cc
c++ -DHAVE_CONFIG_H -I. -I../../include  -Dlinux -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/<<PKGBUILDDIR>>/iocore/eventsystem -I/<<PKGBUILDDIR>>/iocore/utils -I/<<PKGBUILDDIR>>/mgmt -I/<<PKGBUILDDIR>>/mgmt/api/include -I/<<PKGBUILDDIR>>/mgmt/utils -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/lib -I/usr/include/tcl8.6 -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -DOPENSSL_NO_SSL_INTERN -std=c++17 -g -pipe -Wall -Wextra -Wno-ignored-qualifiers -Wno-unused-parameter -Wno-format-truncation -Wno-cast-function-type -Wno-stringop-overflow -feliminate-unused-debug-symbols -fno-strict-aliasing -Wno-invalid-offsetof -Wno-noexcept-type -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -O3 -c -o RecDebug.o RecDebug.cc
In file included from P_RecUtils.h:27,
                 from RecDebug.cc:24:
../../include/tscore/ink_atomic.h:96:26: error: template-id 'ink_atomic_swap<int64_t>' used as a declarator
 ink_atomic_swap<int64_t>(pvint64 mem, int64_t value)
                          ^~~~~~~
../../include/tscore/ink_atomic.h:96:26: error: 'pvint64' was not declared in this scope
In file included from P_RecUtils.h:27,
                 from P_RecCore.cc:33:
../../include/tscore/ink_atomic.h:96:26: error: template-id 'ink_atomic_swap<int64_t>' used as a declarator
 ink_atomic_swap<int64_t>(pvint64 mem, int64_t value)
                          ^~~~~~~
../../include/tscore/ink_atomic.h:96:26: note: suggested alternative: 'printf'
 ink_atomic_swap<int64_t>(pvint64 mem, int64_t value)
                          ^~~~~~~
                          printf
../../include/tscore/ink_atomic.h:96:47: error: expected primary-expression before 'value'
 ink_atomic_swap<int64_t>(pvint64 mem, int64_t value)
                                               ^~~~~
../../include/tscore/ink_atomic.h:96:52: error: expression list treated as compound expression in initializer [-fpermissive]
 ink_atomic_swap<int64_t>(pvint64 mem, int64_t value)
                                                    ^
../../include/tscore/ink_atomic.h:96:1: warning: too many template headers for 'ink_atomic_swap' (should be 0)
 ink_atomic_swap<int64_t>(pvint64 mem, int64_t value)
 ^~~~~~~~~~~~~~~~~~~~~~~~
../../include/tscore/ink_atomic.h:96:53: error: expected ';' before '{' token
 ink_atomic_swap<int64_t>(pvint64 mem, int64_t value)
                                                     ^
                                                     ;
 {
 ~                                                    ```

Metadata

Metadata

Assignees

No one assigned

    Labels

    Buildwork related to build configuration or environment

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions