GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Improve error message when the first argument of `__state_state` isn'… by carusogabriel · Pull Request #5463 · php/php-src

Conversation

@carusogabriel

@carusogabriel carusogabriel commented Apr 26, 2020 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor

…t typed as array

Currently, the error message shown to the user is:

Argument 1 passed to A::__set_state() must be of the type string, array given

Which isn't necessary that. The problem is before that: the type that is actually wrong. With this patch,
the error message now is:

Type of first argument of Foo::__set_state() must be array

This is proposed separately from #4177 as I believe is an improvement, not a BC.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@carusogabriel carusogabriel added the Feature label Apr 26, 2020
@carusogabriel
Improve error message when the first argument of __state_state isn'…
2606d14
…t typed as array

Currently, the error message shown to the user is:

```
Argument 1 passed to A::__set_state() must be of the type string, array given
```

Which isn't necessary that. The problem is before that: the type that is actually wrong. With this patch,
the error message now is:

```
Type of first argument of Foo::__set_state() must be array
```
kocsismate
kocsismate reviewed Apr 26, 2020
View reviewed changes
Comment thread Zend/zend_API.c
&& ZEND_TYPE_IS_SET(fptr->common.arg_info[0].type)
&& ZEND_TYPE_FULL_MASK(fptr->common.arg_info[1].type) != MAY_BE_ARRAY
) {
zend_error(error_type, "Type of first argument of %s::__set_state() must be array", ZSTR_VAL(ce->name));

@kocsismate kocsismate Apr 26, 2020 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please use the %s::__set_state(): Argument #1 ($%s) must be of type array, %s given form?

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

carusogabriel reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

@carusogabriel carusogabriel Apr 26, 2020

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll adopt it in #4177, thanks!

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@nikic

nikic commented Apr 26, 2020

Copy link
Copy Markdown
Member

I don't understand why this is separate from #4177.

carusogabriel reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@carusogabriel carusogabriel closed this Apr 26, 2020
@carusogabriel
carusogabriel deleted the php8/improve-error-message branch April 26, 2020 12:50
@carusogabriel

carusogabriel commented Apr 26, 2020

Copy link
Copy Markdown
Contributor Author

@nikic Yeah, looks like this will need to go there. I'll keep #5462 separate as I believe it has the same intentions as #5441.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@kocsismate kocsismate kocsismate left review comments

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

Feature

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@carusogabriel @nikic @kocsismate
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.