Temporary header file '/tmp/BCkEjr3FOk/dump1.h' with the following content will be compiled to create GCC translation unit dump:

  // add defines
  #define __STDC_VERSION__ 201710L
#define _GXX_NULLPTR_T
#define CLUTTER_ENABLE_COMPOSITOR_API 1
#define _REGEX_NELTS(n)
#define _Atomic
#define PACKED
#define getaddrinfo_a(a,b,c,d)

  // add includes
  #include "/usr/include/basix/cell.h"
  #include "/usr/include/basix/docs.h"
  #include "/usr/include/basix/dof-transformations.h"
  #include "/usr/include/basix/e-brezzi-douglas-marini.h"
  #include "/usr/include/basix/e-bubble.h"
  #include "/usr/include/basix/e-crouzeix-raviart.h"
  #include "/usr/include/basix/e-hermite.h"
  #include "/usr/include/basix/e-hhj.h"
  #include "/usr/include/basix/e-lagrange.h"
  #include "/usr/include/basix/e-nce-rtc.h"
  #include "/usr/include/basix/e-nedelec.h"
  #include "/usr/include/basix/e-raviart-thomas.h"
  #include "/usr/include/basix/e-regge.h"
  #include "/usr/include/basix/e-serendipity.h"
  #include "/usr/include/basix/element-families.h"
  #include "/usr/include/basix/finite-element.h"
  #include "/usr/include/basix/indexing.h"
  #include "/usr/include/basix/interpolation.h"
  #include "/usr/include/basix/lattice.h"
  #include "/usr/include/basix/maps.h"
  #include "/usr/include/basix/math.h"
  #include "/usr/include/basix/mdspan.hpp"
  #include "/usr/include/basix/moments.h"
  #include "/usr/include/basix/polynomials.h"
  #include "/usr/include/basix/polyset.h"
  #include "/usr/include/basix/precompute.h"
  #include "/usr/include/basix/quadrature.h"
  #include "/usr/include/basix/version.h"
  #include "/usr/include/finite-element.h"

  // add namespaces
  namespace basix{typedef int tmp_add_type_1;}
  basix::tmp_add_type_1 tmp_add_func_1(){return 0;};
  namespace basix{namespace cell{typedef int tmp_add_type_2;}}
  basix::cell::tmp_add_type_2 tmp_add_func_2(){return 0;};
  namespace basix{namespace docstring{typedef int tmp_add_type_3;}}
  basix::docstring::tmp_add_type_3 tmp_add_func_3(){return 0;};
  namespace basix{namespace doftransforms{typedef int tmp_add_type_4;}}
  basix::doftransforms::tmp_add_type_4 tmp_add_func_4(){return 0;};
  namespace basix{namespace element{typedef int tmp_add_type_5;}}
  basix::element::tmp_add_type_5 tmp_add_func_5(){return 0;};
  namespace basix{namespace impl{typedef int tmp_add_type_6;}}
  basix::impl::tmp_add_type_6 tmp_add_func_6(){return 0;};
  namespace basix{namespace indexing{typedef int tmp_add_type_7;}}
  basix::indexing::tmp_add_type_7 tmp_add_func_7(){return 0;};
  namespace basix{namespace lattice{typedef int tmp_add_type_8;}}
  basix::lattice::tmp_add_type_8 tmp_add_func_8(){return 0;};
  namespace basix{namespace maps{typedef int tmp_add_type_9;}}
  basix::maps::tmp_add_type_9 tmp_add_func_9(){return 0;};
  namespace basix{namespace math{typedef int tmp_add_type_10;}}
  basix::math::tmp_add_type_10 tmp_add_func_10(){return 0;};
  namespace basix{namespace math{namespace impl{typedef int tmp_add_type_11;}}}
  basix::math::impl::tmp_add_type_11 tmp_add_func_11(){return 0;};
  namespace basix{namespace moments{typedef int tmp_add_type_12;}}
  basix::moments::tmp_add_type_12 tmp_add_func_12(){return 0;};
  namespace basix{namespace polynomials{typedef int tmp_add_type_13;}}
  basix::polynomials::tmp_add_type_13 tmp_add_func_13(){return 0;};
  namespace basix{namespace polyset{typedef int tmp_add_type_14;}}
  basix::polyset::tmp_add_type_14 tmp_add_func_14(){return 0;};
  namespace basix{namespace precompute{typedef int tmp_add_type_15;}}
  basix::precompute::tmp_add_type_15 tmp_add_func_15(){return 0;};
  namespace basix{namespace quadrature{typedef int tmp_add_type_16;}}
  basix::quadrature::tmp_add_type_16 tmp_add_func_16(){return 0;};

  // add classes
  _G_fpos64_t* tmp_add_class_0;
  _G_fpos_t* tmp_add_class_1;
  _IO_cookie_io_functions_t* tmp_add_class_2;

The GCC parameters:
  gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/BCkEjr3FOk/dump1.h"  -I/usr/include/basix

In file included from /usr/include/basix/finite-element.h:11,
                 from /usr/include/basix/e-brezzi-douglas-marini.h:9,
                 from /tmp/BCkEjr3FOk/dump1.h:15:
/usr/include/basix/precompute.h:63:37: error: ‘span’ in namespace ‘std’ does not name a template type
   63 | void prepare_permutation(const std::span<std::size_t>& perm);
      |                                     ^~~~
/usr/include/basix/precompute.h:63:41: error: expected ‘,’ or ‘...’ before ‘<’ token
   63 | void prepare_permutation(const std::span<std::size_t>& perm);
      |                                         ^
/usr/include/basix/precompute.h:117:35: error: ‘span’ in namespace ‘std’ does not name a template type
  117 | void apply_permutation(const std::span<const std::size_t>& perm,
      |                                   ^~~~
/usr/include/basix/precompute.h:117:39: error: expected ‘,’ or ‘...’ before ‘<’ token
  117 | void apply_permutation(const std::span<const std::size_t>& perm,
      |                                       ^
/usr/include/basix/precompute.h: In function ‘void basix::precompute::apply_permutation(int)’:
/usr/include/basix/precompute.h:121:31: error: ‘block_size’ was not declared in this scope
  121 |   for (std::size_t b = 0; b < block_size; ++b)
      |                               ^~~~~~~~~~
/usr/include/basix/precompute.h:123:33: error: ‘perm’ was not declared in this scope
  123 |     for (std::size_t i = 0; i < perm.size(); ++i)
      |                                 ^~~~
/usr/include/basix/precompute.h:125:17: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
  125 |       std::swap(data[block_size * (offset + i) + b],
      |                 ^~~~
      |                 std::data
In file included from /usr/include/c++/12/array:44,
                 from /usr/include/basix/cell.h:7,
                 from /tmp/BCkEjr3FOk/dump1.h:12:
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/precompute.h:125:36: error: ‘offset’ was not declared in this scope; did you mean ‘off_t’?
  125 |       std::swap(data[block_size * (offset + i) + b],
      |                                    ^~~~~~
      |                                    off_t
/usr/include/basix/precompute.h: At global scope:
/usr/include/basix/precompute.h:138:48: error: ‘span’ in namespace ‘std’ does not name a template type
  138 | void apply_permutation_to_transpose(const std::span<const std::size_t>& perm,
      |                                                ^~~~
/usr/include/basix/precompute.h:138:52: error: expected ‘,’ or ‘...’ before ‘<’ token
  138 | void apply_permutation_to_transpose(const std::span<const std::size_t>& perm,
      |                                                    ^
/usr/include/basix/precompute.h: In function ‘void basix::precompute::apply_permutation_to_transpose(int)’:
/usr/include/basix/precompute.h:143:27: error: ‘perm’ was not declared in this scope
  143 |   const std::size_t dim = perm.size();
      |                           ^~~~
/usr/include/basix/precompute.h:145:10: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
  145 |       = (data.size() + (dim < block_size ? block_size - dim : 0)) / block_size;
      |          ^~~~
      |          std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/precompute.h:145:31: error: ‘block_size’ was not declared in this scope
  145 |       = (data.size() + (dim < block_size ? block_size - dim : 0)) / block_size;
      |                               ^~~~~~~~~~
/usr/include/basix/precompute.h:150:38: error: ‘offset’ was not declared in this scope; did you mean ‘off_t’?
  150 |       std::swap(data[data_size * b + offset + i],
      |                                      ^~~~~~
      |                                      off_t
/usr/include/basix/precompute.h: At global scope:
/usr/include/basix/precompute.h:207:30: error: ‘span’ in namespace ‘std’ does not name a template type
  207 | void apply_matrix(const std::span<const std::size_t>& v_size_t,
      |                              ^~~~
/usr/include/basix/precompute.h:207:34: error: expected ‘,’ or ‘...’ before ‘<’ token
  207 | void apply_matrix(const std::span<const std::size_t>& v_size_t,
      |                                  ^
/usr/include/basix/precompute.h: In function ‘void basix::precompute::apply_matrix(int)’:
/usr/include/basix/precompute.h:213:27: error: ‘v_size_t’ was not declared in this scope; did you mean ‘ssize_t’?
  213 |   const std::size_t dim = v_size_t.size();
      |                           ^~~~~~~~
      |                           ssize_t
/usr/include/basix/precompute.h:214:31: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
  214 |   apply_permutation(v_size_t, data, offset, block_size);
      |                               ^~~~
      |                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/precompute.h:214:37: error: ‘offset’ was not declared in this scope; did you mean ‘off_t’?
  214 |   apply_permutation(v_size_t, data, offset, block_size);
      |                                     ^~~~~~
      |                                     off_t
/usr/include/basix/precompute.h:214:45: error: ‘block_size’ was not declared in this scope
  214 |   apply_permutation(v_size_t, data, offset, block_size);
      |                                             ^~~~~~~~~~
/usr/include/basix/precompute.h: At global scope:
/usr/include/basix/precompute.h:245:16: error: ‘span’ in namespace ‘std’ does not name a template type
  245 |     const std::span<const std::size_t>& v_size_t,
      |                ^~~~
/usr/include/basix/precompute.h:245:20: error: expected ‘,’ or ‘...’ before ‘<’ token
  245 |     const std::span<const std::size_t>& v_size_t,
      |                    ^
/usr/include/basix/precompute.h: In function ‘void basix::precompute::apply_matrix_to_transpose(int)’:
/usr/include/basix/precompute.h:251:27: error: ‘v_size_t’ was not declared in this scope; did you mean ‘ssize_t’?
  251 |   const std::size_t dim = v_size_t.size();
      |                           ^~~~~~~~
      |                           ssize_t
/usr/include/basix/precompute.h:253:10: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
  253 |       = (data.size() + (dim < block_size ? block_size - dim : 0)) / block_size;
      |          ^~~~
      |          std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/precompute.h:253:31: error: ‘block_size’ was not declared in this scope
  253 |       = (data.size() + (dim < block_size ? block_size - dim : 0)) / block_size;
      |                               ^~~~~~~~~~
/usr/include/basix/precompute.h:254:50: error: ‘offset’ was not declared in this scope; did you mean ‘off_t’?
  254 |   apply_permutation_to_transpose(v_size_t, data, offset, block_size);
      |                                                  ^~~~~~
      |                                                  off_t
/usr/include/basix/finite-element.h: At global scope:
/usr/include/basix/finite-element.h:453:31: error: ‘span’ in namespace ‘std’ does not name a template type
  453 |   tabulate(int nd, const std::span<const double>& x,
      |                               ^~~~
/usr/include/basix/finite-element.h:453:35: error: expected ‘,’ or ‘...’ before ‘<’ token
  453 |   tabulate(int nd, const std::span<const double>& x,
      |                                   ^
/usr/include/basix/finite-element.h:508:36: error: ‘span’ in namespace ‘std’ does not name a template type
  508 |   void tabulate(int nd, const std::span<const double>& x,
      |                                    ^~~~
/usr/include/basix/finite-element.h:508:40: error: expected ‘,’ or ‘...’ before ‘<’ token
  508 |   void tabulate(int nd, const std::span<const double>& x,
      |                                        ^
/usr/include/basix/finite-element.h:508:8: error: ‘void basix::FiniteElement::tabulate(int, int) const’ cannot be overloaded with ‘std::pair<std::vector<double>, std::array<unsigned int, 4> > basix::FiniteElement::tabulate(int, int) const’
  508 |   void tabulate(int nd, const std::span<const double>& x,
      |        ^~~~~~~~
/usr/include/basix/finite-element.h:453:3: note: previous declaration ‘std::pair<std::vector<double>, std::array<unsigned int, 4> > basix::FiniteElement::tabulate(int, int) const’
  453 |   tabulate(int nd, const std::span<const double>& x,
      |   ^~~~~~~~
/usr/include/basix/finite-element.h:585:16: error: ‘std::span’ has not been declared
  585 |                std::span<const double> detJ, impl::cmdspan3_t K) const;
      |                ^~~
/usr/include/basix/finite-element.h:585:25: error: expected ‘,’ or ‘...’ before ‘<’ token
  585 |                std::span<const double> detJ, impl::cmdspan3_t K) const;
      |                         ^
/usr/include/basix/finite-element.h:596:13: error: ‘std::span’ has not been declared
  596 |             std::span<const double> detJ, impl::cmdspan3_t K) const;
      |             ^~~
/usr/include/basix/finite-element.h:596:22: error: expected ‘,’ or ‘...’ before ‘<’ token
  596 |             std::span<const double> detJ, impl::cmdspan3_t K) const;
      |                      ^
/usr/include/basix/finite-element.h:776:32: error: ‘span’ in namespace ‘std’ does not name a template type
  776 |   void permute_dofs(const std::span<std::int32_t>& dofs,
      |                                ^~~~
/usr/include/basix/finite-element.h:776:36: error: expected ‘,’ or ‘...’ before ‘<’ token
  776 |   void permute_dofs(const std::span<std::int32_t>& dofs,
      |                                    ^
/usr/include/basix/finite-element.h:786:34: error: ‘span’ in namespace ‘std’ does not name a template type
  786 |   void unpermute_dofs(const std::span<std::int32_t>& dofs,
      |                                  ^~~~
/usr/include/basix/finite-element.h:786:38: error: expected ‘,’ or ‘...’ before ‘<’ token
  786 |   void unpermute_dofs(const std::span<std::int32_t>& dofs,
      |                                      ^
/usr/include/basix/finite-element.h:798:44: error: ‘span’ in namespace ‘std’ does not name a template type
  798 |   void apply_dof_transformation(const std::span<T>& data, int block_size,
      |                                            ^~~~
/usr/include/basix/finite-element.h:798:48: error: expected ‘,’ or ‘...’ before ‘<’ token
  798 |   void apply_dof_transformation(const std::span<T>& data, int block_size,
      |                                                ^
/usr/include/basix/finite-element.h:810:54: error: ‘span’ in namespace ‘std’ does not name a template type
  810 |   void apply_transpose_dof_transformation(const std::span<T>& data,
      |                                                      ^~~~
/usr/include/basix/finite-element.h:810:58: error: expected ‘,’ or ‘...’ before ‘<’ token
  810 |   void apply_transpose_dof_transformation(const std::span<T>& data,
      |                                                          ^
/usr/include/basix/finite-element.h:824:18: error: ‘span’ in namespace ‘std’ does not name a template type
  824 |       const std::span<T>& data, int block_size, std::uint32_t cell_info) const;
      |                  ^~~~
/usr/include/basix/finite-element.h:824:22: error: expected ‘,’ or ‘...’ before ‘<’ token
  824 |       const std::span<T>& data, int block_size, std::uint32_t cell_info) const;
      |                      ^
/usr/include/basix/finite-element.h:835:52: error: ‘span’ in namespace ‘std’ does not name a template type
  835 |   void apply_inverse_dof_transformation(const std::span<T>& data,
      |                                                    ^~~~
/usr/include/basix/finite-element.h:835:56: error: expected ‘,’ or ‘...’ before ‘<’ token
  835 |   void apply_inverse_dof_transformation(const std::span<T>& data,
      |                                                        ^
/usr/include/basix/finite-element.h:848:57: error: ‘span’ in namespace ‘std’ does not name a template type
  848 |   void apply_dof_transformation_to_transpose(const std::span<T>& data,
      |                                                         ^~~~
/usr/include/basix/finite-element.h:848:61: error: expected ‘,’ or ‘...’ before ‘<’ token
  848 |   void apply_dof_transformation_to_transpose(const std::span<T>& data,
      |                                                             ^
/usr/include/basix/finite-element.h:862:18: error: ‘span’ in namespace ‘std’ does not name a template type
  862 |       const std::span<T>& data, int block_size, std::uint32_t cell_info) const;
      |                  ^~~~
/usr/include/basix/finite-element.h:862:22: error: expected ‘,’ or ‘...’ before ‘<’ token
  862 |       const std::span<T>& data, int block_size, std::uint32_t cell_info) const;
      |                      ^
/usr/include/basix/finite-element.h:875:18: error: ‘span’ in namespace ‘std’ does not name a template type
  875 |       const std::span<T>& data, int block_size, std::uint32_t cell_info) const;
      |                  ^~~~
/usr/include/basix/finite-element.h:875:22: error: expected ‘,’ or ‘...’ before ‘<’ token
  875 |       const std::span<T>& data, int block_size, std::uint32_t cell_info) const;
      |                      ^
/usr/include/basix/finite-element.h:887:18: error: ‘span’ in namespace ‘std’ does not name a template type
  887 |       const std::span<T>& data, int block_size, std::uint32_t cell_info) const;
      |                  ^~~~
/usr/include/basix/finite-element.h:887:22: error: expected ‘,’ or ‘...’ before ‘<’ token
  887 |       const std::span<T>& data, int block_size, std::uint32_t cell_info) const;
      |                      ^
/usr/include/basix/finite-element.h:1352:57: error: ‘span’ in namespace ‘std’ does not name a template type
 1352 | void FiniteElement::apply_dof_transformation(const std::span<T>& data,
      |                                                         ^~~~
/usr/include/basix/finite-element.h:1352:61: error: expected ‘,’ or ‘...’ before ‘<’ token
 1352 | void FiniteElement::apply_dof_transformation(const std::span<T>& data,
      |                                                             ^
/usr/include/basix/finite-element.h: In member function ‘void basix::FiniteElement::apply_dof_transformation(int) const’:
/usr/include/basix/finite-element.h:1374:13: error: ‘cell_info’ was not declared in this scope
 1374 |         if (cell_info >> (face_start + e) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1377:20: error: ‘span’ is not a member of ‘std’
 1377 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1378:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1378 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1379:15: error: ‘block_size’ was not declared in this scope
 1379 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1393:13: error: ‘cell_info’ was not declared in this scope
 1393 |         if (cell_info >> (3 * f) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1399:20: error: ‘span’ is not a member of ‘std’
 1399 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1400:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1400 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1401:15: error: ‘block_size’ was not declared in this scope
 1401 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1405:40: error: ‘cell_info’ was not declared in this scope
 1405 |         for (std::uint32_t r = 0; r < (cell_info >> (3 * f + 1) & 3); ++r)
      |                                        ^~~~~~~~~
/usr/include/basix/finite-element.h:1411:20: error: ‘span’ is not a member of ‘std’
 1411 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1412:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1412 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1413:15: error: ‘block_size’ was not declared in this scope
 1413 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h: At global scope:
/usr/include/basix/finite-element.h:1424:16: error: ‘span’ in namespace ‘std’ does not name a template type
 1424 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                ^~~~
/usr/include/basix/finite-element.h:1424:20: error: expected ‘,’ or ‘...’ before ‘<’ token
 1424 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                    ^
/usr/include/basix/finite-element.h: In member function ‘void basix::FiniteElement::apply_transpose_dof_transformation(int) const’:
/usr/include/basix/finite-element.h:1444:13: error: ‘cell_info’ was not declared in this scope
 1444 |         if (cell_info >> (face_start + e) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1447:20: error: ‘span’ is not a member of ‘std’
 1447 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1448:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1448 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1449:15: error: ‘block_size’ was not declared in this scope
 1449 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1463:40: error: ‘cell_info’ was not declared in this scope
 1463 |         for (std::uint32_t r = 0; r < (cell_info >> (3 * f + 1) & 3); ++r)
      |                                        ^~~~~~~~~
/usr/include/basix/finite-element.h:1469:20: error: ‘span’ is not a member of ‘std’
 1469 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1470:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1470 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1471:15: error: ‘block_size’ was not declared in this scope
 1471 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1475:13: error: ‘cell_info’ was not declared in this scope
 1475 |         if (cell_info >> (3 * f) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1481:20: error: ‘span’ is not a member of ‘std’
 1481 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1482:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1482 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1483:15: error: ‘block_size’ was not declared in this scope
 1483 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h: At global scope:
/usr/include/basix/finite-element.h:1493:16: error: ‘span’ in namespace ‘std’ does not name a template type
 1493 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                ^~~~
/usr/include/basix/finite-element.h:1493:20: error: expected ‘,’ or ‘...’ before ‘<’ token
 1493 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                    ^
/usr/include/basix/finite-element.h: In member function ‘void basix::FiniteElement::apply_inverse_transpose_dof_transformation(int) const’:
/usr/include/basix/finite-element.h:1511:11: error: ‘cell_info’ was not declared in this scope
 1511 |       if (cell_info >> (face_start + e) & 1)
      |           ^~~~~~~~~
/usr/include/basix/finite-element.h:1514:39: error: ‘span’ is not a member of ‘std’
 1514 |         precompute::apply_matrix(std::span(v_size_t),
      |                                       ^~~~
/usr/include/basix/finite-element.h:1516:34: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1516 |                                  data, dofstart, block_size);
      |                                  ^~~~
      |                                  std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1516:50: error: ‘block_size’ was not declared in this scope
 1516 |                                  data, dofstart, block_size);
      |                                                  ^~~~~~~~~~
/usr/include/basix/finite-element.h:1529:13: error: ‘cell_info’ was not declared in this scope
 1529 |         if (cell_info >> (3 * f) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1535:20: error: ‘span’ is not a member of ‘std’
 1535 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1536:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1536 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1537:15: error: ‘block_size’ was not declared in this scope
 1537 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1541:40: error: ‘cell_info’ was not declared in this scope
 1541 |         for (std::uint32_t r = 0; r < (cell_info >> (3 * f + 1) & 3); ++r)
      |                                        ^~~~~~~~~
/usr/include/basix/finite-element.h:1547:20: error: ‘span’ is not a member of ‘std’
 1547 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1548:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1548 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1549:15: error: ‘block_size’ was not declared in this scope
 1549 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h: At global scope:
/usr/include/basix/finite-element.h:1560:16: error: ‘span’ in namespace ‘std’ does not name a template type
 1560 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                ^~~~
/usr/include/basix/finite-element.h:1560:20: error: expected ‘,’ or ‘...’ before ‘<’ token
 1560 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                    ^
/usr/include/basix/finite-element.h: In member function ‘void basix::FiniteElement::apply_inverse_dof_transformation(int) const’:
/usr/include/basix/finite-element.h:1580:13: error: ‘cell_info’ was not declared in this scope
 1580 |         if (cell_info >> (face_start + e) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1583:20: error: ‘span’ is not a member of ‘std’
 1583 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1584:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1584 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1585:15: error: ‘block_size’ was not declared in this scope
 1585 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1599:40: error: ‘cell_info’ was not declared in this scope
 1599 |         for (std::uint32_t r = 0; r < (cell_info >> (3 * f + 1) & 3); ++r)
      |                                        ^~~~~~~~~
/usr/include/basix/finite-element.h:1605:20: error: ‘span’ is not a member of ‘std’
 1605 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1606:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1606 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1607:15: error: ‘block_size’ was not declared in this scope
 1607 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1611:13: error: ‘cell_info’ was not declared in this scope
 1611 |         if (cell_info >> (3 * f) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1617:20: error: ‘span’ is not a member of ‘std’
 1617 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1618:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1618 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1619:15: error: ‘block_size’ was not declared in this scope
 1619 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h: At global scope:
/usr/include/basix/finite-element.h:1630:16: error: ‘span’ in namespace ‘std’ does not name a template type
 1630 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                ^~~~
/usr/include/basix/finite-element.h:1630:20: error: expected ‘,’ or ‘...’ before ‘<’ token
 1630 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                    ^
/usr/include/basix/finite-element.h: In member function ‘void basix::FiniteElement::apply_dof_transformation_to_transpose(int) const’:
/usr/include/basix/finite-element.h:1650:13: error: ‘cell_info’ was not declared in this scope
 1650 |         if (cell_info >> (face_start + e) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1653:20: error: ‘span’ is not a member of ‘std’
 1653 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1654:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1654 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1655:15: error: ‘block_size’ was not declared in this scope
 1655 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1670:13: error: ‘cell_info’ was not declared in this scope
 1670 |         if (cell_info >> (3 * f) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1676:20: error: ‘span’ is not a member of ‘std’
 1676 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1677:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1677 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1678:15: error: ‘block_size’ was not declared in this scope
 1678 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1682:40: error: ‘cell_info’ was not declared in this scope
 1682 |         for (std::uint32_t r = 0; r < (cell_info >> (3 * f + 1) & 3); ++r)
      |                                        ^~~~~~~~~
/usr/include/basix/finite-element.h:1688:20: error: ‘span’ is not a member of ‘std’
 1688 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1689:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1689 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1690:15: error: ‘block_size’ was not declared in this scope
 1690 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h: At global scope:
/usr/include/basix/finite-element.h:1700:16: error: ‘span’ in namespace ‘std’ does not name a template type
 1700 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                ^~~~
/usr/include/basix/finite-element.h:1700:20: error: expected ‘,’ or ‘...’ before ‘<’ token
 1700 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                    ^
/usr/include/basix/finite-element.h: In member function ‘void basix::FiniteElement::apply_inverse_transpose_dof_transformation_to_transpose(int) const’:
/usr/include/basix/finite-element.h:1720:13: error: ‘cell_info’ was not declared in this scope
 1720 |         if (cell_info >> (face_start + e) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1723:20: error: ‘span’ is not a member of ‘std’
 1723 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1724:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1724 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1725:15: error: ‘block_size’ was not declared in this scope
 1725 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1739:13: error: ‘cell_info’ was not declared in this scope
 1739 |         if (cell_info >> (3 * f) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1745:20: error: ‘span’ is not a member of ‘std’
 1745 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1746:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1746 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1747:15: error: ‘block_size’ was not declared in this scope
 1747 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1751:40: error: ‘cell_info’ was not declared in this scope
 1751 |         for (std::uint32_t r = 0; r < (cell_info >> (3 * f + 1) & 3); ++r)
      |                                        ^~~~~~~~~
/usr/include/basix/finite-element.h:1757:20: error: ‘span’ is not a member of ‘std’
 1757 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1758:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1758 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1759:15: error: ‘block_size’ was not declared in this scope
 1759 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h: At global scope:
/usr/include/basix/finite-element.h:1769:16: error: ‘span’ in namespace ‘std’ does not name a template type
 1769 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                ^~~~
/usr/include/basix/finite-element.h:1769:20: error: expected ‘,’ or ‘...’ before ‘<’ token
 1769 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                    ^
/usr/include/basix/finite-element.h: In member function ‘void basix::FiniteElement::apply_transpose_dof_transformation_to_transpose(int) const’:
/usr/include/basix/finite-element.h:1789:13: error: ‘cell_info’ was not declared in this scope
 1789 |         if (cell_info >> (face_start + e) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1792:20: error: ‘span’ is not a member of ‘std’
 1792 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1793:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1793 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1794:15: error: ‘block_size’ was not declared in this scope
 1794 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1808:40: error: ‘cell_info’ was not declared in this scope
 1808 |         for (std::uint32_t r = 0; r < (cell_info >> (3 * f + 1) & 3); ++r)
      |                                        ^~~~~~~~~
/usr/include/basix/finite-element.h:1814:20: error: ‘span’ is not a member of ‘std’
 1814 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1815:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1815 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1816:15: error: ‘block_size’ was not declared in this scope
 1816 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1820:13: error: ‘cell_info’ was not declared in this scope
 1820 |         if (cell_info >> (3 * f) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1826:20: error: ‘span’ is not a member of ‘std’
 1826 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1827:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1827 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1828:15: error: ‘block_size’ was not declared in this scope
 1828 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h: At global scope:
/usr/include/basix/finite-element.h:1838:16: error: ‘span’ in namespace ‘std’ does not name a template type
 1838 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                ^~~~
/usr/include/basix/finite-element.h:1838:20: error: expected ‘,’ or ‘...’ before ‘<’ token
 1838 |     const std::span<T>& data, int block_size, std::uint32_t cell_info) const
      |                    ^
/usr/include/basix/finite-element.h: In member function ‘void basix::FiniteElement::apply_inverse_dof_transformation_to_transpose(int) const’:
/usr/include/basix/finite-element.h:1858:13: error: ‘cell_info’ was not declared in this scope
 1858 |         if (cell_info >> (face_start + e) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1861:20: error: ‘span’ is not a member of ‘std’
 1861 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1862:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1862 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1863:15: error: ‘block_size’ was not declared in this scope
 1863 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1877:40: error: ‘cell_info’ was not declared in this scope
 1877 |         for (std::uint32_t r = 0; r < (cell_info >> (3 * f + 1) & 3); ++r)
      |                                        ^~~~~~~~~
/usr/include/basix/finite-element.h:1883:20: error: ‘span’ is not a member of ‘std’
 1883 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1884:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1884 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1885:15: error: ‘block_size’ was not declared in this scope
 1885 |               block_size);
      |               ^~~~~~~~~~
/usr/include/basix/finite-element.h:1889:13: error: ‘cell_info’ was not declared in this scope
 1889 |         if (cell_info >> (3 * f) & 1)
      |             ^~~~~~~~~
/usr/include/basix/finite-element.h:1895:20: error: ‘span’ is not a member of ‘std’
 1895 |               std::span(v_size_t),
      |                    ^~~~
/usr/include/basix/finite-element.h:1896:63: error: ‘data’ was not declared in this scope; did you mean ‘std::data’?
 1896 |               cmdspan2_t(matrix.first.data(), matrix.second), data, dofstart,
      |                                                               ^~~~
      |                                                               std::data
/usr/include/c++/12/bits/range_access.h:343:5: note: ‘std::data’ declared here
  343 |     data(initializer_list<_Tp> __il) noexcept
      |     ^~~~
/usr/include/basix/finite-element.h:1897:15: error: ‘block_size’ was not declared in this scope
 1897 |               block_size);
      |               ^~~~~~~~~~
In file included from /tmp/BCkEjr3FOk/dump1.h:32:
/usr/include/basix/math.h: At global scope:
/usr/include/basix/math.h:27:26: error: ‘span’ in namespace ‘std’ does not name a template type
   27 | void dot_blas(const std::span<const double>& A,
      |                          ^~~~
/usr/include/basix/math.h:27:30: error: expected ‘,’ or ‘...’ before ‘<’ token
   27 | void dot_blas(const std::span<const double>& A,
      |                              ^
/usr/include/basix/math.h:69:17: error: ‘span’ in namespace ‘std’ does not name a template type
   69 | eigh(const std::span<const double>& A, std::size_t n);
      |                 ^~~~
/usr/include/basix/math.h:69:21: error: expected ‘,’ or ‘...’ before ‘<’ token
   69 | eigh(const std::span<const double>& A, std::size_t n);
      |                     ^
/usr/include/basix/math.h: In function ‘void basix::math::dot(const U&, const V&, W&&)’:
/usr/include/basix/math.h:116:14: error: ‘span’ is not a member of ‘std’
  116 |         std::span(A.data_handle(), A.size()), {A.extent(0), A.extent(1)},
      |              ^~~~
/usr/include/basix/math.h:117:14: error: ‘span’ is not a member of ‘std’
  117 |         std::span(B.data_handle(), B.size()), {B.extent(0), B.extent(1)},
      |              ^~~~
/usr/include/basix/math.h:118:14: error: ‘span’ is not a member of ‘std’
  118 |         std::span(C.data_handle(), C.size()));
      |              ^~~~

