[Issue 2568] New: Warning Inside Template Causes Instantiation Error
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Wed Jan 7 23:50:42 PST 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2568
Summary: Warning Inside Template Causes Instantiation Error
Product: D
Version: 1.039
Platform: PC
OS/Version: Windows
Status: NEW
Keywords: rejects-valid
Severity: minor
Priority: P2
Component: DMD
AssignedTo: bugzilla at digitalmars.com
ReportedBy: business3 at twistedpairgaming.com
-----------------
void foo(T)(T arg)
{
int i = 999;
byte b = i;
}
void main()
{
float f;
foo(f);
}
-----------------
The above code compiles correctly with warnings disabled. But when warnings are
enabled, an template instantiation error is generated:
-----------------
warning - main.d(4): Error: implicit conversion of expression (i) of type int
to byte can cause loss of data
main.d(10): template instance main_.foo!(float) error instantiating
-----------------
This might be related to #2567 and DMD's general treatment of warnings as
errors.
--
More information about the Digitalmars-d-bugs
mailing list