Skip to content

make libintx.md.test fails on C++ template errors #3

@jeffhammond

Description

@jeffhammond

I am using GCC 11.4 - is that not good enough?

jhammond@nuclear:~/Chemistry/libintx/build$ make
Consolidate compiler generated dependencies of target libintx.boys
[100%] Built target libintx.boys
jhammond@nuclear:~/Chemistry/libintx/build$ make libintx.md.test
[ 50%] Built target libboys
Consolidate compiler generated dependencies of target libintx.md.test
[ 75%] Building CXX object tests/CMakeFiles/libintx.md.test.dir/libintx.md.test.cc.o
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:9:2: warning: #warning Libint2 disabled, using Rys Quadrature as reference [-Wcpp]
    9 | #warning Libint2 disabled, using Rys Quadrature as reference
      |  ^~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc: In function ‘void _DOCTEST_ANON_FUNC_8()’:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:37:9: error: reference to ‘reference’ is ambiguous
   37 |   CHECK(reference::E(0,0,0,a,b,R[0]) == Approx(E(0,0,0,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:37:3: note: in expansion of macro ‘CHECK’
   37 |   CHECK(reference::E(0,0,0,a,b,R[0]) == Approx(E(0,0,0,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:38:9: error: reference to ‘reference’ is ambiguous
   38 |   CHECK(reference::E(1,0,0,a,b,R[0]) == Approx(E(1,0,0,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:38:3: note: in expansion of macro ‘CHECK’
   38 |   CHECK(reference::E(1,0,0,a,b,R[0]) == Approx(E(1,0,0,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:39:9: error: reference to ‘reference’ is ambiguous
   39 |   CHECK(reference::E(1,0,1,a,b,R[0]) == Approx(E(1,0,1,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:39:3: note: in expansion of macro ‘CHECK’
   39 |   CHECK(reference::E(1,0,1,a,b,R[0]) == Approx(E(1,0,1,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:40:9: error: reference to ‘reference’ is ambiguous
   40 |   CHECK(reference::E(2,0,0,a,b,R[0]) == Approx(E(2,0,0,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:40:3: note: in expansion of macro ‘CHECK’
   40 |   CHECK(reference::E(2,0,0,a,b,R[0]) == Approx(E(2,0,0,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:41:9: error: reference to ‘reference’ is ambiguous
   41 |   CHECK(reference::E(2,0,1,a,b,R[0]) == Approx(E(2,0,1,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:41:3: note: in expansion of macro ‘CHECK’
   41 |   CHECK(reference::E(2,0,1,a,b,R[0]) == Approx(E(2,0,1,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:42:9: error: reference to ‘reference’ is ambiguous
   42 |   CHECK(reference::E(2,0,2,a,b,R[0]) == Approx(E(2,0,2,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:42:3: note: in expansion of macro ‘CHECK’
   42 |   CHECK(reference::E(2,0,2,a,b,R[0]) == Approx(E(2,0,2,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:43:9: error: reference to ‘reference’ is ambiguous
   43 |   CHECK(reference::E(3,0,0,a,b,R[0]) == Approx(E(3,0,0,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:43:3: note: in expansion of macro ‘CHECK’
   43 |   CHECK(reference::E(3,0,0,a,b,R[0]) == Approx(E(3,0,0,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:44:9: error: reference to ‘reference’ is ambiguous
   44 |   CHECK(reference::E(3,0,1,a,b,R[0]) == Approx(E(3,0,1,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:44:3: note: in expansion of macro ‘CHECK’
   44 |   CHECK(reference::E(3,0,1,a,b,R[0]) == Approx(E(3,0,1,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:45:9: error: reference to ‘reference’ is ambiguous
   45 |   CHECK(reference::E(3,0,2,a,b,R[0]) == Approx(E(3,0,2,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:45:3: note: in expansion of macro ‘CHECK’
   45 |   CHECK(reference::E(3,0,2,a,b,R[0]) == Approx(E(3,0,2,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:46:9: error: reference to ‘reference’ is ambiguous
   46 |   CHECK(reference::E(3,0,3,a,b,R[0]) == Approx(E(3,0,3,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:46:3: note: in expansion of macro ‘CHECK’
   46 |   CHECK(reference::E(3,0,3,a,b,R[0]) == Approx(E(3,0,3,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:48:9: error: reference to ‘reference’ is ambiguous
   48 |   CHECK(reference::E(0,1,0,a,b,R[0]) == Approx(E(0,1,0,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:48:3: note: in expansion of macro ‘CHECK’
   48 |   CHECK(reference::E(0,1,0,a,b,R[0]) == Approx(E(0,1,0,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:49:9: error: reference to ‘reference’ is ambiguous
   49 |   CHECK(reference::E(0,1,1,a,b,R[0]) == Approx(E(0,1,1,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:49:3: note: in expansion of macro ‘CHECK’
   49 |   CHECK(reference::E(0,1,1,a,b,R[0]) == Approx(E(0,1,1,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:50:9: error: reference to ‘reference’ is ambiguous
   50 |   CHECK(reference::E(0,2,0,a,b,R[0]) == Approx(E(0,2,0,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:50:3: note: in expansion of macro ‘CHECK’
   50 |   CHECK(reference::E(0,2,0,a,b,R[0]) == Approx(E(0,2,0,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:51:9: error: reference to ‘reference’ is ambiguous
   51 |   CHECK(reference::E(0,2,1,a,b,R[0]) == Approx(E(0,2,1,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:51:3: note: in expansion of macro ‘CHECK’
   51 |   CHECK(reference::E(0,2,1,a,b,R[0]) == Approx(E(0,2,1,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:52:9: error: reference to ‘reference’ is ambiguous
   52 |   CHECK(reference::E(0,2,2,a,b,R[0]) == Approx(E(0,2,2,0)));
      |         ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:52:3: note: in expansion of macro ‘CHECK’
   52 |   CHECK(reference::E(0,2,2,a,b,R[0]) == Approx(E(0,2,2,0)));
      |   ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:14,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:60:15: error: reference to ‘reference’ is ambiguous
   60 |         CHECK(reference::E(i,j,k,a,b,R[0]) == Approx(E(i,j,k,0)));
      |               ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:1837:9: note: in definition of macro ‘DOCTEST_WRAP_IN_TRY’
 1837 |         x;                                                                                         \
      |         ^
/home/jhammond/Chemistry/libintx/tests/doctest.h:2086:9: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_2’
 2086 |         DOCTEST_ASSERT_IMPLEMENT_2(assert_type, __VA_ARGS__);                                      \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2104:28: note: in expansion of macro ‘DOCTEST_ASSERT_IMPLEMENT_1’
 2104 | #define DOCTEST_CHECK(...) DOCTEST_ASSERT_IMPLEMENT_1(DT_CHECK, __VA_ARGS__)
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/doctest.h:2573:20: note: in expansion of macro ‘DOCTEST_CHECK’
 2573 | #define CHECK(...) DOCTEST_CHECK(__VA_ARGS__)
      |                    ^~~~~~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:60:9: note: in expansion of macro ‘CHECK’
   60 |         CHECK(reference::E(i,j,k,a,b,R[0]) == Approx(E(i,j,k,0)));
      |         ^~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc: In lambda function:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:86:14: error: reference to ‘reference’ is ambiguous
   86 |     auto u = reference::R(x, y, z, 0, s, PQ.data);
      |              ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:6:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/reference.h:10:24: note: candidates are: ‘namespace libintx::md::reference { }’
   10 | namespace libintx::md::reference {
      |                        ^~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/test.h:6,
                 from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:2:
/home/jhammond/Chemistry/libintx/src/libintx/reference.h:13:20: note:                 ‘namespace libintx::reference { }’
   13 | namespace libintx::reference {
      |                    ^~~~~~~~~
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc: In function ‘void _DOCTEST_ANON_FUNC_19()’:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:90:28: error: no matching function for call to ‘visit<libintx::md::r1::DepthFirst>(_DOCTEST_ANON_FUNC_19()::<lambda(auto:103)>&, libintx::Double<3>&, double [4])’
   90 |   r1::visit<r1::DepthFirst>(visitor, PQ, s);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:5:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/r1.h:89:6: note: candidate: ‘template<libintx::md::r1::Order Order, int I, int J, int K, class F, class ... R2, class ... R1, class auto:73> void libintx::md::r1::visit(F, const auto:73&, std::tuple<Rs ...>, const libintx::md::r1::R<I, J, K, 0>&, const R1& ...)’
   89 | void visit(F f, const auto& PQ,
      |      ^~~~~
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/r1.h:89:6: note:   template argument deduction/substitution failed:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:90:28: note:   mismatched types ‘std::tuple<Rs ...>’ and ‘double*’
   90 |   r1::visit<r1::DepthFirst>(visitor, PQ, s);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:5:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/r1.h:116:6: note: candidate: ‘template<libintx::md::r1::Order Order, class F, int N, long unsigned int ...Idx, class auto:74, class auto:75> void libintx::md::r1::visit(F, const auto:74&, const auto:75 (&)[N], std::index_sequence<Is ...>)’
  116 | void visit(F f, const auto& PQ, const auto (&s)[N], std::index_sequence<Idx...>) {
      |      ^~~~~
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/r1.h:116:6: note:   template argument deduction/substitution failed:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:90:28: note:   candidate expects 4 arguments, 3 provided
   90 |   r1::visit<r1::DepthFirst>(visitor, PQ, s);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
In file included from /home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:5:
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/r1.h:122:6: note: candidate: ‘template<int L, libintx::md::r1::Order Order, int N, class F, class auto:76, class auto:77> void libintx::md::r1::visit(F, const auto:76&, const auto:77 (&)[N])’
  122 | void visit(F f, const auto& PQ, const auto (&s)[N]) {
      |      ^~~~~
/home/jhammond/Chemistry/libintx/src/libintx/engine/md/r1.h:122:6: note:   template argument deduction/substitution failed:
/home/jhammond/Chemistry/libintx/tests/libintx.md.test.cc:90:28: note:   couldn’t deduce template parameter ‘Order’
   90 |   r1::visit<r1::DepthFirst>(visitor, PQ, s);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
make[3]: *** [tests/CMakeFiles/libintx.md.test.dir/build.make:76: tests/CMakeFiles/libintx.md.test.dir/libintx.md.test.cc.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:1043: tests/CMakeFiles/libintx.md.test.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:1050: tests/CMakeFiles/libintx.md.test.dir/rule] Error 2
make: *** [Makefile:608: libintx.md.test] Error 2
jhammond@nuclear:~/Chemistry/libintx/build

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions