Skip to content

Index does not name a type (gcc-7.1) #58

Description

@nbecker

A new problem when using with gcc-7.1?

In file included from /home/nbecker/.local/include/ndarray/converter/eigen.h:19:0,
                 from /home/nbecker/.local/include/ndarray/pybind11.h:51,
                 from pn2.cc:4:
/home/nbecker/.local/include/ndarray/eigen.h:284:12: error: 'Index' does not name a type; did you mean 'index'?
     inline Index innerStride() const { return ST::getInnerStride(*Access::getCore(_array)); }
            ^~~~~
            index
/home/nbecker/.local/include/ndarray/eigen.h:285:12: error: 'Index' does not name a type; did you mean 'index'?
     inline Index outerStride() const { return ST::getOuterStride(*Access::getCore(_array)); }
            ^~~~~
            index
/home/nbecker/.local/include/ndarray/eigen.h:287:12: error: 'Index' does not name a type; did you mean 'index'?
     inline Index rowStride() const { return ST::getRowStride(*Access::getCore(_array)); }
            ^~~~~
            index
/home/nbecker/.local/include/ndarray/eigen.h:288:12: error: 'Index' does not name a type; did you mean 'index'?
     inline Index colStride() const { return ST::getColStride(*Access::getCore(_array)); }
            ^~~~~
            index
/home/nbecker/.local/include/ndarray/eigen.h:290:12: error: 'Index' does not name a type; did you mean 'index'?
     inline Index rows() const { return ST::getRows(*Access::getCore(_array)); }
            ^~~~~
            index
/home/nbecker/.local/include/ndarray/eigen.h:291:12: error: 'Index' does not name a type; did you mean 'index'?
     inline Index cols() const { return ST::getCols(*Access::getCore(_array)); }
            ^~~~~
            index
/home/nbecker/.local/include/ndarray/eigen.h:297:21: error: 'coeff' declared as an 'inline' field
     inline T& coeff(Index row, Index col) const {
                     ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:297:15: error: expected ';' at end of member declaration
     inline T& coeff(Index row, Index col) const {
               ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:297:27: error: expected ')' before 'row'
     inline T& coeff(Index row, Index col) const {
                           ^~~
/home/nbecker/.local/include/ndarray/eigen.h:301:21: error: 'coeff' declared as an 'inline' field
     inline T& coeff(Index index) const {
                     ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:301:15: error: expected ';' at end of member declaration
     inline T& coeff(Index index) const {
               ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:301:21: error: redeclaration of 'T& ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::coeff'
     inline T& coeff(Index index) const {
                     ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:297:21: note: previous declaration 'T& ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::coeff'
     inline T& coeff(Index row, Index col) const {
                     ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:301:27: error: expected ')' before 'index'
     inline T& coeff(Index index) const {
                           ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:305:24: error: 'coeffRef' declared as an 'inline' field
     inline T& coeffRef(Index row, Index col) const {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:305:15: error: expected ';' at end of member declaration
     inline T& coeffRef(Index row, Index col) const {
               ^~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h:305:30: error: expected ')' before 'row'
     inline T& coeffRef(Index row, Index col) const {
                              ^~~
/home/nbecker/.local/include/ndarray/eigen.h:309:24: error: 'coeffRef' declared as an 'inline' field
     inline T& coeffRef(Index row, Index col) {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:309:15: error: expected ';' at end of member declaration
     inline T& coeffRef(Index row, Index col) {
               ^~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h:309:24: error: redeclaration of 'T& ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::coeffRef'
     inline T& coeffRef(Index row, Index col) {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:305:24: note: previous declaration 'T& ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::coeffRef'
     inline T& coeffRef(Index row, Index col) const {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:309:30: error: expected ')' before 'row'
     inline T& coeffRef(Index row, Index col) {
                              ^~~
/home/nbecker/.local/include/ndarray/eigen.h:313:24: error: 'coeffRef' declared as an 'inline' field
     inline T& coeffRef(Index index) const {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:313:15: error: expected ';' at end of member declaration
     inline T& coeffRef(Index index) const {
               ^~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h:313:24: error: redeclaration of 'T& ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::coeffRef'
     inline T& coeffRef(Index index) const {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:305:24: note: previous declaration 'T& ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::coeffRef'
     inline T& coeffRef(Index row, Index col) const {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:313:30: error: expected ')' before 'index'
     inline T& coeffRef(Index index) const {
                              ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:317:24: error: 'coeffRef' declared as an 'inline' field
     inline T& coeffRef(Index index) {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:317:15: error: expected ';' at end of member declaration
     inline T& coeffRef(Index index) {
               ^~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h:317:24: error: redeclaration of 'T& ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::coeffRef'
     inline T& coeffRef(Index index) {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:305:24: note: previous declaration 'T& ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::coeffRef'
     inline T& coeffRef(Index row, Index col) const {
                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:317:30: error: expected ')' before 'index'
     inline T& coeffRef(Index index) {
                              ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:322:32: error: 'Index' has not been declared
     inline PacketScalar packet(Index row, Index col) const {
                                ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:322:43: error: 'Index' has not been declared
     inline PacketScalar packet(Index row, Index col) const {
                                           ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:329:32: error: 'Index' has not been declared
     inline PacketScalar packet(Index index) const {
                                ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:337:29: error: 'Index' has not been declared
     inline void writePacket(Index row, Index col, const PacketScalar& x) {
                             ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:337:40: error: 'Index' has not been declared
     inline void writePacket(Index row, Index col, const PacketScalar& x) {
                                        ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h:345:29: error: 'Index' has not been declared
     inline void writePacket(Index index, const PacketScalar& x) {
                             ^~~~~
/home/nbecker/.local/include/ndarray/eigen.h: In member function 'ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::PacketScalar ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::packet(int, int) const':
/home/nbecker/.local/include/ndarray/eigen.h:324:39: error: there are no arguments to 'colStride' that depend on a template parameter, so a declaration of 'colStride' must be available [-fpermissive]
             _array.getData() + (col * colStride() + row * rowStride())
                                       ^~~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h:324:39: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/home/nbecker/.local/include/ndarray/eigen.h:324:59: error: there are no arguments to 'rowStride' that depend on a template parameter, so a declaration of 'rowStride' must be available [-fpermissive]
             _array.getData() + (col * colStride() + row * rowStride())
                                                           ^~~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h: In member function 'ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::PacketScalar ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::packet(int) const':
/home/nbecker/.local/include/ndarray/eigen.h:332:40: error: there are no arguments to 'innerStride' that depend on a template parameter, so a declaration of 'innerStride' must be available [-fpermissive]
             _array.getData() + index * innerStride()
                                        ^~~~~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h: In member function 'void ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::writePacket(int, int, const PacketScalar&)':
/home/nbecker/.local/include/ndarray/eigen.h:340:39: error: there are no arguments to 'colStride' that depend on a template parameter, so a declaration of 'colStride' must be available [-fpermissive]
             _array.getData() + (col * colStride() + row * rowStride()), x
                                       ^~~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h:340:59: error: there are no arguments to 'rowStride' that depend on a template parameter, so a declaration of 'rowStride' must be available [-fpermissive]
             _array.getData() + (col * colStride() + row * rowStride()), x
                                                           ^~~~~~~~~
/home/nbecker/.local/include/ndarray/eigen.h: In member function 'void ndarray::EigenView<T, N, C, XprKind_, Rows_, Cols_>::writePacket(int, const PacketScalar&)':
/home/nbecker/.local/include/ndarray/eigen.h:349:40: error: there are no arguments to 'innerStride' that depend on a template parameter, so a declaration of 'innerStride' must be available [-fpermissive]
             _array.getData() + index * innerStride(), x
                                        ^~~~~~~~~~~

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