﻿id	summary	reporter	owner	description	type	status	priority	component	version	resolution	keywords	cc
270	No NoCtor	pabuhr		"While attempting to create a CFA NoCtor, I hit a show-stopper bug. Something is generating bad C code that fails. Note, the use of sizeof(T) in a generic type, which may not have been tested before.
<<<
forall( T & | sized(T) )
	struct NoCtor {
		char storage[sizeof(T)];
	};
forall( T )
	void ctor( NoCtor(T) & t ) { (*(T *)t.storage){}; }
test1.cfa: In function '_X4ctorQ1_0_0_4__X16_operator_assignFBD0_BD0BD0__X12_constructorFv_BD0__X12_constructorFv_BD0BD0__X11_destructorFv_BD0__Fv_S6NoCtor_BD0___1':
test1.cfa:5:17: error: '_sizeof_Y12__T_generic_' undeclared (first use in this function)
    5 |   char storage[sizeof(T)];
      |                 ^~~~~~~~~~             
test1.cfa:5:17: note: each undeclared identifier is reported only once for each function it appears in
>>>"	defect	new	minor	cfa-cc	1.0			
