diff --git a/test/triqs/arrays/alias_const_view.cpp b/test/triqs/arrays/alias_const_view.cpp new file mode 100644 index 00000000..343e5303 --- /dev/null +++ b/test/triqs/arrays/alias_const_view.cpp @@ -0,0 +1,47 @@ +/******************************************************************************* + * + * TRIQS: a Toolbox for Research in Interacting Quantum Systems + * + * Copyright (C) 2013 by O. Parcollet + * + * TRIQS is free software: you can redistribute it and/or modify it under the + * terms of the GNU General Public License as published by the Free Software + * Foundation, either version 3 of the License, or (at your option) any later + * version. + * + * TRIQS is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more + * details. + * + * You should have received a copy of the GNU General Public License along with + * TRIQS. If not, see . + * + ******************************************************************************/ + +#include "./common.hpp" +#include "./src/array.hpp" +#include + +//using std::cout; using std::endl; +using namespace triqs::arrays; +#include + + +template +void f (array_const_view const & a) { + std::cout << a << std::endl ; +} + +int main(int argc, char **argv) { + + array A (2,3); + A() =3; + + f(A()); + +} + + + + diff --git a/triqs/arrays/array.hpp b/triqs/arrays/array.hpp index 2791be27..c0625fb1 100644 --- a/triqs/arrays/array.hpp +++ b/triqs/arrays/array.hpp @@ -86,6 +86,13 @@ namespace triqs { namespace arrays { }; #undef IMPL_TYPE + +// This alias is experiemental !! on modern compilers only. +#ifndef TRIQS_COMPILER_IS_OBSOLETE + template + using array_const_view = array_view; +#endif + //------------------------------- array --------------------------------------------------- #define IMPL_TYPE indexmap_storage_pair< indexmaps::cuboid::map, \