Drupal 7 error on PHP 7: Fatal error: Only variables can be passed by reference in C:\xampp\htdocs\xxx\sites\all\modules\commerce\modules\cart\commerce_cart.module on line 1344

A common error on Drupal 7 running on PHP 7: Fatal error: Only variables can be passed by reference in C:\xampp\htdocs\xxx\sites\all\modules\commerce\modules\cart\commerce_cart.module on line 1344


  1. Ensure Drupal is updated to latest stable version (as of posting: Drupal 7.56)
  2. Install Ctools dev version (as of posting: ctools 7.x-1.x-dev)
    This will fix a related error:

    Deprecated function: Methods with the same name as their class will not be constructors in a future version of PHP; ctools_context has a deprecated constructor in require_once() (line 113 of C:\xampp\htdocs\xxx\sites\all\modules\ctools\ctools.module).

  3. Apply patch for Drupal Commerce and Commerce Cart module as discussed here -
  4. You may also need to check a related patch for Drupal Commerce Shipment module as discussed here -