digitalmars.D - Think, this is an error
- M (48/48) Jul 09 2004 char []funk(char [][]s){
-
David Medlock
(15/21)
Jul 09 2004
char []funk(char [][]s){ int M[256]; char []ARRAY[256]; return ""; } Tends to chrash some times. It crashed about in 1 time of 8. It just crashes, I cant catch any exceptions. Actually, it was: char []funk(char [][]s){ int M[256]; char []ARRAY[256]; my code follows........ } and it crashes. Then I put char []funk(char [][]s){ int M[256]; char []ARRAY[256]; return ""; my code follows........ } It also crushes. Thend I put char []funk(char [][]s){ int M[256]; return ""; char []ARRAY[256]; my code follows........ } It didn't crash Then I put char []ARRAY[256]; char []funk(char [][]s){ int M[256]; return ""; my code follows........ } it worked, and then I put char []ARRAY[256]; char []funk(char [][]s){ int M[256]; my code follows........ } And it worked fine. I think, that if "char []ARRAY[256];" is inside a function, maybe the garbage collector misanderstands it. Isnt "char []ARRAY[256];" filled with crap at the beginning, and if the gbc looks at it, maybe it tries to free random arrays? M.
Jul 09 2004
M wrote:char []funk(char [][]s){ int M[256]; char []ARRAY[256]; return ""; }<snip> Not sure if it is an error, but this is the only part of syntax that didn't make sense to me. The D declaration should be: char[][256] ARRAY; (if not plz correct me). I don't know Walter allows the old C style to work also? Since D arrays are very un-like C arrays, and C libraries are already linkable, why allow it? I realize it is not syntactically ambigious(ie. allowing it doesn't require any overhead/lookahead) but it just doesn't 'fit' with the rest of the clean syntax. Just my .02. Thanks for the great job as always Walter.
Jul 09 2004