1259 – Inline build triggers an illegal error msg "Error: S() is not an lvalue"

D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 1259 - Inline build triggers an illegal error msg "Error: S() is not an lvalue"
Summary: Inline build triggers an illegal error msg "Error: S() is not an lvalue"
Status: RESOLVED FIXED
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D1 (retired)
Hardware: x86 Linux
: P2 normal
Assignee: Walter Bright
URL:
Keywords: rejects-valid
Depends on:
Blocks:
Reported: 2007年06月06日 08:07 UTC by Jari-Matti Mäkelä
Modified: 2014年02月16日 15:25 UTC (History)
0 users

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 Jari-Matti Mäkelä 2007年06月06日 08:07:32 UTC
Code:
struct S(T...) {
 S opMul_r(real r) { return S(); }
 S!(1) opDiv(R)(R r) { return S!(1)(); }
}
void main() {
 S!(1) a;
 S!(0) b;
 auto c = 1 * a / b;
}
---
dmd bug.d -> compiles fine
dmd -inline bug.d -> bug.d(2): Error: S() is not an lvalue
Comment 1 Jari-Matti Mäkelä 2007年06月26日 14:13:00 UTC
Fixed in 1.017


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