Can't install on newer rubies.

Hi.  I'm trying to play with gosu plus chipmunk.  gem install chipmunk fell over in ruby 2.5.3.  I tried 2.6.2, because I'm an optimist, and had the same result.  The next oldest ruby I have is 2.3.3 and it seems to work in there.  I did not attempt a binary search to isolate the version that broke the gem.
Here's 2.5.3
/home/sagotsky/.rbenv/versions/2.5.3/bin/ruby -r ./siteconf20190401-4517-u7q8nz.rb extconf.rb
creating Makefile

current directory: /home/sagotsky/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/chipmunk-<IP_ADDRESS>/ext/chipmunk
make "DESTDIR=" clean

current directory: /home/sagotsky/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/chipmunk-<IP_ADDRESS>/ext/chipmunk
make "DESTDIR="
compiling chipmunk.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from chipmunk.c:26:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from chipmunk.c:26:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
chipmunk.c: In function ‘cpMessage’:
chipmunk.c:33:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  va_list vargs;
  ^~~~~~~
chipmunk.c:35:3: warning: function ‘cpMessage’ might be a candidate for ‘gnu_printf’ format attribute [-Wsuggest-attribute=format]
   vfprintf(stderr, message, vargs);
   ^~~~~~~~
chipmunk.c: In function ‘cpLoopIndexes’:
chipmunk.c:163:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect min = verts[0];
  ^~~~~~
chipmunk.c: In function ‘QHullPartition’:
chipmunk.c:186:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat max = 0;
  ^~~~~~~
chipmunk.c: In function ‘QHullReduce’:
chipmunk.c:227:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   int right_count = QHullPartition(verts + left_count, count - left_count, pivot, b, tol);
   ^~~
chipmunk.c: In function ‘cpConvexHull’:
chipmunk.c:246:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int start, end;
  ^~~
chipmunk.c:256:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect a = result[0];
  ^~~~~~
chipmunk.c:260:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int resultCount = QHullReduce(tol, result + 2, count - 2, a, b, a, result + 1) + 1;
  ^~~
chipmunk.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpArbiter.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpArbiter.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpArbiter.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpArbiter.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpArbiter.c: In function ‘cpArbiterGetNormal’:
cpArbiter.c:87:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect n = arb->contacts[i].n;
  ^~~~~~
cpArbiter.c: In function ‘cpArbiterGetContactPointSet’:
cpArbiter.c:113:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int i;
  ^~~
cpArbiter.c: In function ‘cpArbiterApplyCachedImpulse’:
cpArbiter.c:294:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *a = arb->body_a;
  ^~~~~~
cpArbiter.c: In function ‘cpArbiterApplyImpulse’:
cpArbiter.c:333:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat jn = -(con->bounce + vrn)*nMass;
   ^~~~~~~
cpArbiter.c:337:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat jtMax = friction*con->jnAcc;
   ^~~~~~~
cpArbiter.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpArray.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpArray.c:24:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpArray.c:24:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpArray.c: In function ‘cpArrayPop’:
cpArray.c:67:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  void *value = arr->arr[arr->num];
  ^~~~
cpArray.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpBB.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpBB.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpBB.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpBB.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpBBTree.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpBBTree.c:25:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpBBTree.c:25:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpBBTree.c: In function ‘PairFromPool’:
cpBBTree.c:146:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  Pair *pair = tree->pooledPairs;
  ^~~~
cpBBTree.c:156:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   Pair *buffer = (Pair *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~
cpBBTree.c: In function ‘NodeFromPool’:
cpBBTree.c:245:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   Node *buffer = (Node *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~
cpBBTree.c: In function ‘cpBBTreeReindexQuery’:
cpBBTree.c:639:30: warning: cast between incompatible function types from ‘cpBool (*)(Node *, cpBBTree *)’ {aka ‘int (*)(struct Node *, struct cpBBTree *)’} to ‘void (*)(void *, void *)’ [-Wcast-function-type]
  cpHashSetEach(tree->leaves, (cpHashSetIteratorFunc)LeafUpdate, tree);
                              ^
cpBBTree.c:641:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpSpatialIndex *staticIndex = tree->spatialIndex.staticIndex;
  ^~~~~~~~~~~~~~
cpBBTree.c: In function ‘partitionNodes’:
cpBBTree.c:748:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBB bb = nodes[0]->bb;
  ^~~~
cpBBTree.c:752:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBool splitWidth = (bb.r - bb.l > bb.t - bb.b);
  ^~~~~~
cpBBTree.c:769:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat split = (bounds[count - 1] + bounds[count])*0.5f; // use the medain as the split
  ^~~~~~~
cpBBTree.c:773:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBB a = bb, b = bb;
  ^~~~
cpBBTree.c:777:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int right = count;
  ^~~
cpBBTree.c: In function ‘cpBBTreeOptimize’:
cpBBTree.c:830:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBBTree *tree = (cpBBTree *)index;
  ^~~~~~~~
cpBBTree.c:834:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int count = cpBBTreeCount(tree);
  ^~~
cpBBTree.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpBody.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpBody.c:24:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpBody.c:24:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpBody.c:25:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpBody.c: In function ‘cpBodyInit’:
cpBody.c:47:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpComponentNode node = {NULL, NULL, 0.0f};
  ^~~~~~~~~~~~~~~
cpBody.c: In function ‘cpBodyUpdateVelocity’:
cpBody.c:237:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat w_limit = body->w_limit;
  ^~~~~~~
cpBody.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpCollision.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpCollision.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpCollision.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpCollision.c: In function ‘circle2circleQuery’:
cpCollision.c:36:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat dist = cpfsqrt(distsq);
  ^~~~~~~
cpCollision.c: In function ‘poly2poly’:
cpCollision.c:178:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat min2;
  ^~~~~~~
cpCollision.c: In function ‘seg2poly’:
cpCollision.c:231:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int mini = 0;
  ^~~
cpCollision.c:244:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int num = 0;
  ^~~
cpCollision.c: In function ‘circle2poly’:
cpCollision.c:301:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect n = planes[mini].n;
  ^~~~~~
cpCollision.c: In function ‘seg2seg’:
cpCollision.c:366:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int num = 0;
  ^~~
cpCollision.c: In function ‘cpCollideShapes’:
cpCollision.c:420:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  collisionFunc cfunc = colfuncs[a->klass->type + b->klass->type*CP_NUM_SHAPES];
  ^~~~~~~~~~~~~
cpCollision.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpConstraint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpConstraint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpConstraint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpConstraint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpConstraint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpDampedRotarySpring.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpDampedRotarySpring.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpDampedRotarySpring.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpDampedRotarySpring.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpDampedRotarySpring.c: In function ‘preStep’:
cpDampedRotarySpring.c:44:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat j_spring = spring->springTorqueFunc((cpConstraint *)spring, a->a - b->a)*dt;
  ^~~~~~~
cpDampedRotarySpring.c: In function ‘applyImpulse’:
cpDampedRotarySpring.c:68:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat j_damp = w_damp*spring->iSum;
  ^~~~~~~
cpDampedRotarySpring.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpDampedSpring.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpDampedSpring.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpDampedSpring.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpDampedSpring.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpDampedSpring.c: In function ‘preStep’:
cpDampedSpring.c:39:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect delta = cpvsub(cpvadd(b->p, spring->r2), cpvadd(a->p, spring->r1));
  ^~~~~~
cpDampedSpring.c:43:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat k = k_scalar(a, b, spring->r1, spring->r2, spring->n);
  ^~~~~~~
cpDampedSpring.c:51:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat f_spring = spring->springForceFunc((cpConstraint *)spring, dist);
  ^~~~~~~
cpDampedSpring.c: In function ‘applyImpulse’:
cpDampedSpring.c:75:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat j_damp = v_damp*spring->nMass;
  ^~~~~~~
cpDampedSpring.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpGearJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpGearJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpGearJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpGearJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpGearJoint.c: In function ‘preStep’:
cpGearJoint.c:35:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat maxBias = joint->constraint.maxBias;
  ^~~~~~~
cpGearJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpGrooveJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpGrooveJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpGrooveJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpGrooveJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpGrooveJoint.c: In function ‘preStep’:
cpGrooveJoint.c:43:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat td = cpvcross(cpvadd(b->p, joint->r2), n);
  ^~~~~~~
cpGrooveJoint.c:60:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect delta = cpvsub(cpvadd(b->p, joint->r2), cpvadd(a->p, joint->r1));
  ^~~~~~
cpGrooveJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpHashSet.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpHashSet.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpHashSet.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpHashSet.c: In function ‘getUnusedBin’:
cpHashSet.c:137:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpHashSetBin *buffer = (cpHashSetBin *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~~~~~~~~~
cpHashSet.c: In function ‘cpHashSetRemove’:
cpHashSet.c:198:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   void *elt = bin->elt;
   ^~~~
cpHashSet.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpPinJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpPinJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpPinJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpPinJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpPinJoint.c: In function ‘preStep’:
cpPinJoint.c:34:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect delta = cpvsub(cpvadd(b->p, joint->r2), cpvadd(a->p, joint->r1));
  ^~~~~~
cpPinJoint.c:42:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat maxBias = joint->constraint.maxBias;
  ^~~~~~~
cpPinJoint.c: In function ‘cpPinJointInit’:
cpPinJoint.c:108:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect p1 = (a ? cpvadd(a->p, cpvrotate(anchr1, a->rot)) : anchr1);
  ^~~~~~
cpPinJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpPivotJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpPivotJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpPivotJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpPivotJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpPivotJoint.c: In function ‘preStep’:
cpPivotJoint.c:38:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect delta = cpvsub(cpvadd(b->p, joint->r2), cpvadd(a->p, joint->r1));
  ^~~~~~
cpPivotJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpPolyShape.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpPolyShape.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpPolyShape.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpPolyShape.c: In function ‘cpPolyShapeCacheData’:
cpPolyShape.c:70:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBB bb = poly->shape.bb = cpPolyShapeTransformVerts(poly, p, rot);
  ^~~~
cpPolyShape.c: In function ‘cpPolyShapeNearestPointQuery’:
cpPolyShape.c:96:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpVect v1 = verts[i];
   ^~~~~~
cpPolyShape.c: In function ‘cpPolyShapeSegmentQuery’:
cpPolyShape.c:125:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat bn = cpvdot(b, n);
   ^~~~~~~
cpPolyShape.c:129:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpVect point = cpvlerp(a, b, t);
   ^~~~~~
cpPolyShape.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpRatchetJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpRatchetJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpRatchetJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpRatchetJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpRatchetJoint.c: In function ‘preStep’:
cpRatchetJoint.c:49:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat maxBias = joint->constraint.maxBias;
  ^~~~~~~
cpRatchetJoint.c: In function ‘applyImpulse’:
cpRatchetJoint.c:72:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *a = joint->constraint.a;
  ^~~~~~
cpRatchetJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpRotaryLimitJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpRotaryLimitJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpRotaryLimitJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpRotaryLimitJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpRotaryLimitJoint.c: In function ‘preStep’:
cpRotaryLimitJoint.c:43:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat maxBias = joint->constraint.maxBias;
  ^~~~~~~
cpRotaryLimitJoint.c: In function ‘applyImpulse’:
cpRotaryLimitJoint.c:66:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *a = joint->constraint.a;
  ^~~~~~
cpRotaryLimitJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpShape.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpShape.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpShape.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpShape.c: In function ‘circleSegmentQuery’:
cpShape.c:172:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat qa = cpvdot(a, a) - 2.0f*cpvdot(a, b) + cpvdot(b, b);
  ^~~~~~~
cpShape.c: In function ‘cpSegmentShapeCacheData’:
cpShape.c:235:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat l,r,b,t;
  ^~~~~~~
cpShape.c:253:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat rad = seg->r;
  ^~~~~~~
cpShape.c: In function ‘cpSegmentShapeSetNeighbors’:
cpShape.c:350:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpSegmentShape *seg = (cpSegmentShape *)shape;
  ^~~~~~~~~~~~~~
cpShape.c: In function ‘cpCircleShapeSetRadius’:
cpShape.c:362:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpCircleShape *circle = (cpCircleShape *)shape;
  ^~~~~~~~~~~~~
cpShape.c: In function ‘cpCircleShapeSetOffset’:
cpShape.c:371:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpCircleShape *circle = (cpCircleShape *)shape;
  ^~~~~~~~~~~~~
cpShape.c: In function ‘cpSegmentShapeSetEndpoints’:
cpShape.c:380:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpSegmentShape *seg = (cpSegmentShape *)shape;
  ^~~~~~~~~~~~~~
cpShape.c: In function ‘cpSegmentShapeSetRadius’:
cpShape.c:391:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpSegmentShape *seg = (cpSegmentShape *)shape;
  ^~~~~~~~~~~~~~
cpShape.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSimpleMotor.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSimpleMotor.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSimpleMotor.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpSimpleMotor.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpSimpleMotor.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSlideJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSlideJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSlideJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpSlideJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpSlideJoint.c: In function ‘preStep’:
cpSlideJoint.c:34:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect delta = cpvsub(cpvadd(b->p, joint->r2), cpvadd(a->p, joint->r1));
  ^~~~~~
cpSlideJoint.c:52:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat maxBias = joint->constraint.maxBias;
  ^~~~~~~
cpSlideJoint.c: In function ‘applyImpulse’:
cpSlideJoint.c:71:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *a = joint->constraint.a;
  ^~~~~~
cpSlideJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSpace.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSpace.c:25:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSpace.c:25:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpSpace.c: In function ‘cpSpaceDestroy’:
cpSpace.c:147:25: warning: cast between incompatible function types from ‘void (*)(cpBody *)’ {aka ‘void (*)(struct cpBody *)’} to ‘void (*)(cpBody *, void *)’ {aka ‘void (*)(struct cpBody *, void *)’} [-Wcast-function-type]
  cpSpaceEachBody(space, (cpSpaceBodyIteratorFunc)cpBodyActivate, NULL);
                         ^
cpSpace.c: In function ‘cpSpaceAddCollisionHandler’:
cpSpace.c:209:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpCollisionHandler handler = {
  ^~~~~~~~~~~~~~~~~~
cpSpace.c: In function ‘cpSpaceRemoveCollisionHandler’:
cpSpace.c:226:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  struct { cpCollisionType a, b; } ids = {a, b};
  ^~~~~~
cpSpace.c: In function ‘cpSpaceSetDefaultCollisionHandler’:
cpSpace.c:242:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpCollisionHandler handler = {
  ^~~~~~~~~~~~~~~~~~
cpSpace.c: In function ‘cpSpaceAddStaticShape’:
cpSpace.c:281:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *body = shape->body;
  ^~~~~~
cpSpace.c: In function ‘cpSpaceAddConstraint’:
cpSpace.c:314:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *a = constraint->a, *b = constraint->b;
  ^~~~~~
cpSpace.c: In function ‘cpSpaceRemoveStaticShape’:
cpSpace.c:386:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *body = shape->body;
  ^~~~~~
cpSpace.c: In function ‘cpSpaceEachBody’:
cpSpace.c:449:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpArray *components = space->sleepingComponents;
   ^~~~~~~
cpSpace.c: In function ‘cpSpaceReindexShape’:
cpSpace.c:519:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *body = shape->body;
  ^~~~~~
cpSpace.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSpaceComponent.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSpaceComponent.c:24:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSpaceComponent.c:24:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpSpaceComponent.c: In function ‘cpSpaceActivateBody’:
cpSpaceComponent.c:61:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     cpShape *a = arb->a, *b = arb->b;
     ^~~~~~~
cpSpaceComponent.c: In function ‘cpSpaceDeactivateBody’:
cpSpaceComponent.c:100:4: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    size_t bytes = arb->numContacts*sizeof(cpContact);
    ^~~~~~
cpSpaceComponent.c: In function ‘ComponentActivate’:
cpSpaceComponent.c:125:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpSpace *space = root->space;
  ^~~~~~~
cpSpaceComponent.c: In function ‘cpBodyPushArbiter’:
cpSpaceComponent.c:177:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpArbiter *next = body->arbiterList;
  ^~~~~~~~~
cpSpaceComponent.c: In function ‘cpSpaceProcessComponents’:
cpSpaceComponent.c:253:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpArray *arbiters = space->arbiters;
  ^~~~~~~
cpSpaceComponent.c: In function ‘cpBodySleepWithGroup’:
cpSpaceComponent.c:317:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpSpace *space = body->space;
  ^~~~~~~
cpSpaceComponent.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSpaceHash.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSpaceHash.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSpaceHash.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpSpaceHash.c: In function ‘handleSetTrans’:
cpSpaceHash.c:82:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpHandle *buffer = (cpHandle *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~~~~~
cpSpaceHash.c:88:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpHandle *hand = cpHandleInit((cpHandle *)cpArrayPop(hash->pooledHandles), obj);
  ^~~~~~~~
cpSpaceHash.c: In function ‘getEmptyBin’:
cpSpaceHash.c:144:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpSpaceHashBin *buffer = (cpSpaceHashBin *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~~~~~~~~~~~
cpSpaceHash.c: In function ‘hashHandle’:
cpSpaceHash.c:262:4: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    cpSpaceHashBin *newBin = getEmptyBin(hash);
    ^~~~~~~~~~~~~~
cpSpaceHash.c: In function ‘queryRehash_helper’:
cpSpaceHash.c:437:4: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    cpSpaceHashBin *newBin = getEmptyBin(hash);
    ^~~~~~~~~~~~~~
cpSpaceHash.c: In function ‘cpSpaceHashReindexQuery’:
cpSpaceHash.c:453:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  queryRehashContext context = {hash, func, data};
  ^~~~~~~~~~~~~~~~~~
cpSpaceHash.c: In function ‘cpSpaceHashSegmentQuery’:
cpSpaceHash.c:493:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int cell_x = floor_int(a.x), cell_y = floor_int(a.y);
  ^~~
cpSpaceHash.c:517:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat dx = cpfabs(b.x - a.x), dy = cpfabs(b.y - a.y);
  ^~~~~~~
cpSpaceHash.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSpaceQuery.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSpaceQuery.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSpaceQuery.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpSpaceQuery.c: In function ‘cpSpaceNearestPointQueryNearest’:
cpSpaceQuery.c:130:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  struct NearestPointQueryContext context = {
  ^~~~~~
cpSpaceQuery.c: In function ‘cpSpaceSegmentQueryFirst’:
cpSpaceQuery.c:210:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  struct SegmentQueryContext context = {
  ^~~~~~
cpSpaceQuery.c: In function ‘ShapeQuery’:
cpSpaceQuery.c:272:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpContact contacts[CP_MAX_CONTACTS_PER_ARBITER];
  ^~~~~~~~~
cpSpaceQuery.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSpaceStep.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSpaceStep.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSpaceStep.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpSpaceStep.c: In function ‘cpSpaceUnlock’:
cpSpaceStep.c:87:4: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    cpArray *arr = space->postStepCallbacks;
    ^~~~~~~
cpSpaceStep.c: In function ‘cpContactBufferGetArray’:
cpSpaceStep.c:169:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpContactBufferHeader *head = space->contactBuffersHead;
  ^~~~~~~~~~~~~~~~~~~~~
cpSpaceStep.c: In function ‘cpSpaceArbiterSetTrans’:
cpSpaceStep.c:195:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpArbiter *buffer = (cpArbiter *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~~~~~~
cpSpaceStep.c: In function ‘cpSpaceCollideShapes’:
cpSpaceStep.c:228:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpCollisionHandler *handler = cpSpaceLookupHandler(space, a->collision_type, b->collision_type);
  ^~~~~~~~~~~~~~~~~~
cpSpaceStep.c:241:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpContact *contacts = cpContactBufferGetArray(space);
  ^~~~~~~~~
cpSpaceStep.c:248:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpShape *shape_pair[] = {a, b};
  ^~~~~~~
cpSpaceStep.c: In function ‘cpSpaceStep’:
cpSpaceStep.c:334:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat prev_dt = space->curr_dt;
  ^~~~~~~
cpSpaceStep.c:337:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpArray *bodies = space->bodies;
  ^~~~~~~
cpSpaceStep.c:374:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat slop = space->collisionSlop;
   ^~~~~~~
cpSpaceStep.c:390:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat damping = cpfpow(space->damping, dt);
   ^~~~~~~
cpSpaceStep.c:398:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dt_coef = (prev_dt == 0.0f ? 0.0f : dt/prev_dt);
   ^~~~~~~
cpSpaceStep.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSpatialIndex.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSpatialIndex.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSpatialIndex.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpSpatialIndex.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpSweep1D.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpSweep1D.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpSweep1D.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpSweep1D.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling cpVect.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpVect.c:24:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpVect.c:24:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpVect.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling rb_chipmunk.c
In file included from chipmunk.h:105,
                 from rb_chipmunk.c:24:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from rb_chipmunk.c:26:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h: At top level:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:887:29: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 void rb_timespec_now(struct timespec *);
                             ^~~~~~~~
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:890:41: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 VALUE rb_time_timespec_new(const struct timespec *, int);
                                         ^~~~~~~~
In file included from rb_chipmunk.c:27:
rb_chipmunk.h: In function ‘VGET’:
rb_chipmunk.h:69:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(VGET, c_cpVect, cpVect )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BBGET’:
rb_chipmunk.h:70:32: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BBGET, c_cpBB, cpBB   )
                                ^~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BODY’:
rb_chipmunk.h:71:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BODY, c_cpBody, cpBody )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘STATICBODY’:
rb_chipmunk.h:72:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(STATICBODY, c_cpStaticBody, cpBody)
                                             ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SHAPE’:
rb_chipmunk.h:73:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SHAPE, m_cpShape, cpShape)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘CONSTRAINT’:
rb_chipmunk.h:74:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(CONSTRAINT, m_cpConstraint, cpConstraint)
                                             ^~~~~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SPACE’:
rb_chipmunk.h:75:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SPACE, c_cpSpace, cpSpace)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘ARBITER’:
rb_chipmunk.h:76:39: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(ARBITER, c_cpArbiter, cpArbiter)
                                       ^~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.c: In function ‘rb_cpMomentForPoly’:
rb_chipmunk.c:66:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   int numVerts    = (int)RARRAY_LEN(arr);
   ^~~
rb_chipmunk.c:73:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat inertia = cpMomentForPoly(NUM2DBL(m), numVerts, verts, *VGET(offset));
   ^~~~~~~
rb_chipmunk.c: In function ‘rb_cpAreaForPoly’:
rb_chipmunk.c:99:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   int numVerts   = (int)RARRAY_LEN(arr);
   ^~~
rb_chipmunk.c:106:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat area   = cpAreaForPoly(numVerts, verts);
   ^~~~~~~
rb_chipmunk.c: In function ‘rb_cpCentroidForPoly’:
rb_chipmunk.c:139:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   int numVerts   = (int)RARRAY_LEN(arr);
   ^~~
rb_chipmunk.c: In function ‘rb_cpRecenterPoly’:
rb_chipmunk.c:153:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   int numVerts   = (int)RARRAY_LEN(arr);
   ^~~
rb_chipmunk.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling rb_cpArbiter.c
In file included from chipmunk.h:105,
                 from rb_cpArbiter.c:23:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from rb_cpArbiter.c:25:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h: At top level:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:887:29: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 void rb_timespec_now(struct timespec *);
                             ^~~~~~~~
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:890:41: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 VALUE rb_time_timespec_new(const struct timespec *, int);
                                         ^~~~~~~~
In file included from rb_cpArbiter.c:26:
rb_chipmunk.h: In function ‘VGET’:
rb_chipmunk.h:69:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(VGET, c_cpVect, cpVect )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BBGET’:
rb_chipmunk.h:70:32: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BBGET, c_cpBB, cpBB   )
                                ^~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BODY’:
rb_chipmunk.h:71:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BODY, c_cpBody, cpBody )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘STATICBODY’:
rb_chipmunk.h:72:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(STATICBODY, c_cpStaticBody, cpBody)
                                             ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SHAPE’:
rb_chipmunk.h:73:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SHAPE, m_cpShape, cpShape)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘CONSTRAINT’:
rb_chipmunk.h:74:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(CONSTRAINT, m_cpConstraint, cpConstraint)
                                             ^~~~~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SPACE’:
rb_chipmunk.h:75:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SPACE, c_cpSpace, cpSpace)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘ARBITER’:
rb_chipmunk.h:76:39: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(ARBITER, c_cpArbiter, cpArbiter)
                                       ^~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_cpArbiter.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling rb_cpBB.c
In file included from chipmunk.h:105,
                 from rb_cpBB.c:23:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from rb_cpBB.c:25:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h: At top level:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:887:29: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 void rb_timespec_now(struct timespec *);
                             ^~~~~~~~
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:890:41: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 VALUE rb_time_timespec_new(const struct timespec *, int);
                                         ^~~~~~~~
In file included from rb_cpBB.c:26:
rb_chipmunk.h: In function ‘VGET’:
rb_chipmunk.h:69:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(VGET, c_cpVect, cpVect )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BBGET’:
rb_chipmunk.h:70:32: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BBGET, c_cpBB, cpBB   )
                                ^~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BODY’:
rb_chipmunk.h:71:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BODY, c_cpBody, cpBody )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘STATICBODY’:
rb_chipmunk.h:72:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(STATICBODY, c_cpStaticBody, cpBody)
                                             ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SHAPE’:
rb_chipmunk.h:73:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SHAPE, m_cpShape, cpShape)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘CONSTRAINT’:
rb_chipmunk.h:74:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(CONSTRAINT, m_cpConstraint, cpConstraint)
                                             ^~~~~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SPACE’:
rb_chipmunk.h:75:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SPACE, c_cpSpace, cpSpace)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘ARBITER’:
rb_chipmunk.h:76:39: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(ARBITER, c_cpArbiter, cpArbiter)
                                       ^~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_cpBB.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling rb_cpBody.c
In file included from chipmunk.h:105,
                 from rb_cpBody.c:23:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from rb_cpBody.c:25:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h: At top level:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:887:29: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 void rb_timespec_now(struct timespec *);
                             ^~~~~~~~
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:890:41: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 VALUE rb_time_timespec_new(const struct timespec *, int);
                                         ^~~~~~~~
In file included from rb_cpBody.c:26:
rb_chipmunk.h: In function ‘VGET’:
rb_chipmunk.h:69:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(VGET, c_cpVect, cpVect )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BBGET’:
rb_chipmunk.h:70:32: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BBGET, c_cpBB, cpBB   )
                                ^~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BODY’:
rb_chipmunk.h:71:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BODY, c_cpBody, cpBody )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘STATICBODY’:
rb_chipmunk.h:72:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(STATICBODY, c_cpStaticBody, cpBody)
                                             ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SHAPE’:
rb_chipmunk.h:73:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SHAPE, m_cpShape, cpShape)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘CONSTRAINT’:
rb_chipmunk.h:74:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(CONSTRAINT, m_cpConstraint, cpConstraint)
                                             ^~~~~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SPACE’:
rb_chipmunk.h:75:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SPACE, c_cpSpace, cpSpace)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘ARBITER’:
rb_chipmunk.h:76:39: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(ARBITER, c_cpArbiter, cpArbiter)
                                       ^~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_cpBody.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling rb_cpConstraint.c
In file included from chipmunk.h:105,
                 from rb_cpConstraint.c:23:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from rb_cpConstraint.c:25:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h: At top level:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:887:29: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 void rb_timespec_now(struct timespec *);
                             ^~~~~~~~
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:890:41: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 VALUE rb_time_timespec_new(const struct timespec *, int);
                                         ^~~~~~~~
In file included from rb_cpConstraint.c:26:
rb_chipmunk.h: In function ‘VGET’:
rb_chipmunk.h:69:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(VGET, c_cpVect, cpVect )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BBGET’:
rb_chipmunk.h:70:32: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BBGET, c_cpBB, cpBB   )
                                ^~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BODY’:
rb_chipmunk.h:71:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BODY, c_cpBody, cpBody )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘STATICBODY’:
rb_chipmunk.h:72:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(STATICBODY, c_cpStaticBody, cpBody)
                                             ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SHAPE’:
rb_chipmunk.h:73:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SHAPE, m_cpShape, cpShape)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘CONSTRAINT’:
rb_chipmunk.h:74:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(CONSTRAINT, m_cpConstraint, cpConstraint)
                                             ^~~~~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SPACE’:
rb_chipmunk.h:75:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SPACE, c_cpSpace, cpSpace)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘ARBITER’:
rb_chipmunk.h:76:39: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(ARBITER, c_cpArbiter, cpArbiter)
                                       ^~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_cpConstraint.c: In function ‘rb_cpPivotJoint_init’:
rb_cpConstraint.c:153:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpPivotJoint *joint = (cpPivotJoint *)CONSTRAINT(self);
   ^~~~~~~~~~~~
rb_cpConstraint.c: In function ‘Init_cpConstraint’:
rb_cpConstraint.c:403:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpDampedRotarySpring = make_class("DampedRotarySpring", rb_cpDampedRotarySpring_alloc, rb_cpDampedRotarySpring_init, 5);
   ^~~~~
rb_cpConstraint.c:409:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpDampedSpring     = make_class("DampedSpring", rb_cpDampedSpring_alloc, rb_cpDampedSpring_init, 7);
   ^~~~~
rb_cpConstraint.c:417:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpGearJoint        = make_class("GearJoint", rb_cpGearJoint_alloc, rb_cpGearJoint_init, 4);
   ^~~~~
rb_cpConstraint.c:421:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpGrooveJoint      = make_class("GrooveJoint", rb_cpGrooveJoint_alloc, rb_cpGrooveJoint_init, 5);
   ^~~~~
rb_cpConstraint.c:427:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpPinJoint         = make_class("PinJoint", rb_cpPinJoint_alloc, rb_cpPinJoint_init, 4);
   ^~~~~
rb_cpConstraint.c:433:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpPivotJoint       = make_class("PivotJoint", rb_cpPivotJoint_alloc, rb_cpPivotJoint_init, -1);
   ^~~~~
rb_cpConstraint.c:437:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpRotaryLimitJoint = make_class("RotaryLimitJoint", rb_cpRotaryLimitJoint_alloc, rb_cpRotaryLimitJoint_init, 4);
   ^~~~~
rb_cpConstraint.c:441:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpSimpleMotor      = make_class("SimpleMotor", rb_cpSimpleMotor_alloc, rb_cpSimpleMotor_init, 3);
   ^~~~~
rb_cpConstraint.c:444:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpSlideJoint = make_class("SlideJoint", rb_cpSlideJoint_alloc, rb_cpSlideJoint_init, 6);
   ^~~~~
rb_cpConstraint.c:451:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE c_cpRatchetJoint     = make_class("RatchetJoint", rb_cpRatchetJoint_alloc, rb_cpRatchetJoint_init, 4);
   ^~~~~
rb_cpConstraint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling rb_cpShape.c
In file included from chipmunk.h:105,
                 from rb_cpShape.c:23:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from rb_cpShape.c:28:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h: At top level:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:887:29: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 void rb_timespec_now(struct timespec *);
                             ^~~~~~~~
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:890:41: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 VALUE rb_time_timespec_new(const struct timespec *, int);
                                         ^~~~~~~~
In file included from rb_cpShape.c:29:
rb_chipmunk.h: In function ‘VGET’:
rb_chipmunk.h:69:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(VGET, c_cpVect, cpVect )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BBGET’:
rb_chipmunk.h:70:32: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BBGET, c_cpBB, cpBB   )
                                ^~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BODY’:
rb_chipmunk.h:71:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BODY, c_cpBody, cpBody )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘STATICBODY’:
rb_chipmunk.h:72:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(STATICBODY, c_cpStaticBody, cpBody)
                                             ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SHAPE’:
rb_chipmunk.h:73:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SHAPE, m_cpShape, cpShape)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘CONSTRAINT’:
rb_chipmunk.h:74:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(CONSTRAINT, m_cpConstraint, cpConstraint)
                                             ^~~~~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SPACE’:
rb_chipmunk.h:75:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SPACE, c_cpSpace, cpSpace)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘ARBITER’:
rb_chipmunk.h:76:39: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(ARBITER, c_cpArbiter, cpArbiter)
                                       ^~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_cpShape.c: In function ‘rb_cpPolyValidate’:
rb_cpShape.c:276:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE *__rbcp_ptr = RARRAY_PTR(ARR);     \
   ^~~~~
rb_cpShape.c:285:3: note: in expansion of macro ‘RBCP_ARRAY_POINTS’
   RBCP_ARRAY_POINTS(arr, num, verts);
   ^~~~~~~~~~~~~~~~~
rb_cpShape.c: In function ‘rb_cpShapeBoxInitialize’:
rb_cpShape.c:302:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE newPoly = rb_cpPolyAlloc(c_cpPolyShape);
   ^~~~~
rb_cpShape.c: In function ‘rb_cpPolyInitialize’:
rb_cpShape.c:276:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE *__rbcp_ptr = RARRAY_PTR(ARR);     \
   ^~~~~
rb_cpShape.c:328:3: note: in expansion of macro ‘RBCP_ARRAY_POINTS’
   RBCP_ARRAY_POINTS(arr, num, verts);
   ^~~~~~~~~~~~~~~~~
rb_cpShape.c: In function ‘rb_cpPolyShapeSetVerts’:
rb_cpShape.c:276:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE *__rbcp_ptr = RARRAY_PTR(ARR);     \
   ^~~~~
rb_cpShape.c:425:3: note: in expansion of macro ‘RBCP_ARRAY_POINTS’
   RBCP_ARRAY_POINTS(arr, num, verts);
   ^~~~~~~~~~~~~~~~~
rb_cpShape.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
compiling rb_cpSpace.c
In file included from chipmunk.h:105,
                 from rb_cpSpace.c:23:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040,
                 from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from rb_cpSpace.c:25:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h: At top level:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:887:29: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 void rb_timespec_now(struct timespec *);
                             ^~~~~~~~
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:890:41: warning: ‘struct timespec’ declared inside parameter list will not be visible outside of this definition or declaration
 VALUE rb_time_timespec_new(const struct timespec *, int);
                                         ^~~~~~~~
In file included from rb_cpSpace.c:26:
rb_chipmunk.h: In function ‘VGET’:
rb_chipmunk.h:69:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(VGET, c_cpVect, cpVect )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BBGET’:
rb_chipmunk.h:70:32: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BBGET, c_cpBB, cpBB   )
                                ^~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘BODY’:
rb_chipmunk.h:71:33: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(BODY, c_cpBody, cpBody )
                                 ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘STATICBODY’:
rb_chipmunk.h:72:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(STATICBODY, c_cpStaticBody, cpBody)
                                             ^~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SHAPE’:
rb_chipmunk.h:73:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SHAPE, m_cpShape, cpShape)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘CONSTRAINT’:
rb_chipmunk.h:74:45: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(CONSTRAINT, m_cpConstraint, cpConstraint)
                                             ^~~~~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘SPACE’:
rb_chipmunk.h:75:35: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(SPACE, c_cpSpace, cpSpace)
                                   ^~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_chipmunk.h: In function ‘ARBITER’:
rb_chipmunk.h:76:39: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
 GETTER_TEMPLATE(ARBITER, c_cpArbiter, cpArbiter)
                                       ^~~~~~~~~
rb_chipmunk.h:64:5: note: in definition of macro ‘GETTER_TEMPLATE’
     type *ptr = NULL;                                                                                \
     ^~~~
rb_cpSpace.c: In function ‘do_callback’:
rb_cpSpace.c:172:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE object = (VALUE) data;
   ^~~~~
rb_cpSpace.c: In function ‘rb_cpSpaceAddCollisionHandler’:
rb_cpSpace.c:231:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE id_a   = rb_obj_id(a);
   ^~~~~
rb_cpSpace.c: In function ‘rb_cpSpaceRemoveCollisionHandler’:
rb_cpSpace.c:275:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   VALUE blocks = rb_iv_get(self, "@blocks");
   ^~~~~
rb_cpSpace.c: In function ‘rb_cpSpacePointQuery’:
rb_cpSpace.c:455:5: warning: cast between incompatible function types from ‘void (*)(cpShape *, VALUE)’ {aka ‘void (*)(struct cpShape *, long unsigned int)’} to ‘void (*)(cpShape *, void *)’ {aka ‘void (*)(struct cpShape *, void *)’} [-Wcast-function-type]
     (cpSpacePointQueryFunc)pointQueryCallback, (void *)block
     ^
rb_cpSpace.c: In function ‘rb_cpSpacePointQueryFirst’:
rb_cpSpace.c:466:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpShape *shape = cpSpacePointQueryFirst(
   ^~~~~~~
rb_cpSpace.c: In function ‘rb_cpSpaceSegmentQuery’:
rb_cpSpace.c:487:5: warning: cast between incompatible function types from ‘void (*)(cpShape *, cpFloat,  cpVect,  VALUE)’ {aka ‘void (*)(struct cpShape *, double,  struct cpVect,  long unsigned int)’} to ‘void (*)(cpShape *, cpFloat,  cpVect,  void *)’ {aka ‘void (*)(struct cpShape *, double,  struct cpVect,  void *)’} [-Wcast-function-type]
     (cpSpaceSegmentQueryFunc)segmentQueryCallback, (void *)block
     ^
rb_cpSpace.c: In function ‘rb_cpSpaceBBQuery’:
rb_cpSpace.c:530:5: warning: cast between incompatible function types from ‘void (*)(cpShape *, VALUE)’ {aka ‘void (*)(struct cpShape *, long unsigned int)’} to ‘void (*)(cpShape *, void *)’ {aka ‘void (*)(struct cpShape *, void *)’} [-Wcast-function-type]
     (cpSpaceBBQueryFunc)bbQueryCallback, (void *)block
     ^
rb_cpSpace.c: In function ‘rb_cpSpaceShapeQuery’:
rb_cpSpace.c:549:5: warning: cast between incompatible function types from ‘void (*)(cpShape *, cpContactPointSet *, VALUE)’ {aka ‘void (*)(struct cpShape *, struct cpContactPointSet *, long unsigned int)’} to ‘void (*)(cpShape *, cpContactPointSet *, void *)’ {aka ‘void (*)(struct cpShape *, struct cpContactPointSet *, void *)’} [-Wcast-function-type]
     (cpSpaceShapeQueryFunc)shapeQueryCallback, (void *)block
     ^
In file included from /home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33,
                 from rb_cpSpace.c:25:
rb_cpSpace.c: In function ‘segmentQueryCallback’:
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:1779:3: error: call to ‘rb_varargs_bad_length’ declared with attribute error:  argument length doesn't match
   rb_varargs_bad_length(argc, vargc)), \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/sagotsky/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2474:6: note: in expansion of macro ‘rb_varargs_argc_check’
      rb_varargs_argc_check(rb_funcall_argc, rb_funcall_nargs), \
      ^~~~~~~~~~~~~~~~~~~~~
rb_cpSpace.c:476:3: note: in expansion of macro ‘rb_funcall’
   rb_funcall(block, id_call, 1, (VALUE)shape->data, rb_float_new(t), VNEW(n));
   ^~~~~~~~~~
rb_cpSpace.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
make: *** [Makefile:242: rb_cpSpace.o] Error 1

make failed, exit code 2

And 2.6.2.  The logs look pretty similar to me, but I'm not a C programmer so I don't trust my assessment.
current directory: /home/sagotsky/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/chipmunk-<IP_ADDRESS>/ext/chipmunk
/home/sagotsky/.rbenv/versions/2.6.2/bin/ruby -I /home/sagotsky/.rbenv/versions/2.6.2/lib/ruby/2.6.0 -r ./siteconf20190401-20691-1e6p7pt.rb extconf.rb
creating Makefile

current directory: /home/sagotsky/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/chipmunk-<IP_ADDRESS>/ext/chipmunk
make "DESTDIR=" clean

current directory: /home/sagotsky/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/chipmunk-<IP_ADDRESS>/ext/chipmunk
make "DESTDIR="
compiling chipmunk.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from chipmunk.c:26:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from chipmunk.c:26:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
chipmunk.c: In function ‘cpMessage’:
chipmunk.c:33:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  va_list vargs;
  ^~~~~~~
chipmunk.c:35:3: warning: function ‘cpMessage’ might be a candidate for ‘gnu_printf’ format attribute [-Wsuggest-attribute=format]
   vfprintf(stderr, message, vargs);
   ^~~~~~~~
chipmunk.c: In function ‘cpLoopIndexes’:
chipmunk.c:163:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect min = verts[0];
  ^~~~~~
chipmunk.c: In function ‘QHullPartition’:
chipmunk.c:186:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat max = 0;
  ^~~~~~~
chipmunk.c: In function ‘QHullReduce’:
chipmunk.c:227:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   int right_count = QHullPartition(verts + left_count, count - left_count, pivot, b, tol);
   ^~~
chipmunk.c: In function ‘cpConvexHull’:
chipmunk.c:246:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int start, end;
  ^~~
chipmunk.c:256:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect a = result[0];
  ^~~~~~
chipmunk.c:260:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int resultCount = QHullReduce(tol, result + 2, count - 2, a, b, a, result + 1) + 1;
  ^~~
chipmunk.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpArbiter.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpArbiter.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpArbiter.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpArbiter.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpArbiter.c: In function ‘cpArbiterGetNormal’:
cpArbiter.c:87:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect n = arb->contacts[i].n;
  ^~~~~~
cpArbiter.c: In function ‘cpArbiterGetContactPointSet’:
cpArbiter.c:113:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int i;
  ^~~
cpArbiter.c: In function ‘cpArbiterApplyCachedImpulse’:
cpArbiter.c:294:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *a = arb->body_a;
  ^~~~~~
cpArbiter.c: In function ‘cpArbiterApplyImpulse’:
cpArbiter.c:333:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat jn = -(con->bounce + vrn)*nMass;
   ^~~~~~~
cpArbiter.c:337:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat jtMax = friction*con->jnAcc;
   ^~~~~~~
cpArbiter.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpArray.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpArray.c:24:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpArray.c:24:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpArray.c: In function ‘cpArrayPop’:
cpArray.c:67:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  void *value = arr->arr[arr->num];
  ^~~~
cpArray.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpBB.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpBB.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpBB.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpBB.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpBBTree.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpBBTree.c:25:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpBBTree.c:25:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpBBTree.c: In function ‘PairFromPool’:
cpBBTree.c:146:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  Pair *pair = tree->pooledPairs;
  ^~~~
cpBBTree.c:156:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   Pair *buffer = (Pair *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~
cpBBTree.c: In function ‘NodeFromPool’:
cpBBTree.c:245:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   Node *buffer = (Node *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~
cpBBTree.c: In function ‘cpBBTreeReindexQuery’:
cpBBTree.c:641:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpSpatialIndex *staticIndex = tree->spatialIndex.staticIndex;
  ^~~~~~~~~~~~~~
cpBBTree.c: In function ‘partitionNodes’:
cpBBTree.c:748:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBB bb = nodes[0]->bb;
  ^~~~
cpBBTree.c:752:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBool splitWidth = (bb.r - bb.l > bb.t - bb.b);
  ^~~~~~
cpBBTree.c:769:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat split = (bounds[count - 1] + bounds[count])*0.5f; // use the medain as the split
  ^~~~~~~
cpBBTree.c:773:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBB a = bb, b = bb;
  ^~~~
cpBBTree.c:777:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int right = count;
  ^~~
cpBBTree.c: In function ‘cpBBTreeOptimize’:
cpBBTree.c:830:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBBTree *tree = (cpBBTree *)index;
  ^~~~~~~~
cpBBTree.c:834:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int count = cpBBTreeCount(tree);
  ^~~
cpBBTree.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpBody.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpBody.c:24:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpBody.c:24:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpBody.c:25:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpBody.c: In function ‘cpBodyInit’:
cpBody.c:47:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpComponentNode node = {NULL, NULL, 0.0f};
  ^~~~~~~~~~~~~~~
cpBody.c: In function ‘cpBodyUpdateVelocity’:
cpBody.c:237:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat w_limit = body->w_limit;
  ^~~~~~~
cpBody.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpCollision.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpCollision.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpCollision.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpCollision.c: In function ‘circle2circleQuery’:
cpCollision.c:36:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat dist = cpfsqrt(distsq);
  ^~~~~~~
cpCollision.c: In function ‘poly2poly’:
cpCollision.c:178:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat min2;
  ^~~~~~~
cpCollision.c: In function ‘seg2poly’:
cpCollision.c:231:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int mini = 0;
  ^~~
cpCollision.c:244:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int num = 0;
  ^~~
cpCollision.c: In function ‘circle2poly’:
cpCollision.c:301:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect n = planes[mini].n;
  ^~~~~~
cpCollision.c: In function ‘seg2seg’:
cpCollision.c:366:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  int num = 0;
  ^~~
cpCollision.c: In function ‘cpCollideShapes’:
cpCollision.c:420:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  collisionFunc cfunc = colfuncs[a->klass->type + b->klass->type*CP_NUM_SHAPES];
  ^~~~~~~~~~~~~
cpCollision.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpConstraint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpConstraint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpConstraint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpConstraint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpConstraint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpDampedRotarySpring.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpDampedRotarySpring.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpDampedRotarySpring.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpDampedRotarySpring.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpDampedRotarySpring.c: In function ‘preStep’:
cpDampedRotarySpring.c:44:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat j_spring = spring->springTorqueFunc((cpConstraint *)spring, a->a - b->a)*dt;
  ^~~~~~~
cpDampedRotarySpring.c: In function ‘applyImpulse’:
cpDampedRotarySpring.c:68:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat j_damp = w_damp*spring->iSum;
  ^~~~~~~
cpDampedRotarySpring.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpDampedSpring.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpDampedSpring.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpDampedSpring.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpDampedSpring.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpDampedSpring.c: In function ‘preStep’:
cpDampedSpring.c:39:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect delta = cpvsub(cpvadd(b->p, spring->r2), cpvadd(a->p, spring->r1));
  ^~~~~~
cpDampedSpring.c:43:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat k = k_scalar(a, b, spring->r1, spring->r2, spring->n);
  ^~~~~~~
cpDampedSpring.c:51:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat f_spring = spring->springForceFunc((cpConstraint *)spring, dist);
  ^~~~~~~
cpDampedSpring.c: In function ‘applyImpulse’:
cpDampedSpring.c:75:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat j_damp = v_damp*spring->nMass;
  ^~~~~~~
cpDampedSpring.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpGearJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpGearJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpGearJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpGearJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpGearJoint.c: In function ‘preStep’:
cpGearJoint.c:35:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat maxBias = joint->constraint.maxBias;
  ^~~~~~~
cpGearJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpGrooveJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpGrooveJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpGrooveJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpGrooveJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpGrooveJoint.c: In function ‘preStep’:
cpGrooveJoint.c:43:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat td = cpvcross(cpvadd(b->p, joint->r2), n);
  ^~~~~~~
cpGrooveJoint.c:60:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect delta = cpvsub(cpvadd(b->p, joint->r2), cpvadd(a->p, joint->r1));
  ^~~~~~
cpGrooveJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpHashSet.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpHashSet.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpHashSet.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
cpHashSet.c: In function ‘getUnusedBin’:
cpHashSet.c:137:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpHashSetBin *buffer = (cpHashSetBin *)cpcalloc(1, CP_BUFFER_BYTES);
   ^~~~~~~~~~~~
cpHashSet.c: In function ‘cpHashSetRemove’:
cpHashSet.c:198:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   void *elt = bin->elt;
   ^~~~
cpHashSet.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpPinJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpPinJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpPinJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpPinJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det_inv = 1.0f/det;
  ^~~~~~~
cpPinJoint.c: In function ‘preStep’:
cpPinJoint.c:34:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect delta = cpvsub(cpvadd(b->p, joint->r2), cpvadd(a->p, joint->r1));
  ^~~~~~
cpPinJoint.c:42:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat maxBias = joint->constraint.maxBias;
  ^~~~~~~
cpPinJoint.c: In function ‘cpPinJointInit’:
cpPinJoint.c:108:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpVect p1 = (a ? cpvadd(a->p, cpvrotate(anchr1, a->rot)) : anchr1);
  ^~~~~~
cpPinJoint.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
compiling cpPivotJoint.c
In file included from chipmunk.h:105,
                 from chipmunk_private.h:23,
                 from cpPivotJoint.c:22:
constraints/cpConstraint.h: In function ‘cpConstraintActivateBodies’:
constraints/cpConstraint.h:94:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpBody *b = constraint->b; if(b) cpBodyActivate(b);
  ^~~~~~
In file included from cpPivotJoint.c:22:
chipmunk_private.h: In function ‘cpPolyShapeContainsVertPartial’:
chipmunk_private.h:171:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
   cpFloat dist = cpSplittingPlaneCompare(planes[i], v);
   ^~~~~~~
In file included from cpPivotJoint.c:23:
constraints/util.h: In function ‘k_tensor’:
constraints/util.h:104:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat b_i_inv = b->i_inv;
  ^~~~~~~
constraints/util.h:112:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
  cpFloat det = k11*k22 - k12*k21;
  ^~~~~~~
constraints/util.h:115:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]