COMDAT error

Profile Anaysis via Digitalmars-d digitalmars-d at puremagic.com
Thu Jan 26 03:20:34 PST 2017


test1.obj : fatal error LNK1179: invalid or corrupt file: 
duplicate COMDAT 
'_D4main4mainFAAyaZ16__T3recVii1TAAiZ3recMFNfAAiZv (@safe void 
main.main(immutable(char)[][]).rec!(1, int[][]).rec(int[][]))'



code


import std.stdio;

import std.traits, std.meta, std.conv, std.string, std.algorithm;

void main(string[] argv)
{

	
	alias mods = AliasSeq!("[]","[1]","[2]","[3]","[4]");

	
	foreach(i, m1; mods)
		foreach(j, m2; mods)
			foreach(k, m3; mods)
			{

				enum s = "int"~m1~m2~m3~" arr;\n";
				//pragma(msg, s);
				mixin(s);				
				
				write(`(`,i,`,`,j,`,`,k,`) | `,(m1~m2~m3).replace("[]", 
"[-]"), ` | T = `, typeof(arr).stringof[3..$].replace(`[]`, 
`[-]`), ` | SA = `, isStaticArray!(typeof(arr)));

				write(" | ");

				// Writes out dimensions
				void rec(int N = 0, T)(T arr)
				{									
					
					auto x = arr[0];
					write(isStaticArray!(typeof(x)), ",");													
					static if (N < 2)
						rec!(N + 1)(x);
				}

				rec(arr);

				writeln();
			}

	


	getchar();	
}



More information about the Digitalmars-d mailing list