[Issue 7087] New: Produce compiler diagnostic when escaping slice to local static array
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Dec 9 15:34:54 PST 2011
http://d.puremagic.com/issues/show_bug.cgi?id=7087
Summary: Produce compiler diagnostic when escaping slice to
local static array
Product: D
Version: unspecified
Platform: x86_64
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P2
Component: DMD
AssignedTo: nobody at puremagic.com
ReportedBy: acehreli at yahoo.com
--- Comment #0 from Ali Cehreli <acehreli at yahoo.com> 2011-12-09 15:34:52 PST ---
Although both are "escaping reference to local" data, only one of the following
functions produces a compilation error.
int * ret_elem_ptr()
{
int[3] a;
return &a[0]; // GOOD: compilation ERROR
}
int[] ret_slice()
{
int[3] a;
return a[]; // BAD: no help
}
void main()
{}
It would be nice to receive a compilation error when returning a slice as well.
This would catch bugs, because programmers rely on slices' keeping their data
alive in most situation. Unfortunately that's not the case here.
Ali
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list