7699 – Cannot get frame pointer to in contract when compiling with -inline

D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 7699 - Cannot get frame pointer to in contract when compiling with -inline
Summary: Cannot get frame pointer to in contract when compiling with -inline
Status: RESOLVED FIXED
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D2
Hardware: All All
: P2 normal
Assignee: No Owner
URL:
Keywords: pull, rejects-valid
Depends on:
Blocks:
Reported: 2012年03月13日 04:25 UTC by Leandro Lucarella
Modified: 2015年06月09日 05:10 UTC (History)
2 users (show)

See Also:


Attachments
Add an attachment (proposed patch, testcase, etc.)

Note You need to log in before you can comment on or make changes to this issue.
Description Leandro Lucarella 2012年03月13日 04:25:46 UTC
Reduced testcase:
---
module test;
class P
{
 void f(int n) in {
 assert (n);
 } body { }
}
class D: P
{
 void f(int n) in { } body { }
}
---
Error (only when compiling with -inline):
---
test.d(5): Error: function test.D.f cannot get frame pointer to f
---
Not using -inline makes it compile. Removing the empty in {} contract in D, makes it compile.
Comment 2 github-bugzilla 2012年03月14日 15:35:25 UTC
Commit pushed to master at https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/201c43dc1c7e0ba66690098b703446682f93642e
Merge pull request #811 from donc/bug7699
Fix issue 7699 - Cannot get frame pointer to in contract when compiling ...


AltStyle によって変換されたページ (->オリジナル) /