modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/pr29250.c (about)

     1  /* We used to ICE because EXPAND_SUM was being used for all recursive calls
     2     to expand_expr.  */
     3  struct TSparseEntry
     4  {
     5    int feat_index;
     6    double entry;
     7  };
     8  
     9  struct TSparse
    10  {
    11    int vec_index;
    12    int num_feat_entries;
    13    struct TSparseEntry *features;
    14  };
    15  
    16  void
    17  get_full_feature_matrix (struct TSparse* sparse_feature_matrix, int num_vec)
    18  {
    19    double *fm;
    20    int v, f;
    21  
    22    for (v=0; v < num_vec; v++)
    23    {
    24      for (f=0; f < sparse_feature_matrix[v].num_feat_entries; f++)
    25      {
    26        long long offs = sparse_feature_matrix[v].vec_index
    27  	+ sparse_feature_matrix[v].features[f].feat_index;
    28        fm[offs] = sparse_feature_matrix[v].features[f].entry;
    29      }
    30    }
    31  }
    32