Avoid declaring variables in the middle of a block, to avoid requiring C99.
authorBen Pfaff <blp@cs.stanford.edu>
Fri, 2 Dec 2011 05:25:18 +0000 (21:25 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Fri, 2 Dec 2011 05:25:18 +0000 (21:25 -0800)
lib/linreg/sweep.c
src/language/stats/glm.c
src/math/covariance.c

index 1eb466e92105d80c323c18ca9263f54a568746fb..62dda200701ceda43e4040e3128b1b8121b9e279 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPP - a program for statistical analysis.
-   Copyright (C) 2005, 2009 Free Software Foundation, Inc.
+   Copyright (C) 2005, 2009, 2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 int
 reg_sweep (gsl_matrix * A, int last_col)
 {
-  if (A == NULL)
-    return GSL_EFAULT;
-
-  if (A->size1 != A->size2)
-    return GSL_ENOTSQR;
-
   int i;
   int j;
   int k;
   gsl_matrix *B;
 
+  if (A == NULL)
+    return GSL_EFAULT;
+
+  if (A->size1 != A->size2)
+    return GSL_ENOTSQR;
 
   assert (last_col < A->size1);
   gsl_matrix_swap_rows (A, A->size1 - 1, last_col);
index 92e35ccd27e1f5f4c1f8082d63d402e90f05ca4d..5df61c3e0e7b2721f010a1b597e56441a452e0bf 100644 (file)
@@ -716,6 +716,8 @@ output_glm (const struct glm_spec *cmd, const struct glm_workspace *ws)
   const struct fmt_spec *wfmt =
     cmd->wv ? var_get_print_format (cmd->wv) : &F_8_0;
 
+  double intercept_ssq;
+  double ssq_effects;
   double n_total, mean;
   double df_corr = 1.0;
   double mse = 0;
@@ -767,9 +769,9 @@ output_glm (const struct glm_spec *cmd, const struct glm_workspace *ws)
 
   mse = gsl_vector_get (ws->ssq, 0) / (n_total - df_corr);
 
-  const double intercept_ssq = pow2 (mean * n_total) / n_total;
+  intercept_ssq = pow2 (mean * n_total) / n_total;
 
-  double ssq_effects = 0.0;
+  ssq_effects = 0.0;
   if (cmd->intercept)
     {
       const double df = 1.0;
@@ -790,6 +792,8 @@ output_glm (const struct glm_spec *cmd, const struct glm_workspace *ws)
       double df = categoricals_df (ws->cats, f);
 
       double ssq = gsl_vector_get (ws->ssq, f + 1);
+      double F;
+
       ssq_effects += ssq;
 
       if (! cmd->intercept) 
@@ -798,7 +802,7 @@ output_glm (const struct glm_spec *cmd, const struct glm_workspace *ws)
          ssq += intercept_ssq;
        }
 
-      const double F = ssq / df / mse;
+      F = ssq / df / mse;
       interaction_to_string (cmd->interactions[f], &str);
       tab_text (t, 0, r, TAB_LEFT | TAT_TITLE, ds_cstr (&str));
       ds_destroy (&str);
@@ -817,12 +821,14 @@ output_glm (const struct glm_spec *cmd, const struct glm_workspace *ws)
     /* Model / Corrected Model */
     double df = df_corr;
     double ssq = ws->total_ssq - gsl_vector_get (ws->ssq, 0);
+    double F;
+
     if ( cmd->intercept )
       df --;
     else
       ssq += intercept_ssq;
 
-    const double F = ssq / df / mse;
+    F = ssq / df / mse;
     tab_double (t, 1, heading_rows, 0, ssq, NULL);
     tab_double (t, 2, heading_rows, 0, df, wfmt);
     tab_double (t, 3, heading_rows, 0, ssq / df, NULL);
index 2f4f525adb6b69a561cc524f079c4607d7198401..bc5382c0c12752e899c5b7b6570f16acf7ae4c11 100644 (file)
@@ -742,7 +742,9 @@ struct tab_table *
 covariance_dump_enc_header (const struct covariance *cov, int length)
 {
   struct tab_table *t = tab_create (cov->dim,  length);
+  int n;
   int i;
+
   tab_title (t, "Covariance Encoding");
 
   tab_box (t, 
@@ -758,18 +760,19 @@ covariance_dump_enc_header (const struct covariance *cov, int length)
       tab_vline (t, TAL_1, i + 1, 0, tab_nr (t) - 1);
     }
 
-  int n = 0;
+  n = 0;
   while (i < cov->dim)
     {
       struct string str;
       int idx = i - cov->n_vars;
       const struct interaction *iact =
        categoricals_get_interaction_by_subscript (cov->categoricals, idx);
+      int df;
 
       ds_init_empty (&str);
       interaction_to_string (iact, &str);
 
-      int df = categoricals_df (cov->categoricals, n);
+      df = categoricals_df (cov->categoricals, n);
 
       tab_joint_text (t,
                      i, 0,