Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REG2.055/2.063] Issue 9279 - Static array return value implicitly converted to immutable dynamic array #4687

Merged
merged 1 commit into from
Jun 7, 2015

Conversation

9rnsr
Copy link
Contributor

@9rnsr 9rnsr commented May 29, 2015

https://issues.dlang.org/show_bug.cgi?id=9279

Implement more escape analysis.

@@ -258,6 +251,12 @@ bool checkEscapeRef(Scope *sc, Expression *e, bool gag)
::error(loc, format, s->toChars());
result = true;
}
void error(Loc loc, const char *format, Expression *e)
Copy link
Member

Choose a reason for hiding this comment

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

I'm a little concerned about adding yet another error function. How much uglier would it be without it?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I know someone said that we should not do both refactoring and regression fix in a PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

OK, I merged to error functions into one, by taking RootObject *o.

@9rnsr 9rnsr force-pushed the fix9279 branch 2 times, most recently from 3db6c17 to 1dcede3 Compare June 5, 2015 18:39
@WalterBright
Copy link
Member

Auto-merge toggled on

@WalterBright
Copy link
Member

once the magicport issue is solved...

@9rnsr
Copy link
Contributor Author

9rnsr commented Jun 7, 2015

@WalterBright Sorry, fixed ddmd issue.

WalterBright added a commit that referenced this pull request Jun 7, 2015
[REG2.055/2.063] Issue 9279 - Static array return value implicitly converted to immutable dynamic array
@WalterBright WalterBright merged commit 6d3fc41 into dlang:master Jun 7, 2015
@9rnsr 9rnsr deleted the fix9279 branch June 7, 2015 08:13
@CyberShadow
Copy link
Member

I think this PR broke building the docs:

../phobos/std/path.d(2362): Error: pure function 'std.path.absolutePath' cannot call impure function 'std.path.isAbsolute!string.isAbsolute'
../phobos/std/path.d(2362): Error: safe function 'std.path.absolutePath' cannot call system function 'std.path.isAbsolute!string.isAbsolute'
../phobos/std/path.d(2364): Error: pure function 'std.path.absolutePath' cannot call impure function 'std.path.isAbsolute!string.isAbsolute'
../phobos/std/path.d(2364): Error: safe function 'std.path.absolutePath' cannot call system function 'std.path.isAbsolute!string.isAbsolute'
../phobos/std/path.d(1545): Error: pure function 'std.path.buildNormalizedPath!char.buildNormalizedPath' cannot call impure function 'std.path.isAbsolute!(const(char)[]).isAbsolute'
../phobos/std/path.d(1545): Error: 'std.path.isAbsolute!(const(char)[]).isAbsolute' is not nothrow
../phobos/std/path.d(1512): Error: function 'std.path.buildNormalizedPath!char.buildNormalizedPath' is nothrow yet may throw
../phobos/std/datetime.d(28084): Error: template instance std.path.buildNormalizedPath!char error instantiating
make: *** [docs-prerelease.json] Error 1

@9rnsr
Copy link
Contributor Author

9rnsr commented Jun 7, 2015

@CyberShadow The problem is introduced by the Phobos change: dlang/phobos#3381

@CyberShadow
Copy link
Member

Thanks. (Strange, it was merged at 04:52 but my 05:00 build succeeded)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants