@@ -73,7 +73,7 @@ create_coef_list makes a list for fast setup, does minimum ordering and
7373ensures all elements needed are present */
7474/* this could easily be made recursive but it isn't right now */
7575
76- inline __attribute__ (( always_inline)) void subrow(SparseObj* so, Elm* pivot, Elm* rowsub) {
76+ [[gnu::always_inline, clang:: always_inline]] inline void subrow (SparseObj* so, Elm* pivot, Elm* rowsub) {
7777 double r;
7878 Elm* el;
7979
@@ -89,7 +89,7 @@ inline __attribute__((always_inline)) void subrow(SparseObj* so, Elm* pivot, Elm
8989 }
9090}
9191
92- inline __attribute__ (( always_inline)) void bksub(SparseObj* so) {
92+ [[gnu::always_inline, clang:: always_inline]] inline void bksub (SparseObj* so) {
9393 unsigned i;
9494 Elm* el;
9595
@@ -103,7 +103,7 @@ inline __attribute__((always_inline)) void bksub(SparseObj* so) {
103103 }
104104}
105105
106- inline __attribute__ (( always_inline)) int matsol(SparseObj* so) {
106+ [[gnu::always_inline, clang:: always_inline]] inline int matsol (SparseObj* so) {
107107 Elm *pivot, *el;
108108 unsigned i;
109109
@@ -238,7 +238,7 @@ saves much time allocating and freeing during the solve phase
238238*/
239239
240240/* return pointer to row col element maintaining order in rows */
241- inline __attribute__ (( always_inline)) Elm* getelm(SparseObj* so,
241+ [[gnu::always_inline, clang:: always_inline]] inline Elm* getelm (SparseObj* so,
242242 unsigned row,
243243 unsigned col,
244244 Elm* newElm) {
@@ -519,7 +519,7 @@ inline void reduce_order(SparseObj* so, unsigned row) {
519519 insert (so, order);
520520}
521521
522- inline __attribute__ (( always_inline)) void get_next_pivot(SparseObj* so, unsigned i) {
522+ [[gnu::always_inline, clang:: always_inline]] inline void get_next_pivot (SparseObj* so, unsigned i) {
523523 /* get varord[i], etc. from the head of the orderlist. */
524524 Item* order;
525525 Elm *pivot, *el;
@@ -589,7 +589,7 @@ void create_coef_list(SparseObj* so, int n, Callable fun, Args&&... args) {
589589 so->phase = 0 ;
590590}
591591
592- inline __attribute__ (( always_inline)) void init_coef_list(SparseObj* so) {
592+ [[gnu::always_inline, clang:: always_inline]] inline void init_coef_list (SparseObj* so) {
593593 unsigned i;
594594 Elm* el;
595595
@@ -733,7 +733,7 @@ int _cvode_sparse_thread(void** v, int n, IndexArray x, Array p, Callable fun, A
733733 return SUCCESS ;
734734}
735735
736- inline __attribute__ (( always_inline)) double* _nrn_thread_getelm(SparseObj* so, int row, int col) {
736+ [[gnu::always_inline, clang:: always_inline]] inline double * _nrn_thread_getelm (SparseObj* so, int row, int col) {
737737 detail::sparse_thread::Elm* el;
738738 if (!so->phase ) {
739739 return so->coef_list [so->ngetcall ++];
0 commit comments