public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/23510] New: Confusing output for improperly terminated template structures
@ 2005-08-21 22:23 tron dot thomas at verizon dot net
  2005-08-21 22:25 ` [Bug c++/23510] " pinskia at gcc dot gnu dot org
  2005-09-14 15:36 ` bangerth at dealii dot org
  0 siblings, 2 replies; 3+ messages in thread
From: tron dot thomas at verizon dot net @ 2005-08-21 22:23 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 30506 bytes --]

Attempt to compile the following code using the comamnd 'g++ -g -Wall -ansi
-pedantic -c <Filename.cpp>':

#include <iostream>

template<unsigned int nFactor>
struct Factorial
{
	enum { nValue = nFactor * Factorial<nFactor - 1>::nValue };
}

template<>
struct Factorial<0>
{
	enum { nValue = 1 };
}

static const unsigned int FACTOR = 5;

int main()
{
	std::cout << "The factorial of " << FACTOR << " is " <<
		Factorial<FACTOR>::nValue << std::endl;
		
	return 0;
}

Results:
GCC will produce the following error output:

Factorial.cpp:9: error: expected unqualified-id before ‘template’
Factorial.cpp:6: error: template instantiation depth exceeds maximum of 500 (use
-ftemplate-depth-NN to increase the maximum) instantiating ‘struct Factorial<-495u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-494u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-493u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-492u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-491u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-490u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-489u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-488u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-487u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-486u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-485u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-484u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-483u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-482u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-481u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-480u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-479u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-478u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-477u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-476u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-475u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-474u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-473u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-472u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-471u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-470u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-469u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-468u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-467u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-466u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-465u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-464u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-463u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-462u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-461u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-460u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-459u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-458u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-457u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-456u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-455u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-454u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-453u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-452u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-451u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-450u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-449u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-448u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-447u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-446u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-445u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-444u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-443u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-442u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-441u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-440u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-439u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-438u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-437u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-436u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-435u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-434u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-433u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-432u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-431u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-430u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-429u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-428u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-427u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-426u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-425u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-424u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-423u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-422u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-421u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-420u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-419u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-418u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-417u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-416u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-415u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-414u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-413u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-412u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-411u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-410u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-409u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-408u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-407u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-406u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-405u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-404u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-403u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-402u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-401u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-400u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-399u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-398u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-397u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-396u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-395u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-394u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-393u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-392u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-391u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-390u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-389u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-388u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-387u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-386u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-385u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-384u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-383u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-382u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-381u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-380u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-379u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-378u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-377u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-376u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-375u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-374u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-373u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-372u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-371u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-370u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-369u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-368u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-367u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-366u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-365u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-364u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-363u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-362u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-361u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-360u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-359u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-358u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-357u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-356u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-355u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-354u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-353u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-352u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-351u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-350u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-349u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-348u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-347u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-346u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-345u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-344u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-343u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-342u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-341u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-340u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-339u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-338u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-337u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-336u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-335u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-334u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-333u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-332u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-331u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-330u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-329u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-328u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-327u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-326u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-325u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-324u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-323u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-322u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-321u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-320u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-319u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-318u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-317u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-316u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-315u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-314u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-313u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-312u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-311u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-310u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-309u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-308u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-307u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-306u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-305u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-304u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-303u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-302u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-301u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-300u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-299u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-298u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-297u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-296u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-295u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-294u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-293u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-292u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-291u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-290u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-289u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-288u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-287u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-286u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-285u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-284u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-283u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-282u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-281u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-280u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-279u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-278u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-277u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-276u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-275u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-274u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-273u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-272u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-271u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-270u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-269u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-268u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-267u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-266u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-265u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-264u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-263u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-262u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-261u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-260u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-259u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-258u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-257u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-256u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-255u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-254u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-253u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-252u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-251u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-250u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-249u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-248u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-247u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-246u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-245u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-244u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-243u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-242u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-241u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-240u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-239u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-238u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-237u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-236u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-235u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-234u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-233u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-232u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-231u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-230u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-229u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-228u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-227u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-226u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-225u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-224u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-223u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-222u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-221u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-220u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-219u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-218u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-217u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-216u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-215u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-214u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-213u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-212u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-211u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-210u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-209u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-208u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-207u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-206u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-205u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-204u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-203u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-202u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-201u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-200u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-199u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-198u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-197u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-196u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-195u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-194u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-193u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-192u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-191u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-190u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-189u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-188u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-187u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-186u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-185u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-184u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-183u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-182u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-181u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-180u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-179u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-178u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-177u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-176u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-175u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-174u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-173u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-172u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-171u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-170u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-169u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-168u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-167u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-166u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-165u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-164u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-163u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-162u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-161u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-160u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-159u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-158u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-157u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-156u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-155u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-154u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-153u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-152u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-151u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-150u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-149u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-148u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-147u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-146u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-145u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-144u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-143u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-142u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-141u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-140u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-139u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-138u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-137u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-136u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-135u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-134u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-133u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-132u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-131u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-130u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-129u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-128u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-127u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-126u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-125u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-124u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-123u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-122u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-121u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-120u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-119u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-118u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-117u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-116u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-115u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-114u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-113u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-112u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-111u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-110u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-109u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-108u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-107u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-106u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-105u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-104u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-103u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-102u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-101u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-100u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-99u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-98u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-97u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-96u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-95u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-94u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-93u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-92u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-91u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-90u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-89u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-88u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-87u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-86u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-85u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-84u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-83u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-82u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-81u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-80u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-79u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-78u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-77u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-76u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-75u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-74u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-73u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-72u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-71u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-70u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-69u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-68u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-67u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-66u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-65u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-64u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-63u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-62u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-61u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-60u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-59u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-58u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-57u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-56u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-55u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-54u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-53u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-52u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-51u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-50u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-49u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-48u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-47u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-46u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-45u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-44u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-43u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-42u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-41u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-40u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-39u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-38u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-37u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-36u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-35u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-34u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-33u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-32u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-31u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-30u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-29u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-28u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-27u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-26u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-25u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-24u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-23u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-22u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-21u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-20u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-19u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-18u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-17u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-16u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-15u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-14u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-13u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-12u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-11u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-10u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-9u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-8u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-7u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-6u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-5u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-4u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-3u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-2u>’
Factorial.cpp:6:   instantiated from ‘Factorial<-1u>’
Factorial.cpp:6:   instantiated from ‘Factorial<0u>’
Factorial.cpp:6:   instantiated from ‘Factorial<1u>’
Factorial.cpp:6:   instantiated from ‘Factorial<2u>’
Factorial.cpp:6:   instantiated from ‘Factorial<3u>’
Factorial.cpp:6:   instantiated from ‘Factorial<4u>’
Factorial.cpp:6:   instantiated from ‘Factorial<5u>’
Factorial.cpp:20:   instantiated from here

Factorial.cpp:6: error: incomplete type ‘Factorial<-495u>’ used in nested name
specifier

Expected:
This is a large amount of confusing output due to the simple fact that the
template structures are not terminated with semicolons.
Briefer output addressing the fundamental problem would better let a developer
know what is wrong with the code.

-- 
           Summary: Confusing output for improperly terminated template
                    structures
           Product: gcc
           Version: 4.0.1
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: tron dot thomas at verizon dot net
                CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23510


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug c++/23510] Confusing output for improperly terminated template structures
  2005-08-21 22:23 [Bug c++/23510] New: Confusing output for improperly terminated template structures tron dot thomas at verizon dot net
@ 2005-08-21 22:25 ` pinskia at gcc dot gnu dot org
  2005-09-14 15:36 ` bangerth at dealii dot org
  1 sibling, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-08-21 22:25 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-08-21 22:23 -------
I think this is a dup of bug 9335.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23510


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug c++/23510] Confusing output for improperly terminated template structures
  2005-08-21 22:23 [Bug c++/23510] New: Confusing output for improperly terminated template structures tron dot thomas at verizon dot net
  2005-08-21 22:25 ` [Bug c++/23510] " pinskia at gcc dot gnu dot org
@ 2005-09-14 15:36 ` bangerth at dealii dot org
  1 sibling, 0 replies; 3+ messages in thread
From: bangerth at dealii dot org @ 2005-09-14 15:36 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From bangerth at dealii dot org  2005-09-14 15:36 -------
Indeed a duplicate. 

*** This bug has been marked as a duplicate of 9335 ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |DUPLICATE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23510


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2005-09-14 15:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-08-21 22:23 [Bug c++/23510] New: Confusing output for improperly terminated template structures tron dot thomas at verizon dot net
2005-08-21 22:25 ` [Bug c++/23510] " pinskia at gcc dot gnu dot org
2005-09-14 15:36 ` bangerth at dealii dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).