Problem/Motivation

Steps to reproduce:

  1. Install Rasmus' php7 vagrant machine, see http://akrabat.com/building-and-testing-php7
  2. Then clone drush and drupal.
  3. Set a password for mysql.
  4. Use drush to install drupal
vagrant@php7dev:~$ makephp 70
vagrant@php7dev:~/drupal$ php -v
PHP 7.0.0-dev (cli) (built: Aug  7 2015 13:56:53) (DEBUG)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0-dev, Copyright (c) 1998-2015 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies

vagrant@php7dev:~/drupal$ drush  si  --db-url=mysql://root:pass@localhost/drupal
You are about to DROP all tables in your 'drupal' database. Do you want to continue? (y/n): y
Starting Drupal installation. This takes a while. Consider  [ok]
using the --notify global option.
Error: Cannot access protected property Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema::$storage in Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema->getSchemaFromStorageDefinition() (line 212 of /home/vagrant/drupal/core/lib/Drupal/Core/Entity/Sql/SqlContentEntityStorageSchema.php).
Drush command terminated abnormally due to an unrecoverable [error]
error.

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Beta phase evaluation

Reference: https://www.drupal.org/core/beta-changes
Issue category Bug because this introduces a PHP7 regression.
Issue priority Major because PHP7 is not released yet, but we'd like the installation to run on it
CommentFileSizeAuthor
#4 assert_protected_property.txt386 bytesneclimdul
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

heddn created an issue. See original summary.

heddn’s picture

Priority: Normal » Major
stefan.r’s picture

neclimdul’s picture

FileSize
386 bytes

test case

neclimdul’s picture

heddn’s picture

I can reproduce the error using the above test case in my php7 build.

vagrant@php7dev:~$ php assert_protected_property.txt 

Fatal error: Uncaught Error: Cannot access protected property class1::$prop in /home/vagrant/foo/assert_protected_property.txt:8
Stack trace:
#0 /home/vagrant/foo/assert_protected_property.txt(21): class1->getThing(Object(class3))
#1 {main}
  thrown in /home/vagrant/foo/assert_protected_property.txt on line 8
bwoebi’s picture

neclimdul’s picture

Confirmed, rebuilt php locally and the test passes. Thanks bwoebi!