JDK-4060622 : javac doesn't complain about more parameters than the VM allows
  • Type: Bug
  • Component: tools
  • Sub-Component: javac
  • Affected Version: 1.1.3
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris_2.5
  • CPU: sparc
  • Submitted: 1997-06-23
  • Updated: 2000-02-02
  • Resolved: 2000-02-02
Related Reports
Duplicate :  
Description

Name: ngC57085			Date: 06/22/97



Java compiler (JDK1.1.3) permits to use constructor with 302 parametes.

Next test is successfilly compiled by compiler and cannot be executed 
by Java Vertual Machine.

> javac -d . clss20102.java
> java -verify javasoft.sqe.tests.lang.clss201.clss20102.clss20102
Can't find class javasoft.sqe.tests.lang.clss201.clss20102.clss20102
>

------------------------clss20102--------------
package javasoft.sqe.tests.lang.clss201.clss20102;

import java.io.PrintStream;
 
class clss20102_a {
int sum_arg;
clss20102_a(int x , int p00, int p01, int p02, int p03, int p04, int p05, int p06, int p07, int p08, int p09, int p10, int p11, int p12, int p13, int p14, int p15, int p16, int p17, int p18, int p19, int p20, int p21, int p22, int p23, int p24, int p25, int p26, int p27, int p28, int p29, int p30, int p31, int p32, int p33, int p34, int p35, int p36, int p37, int p38, int p39, int p40, int p41, int p42, int p43, int p44, int p45, int p46, int p47, int p48, int p49, int p50, int p51, int p52, int p53, int p54, int p55, int p56, int p57, int p58, int p59, int p60, int p61, int p62, int p63, int p64, int p65, int p66, int p67, int p68, int p69, int p70, int p71, int p72, int p73, int p74, int p75, int p76, int p77, int p78, int p79, int p80, int p81, int p82, int p83, int p84, int p85, int p86, int p87, int p88, int p89, int p90, int p91, int p92, int p93, int p94, int p95, int p96, int p97, int p98, int p99, int p100, int p101, int p102, int p103, int p104, int p105, int p106, int p107, int p108, int p109, int p110, int p111, int p112, int p113, int p114, int p115, int p116, int p117, int p118, int p119, int p120, int p121, int p122, int p123, int p124, int p125, int p126, int p127, int p128, int p129, int p130, int p131, int p132, int p133, int p134, int p135, int p136, int p137, int p138, int p139, int p140, int p141, int p142, int p143, int p144, int p145, int p146, int p147, int p148, int p149, int p150, int p151, int p152, int p153, int p154, int p155, int p156, int p157, int p158, int p159, int p160, int p161, int p162, int p163, int p164, int p165, int p166, int p167, int p168, int p169, int p170, int p171, int p172, int p173, int p174, int p175, int p176, int p177, int p178, int p179, int p180, int p181, int p182, int p183, int p184, int p185, int p186, int p187, int p188, int p189, int p190, int p191, int p192, int p193, int p194, int p195, int p196, int p197, int p198, int p199, int p200, int p201, int p202, int p203, int p204, int p205, int p206, int p207, int p208, int p209, int p210, int p211, int p21







2, int p213, int p214, int p215, int p216, int p217, int p218, int p219, int p220, int p221, int p222, int p223, int p224, int p225, int p226, int p227, int p228, int p229, int p230, int p231, int p232, int p233, int p234, int p235, int p236, int p237, int p238, int p239, int p240, int p241, int p242, int p243, int p244, int p245, int p246, int p247, int p248, int p249, int p250, int p251, int p252, int p253, int p254, int p255, int p256, int p257, int p258, int p259, int p260, int p261, int p262, int p263, int p264, int p265, int p266, int p267, int p268, int p269, int p270, int p271, int p272, int p273, int p274, int p275, int p276, int p277, int p278, int p279, int p280, int p281, int p282, int p283, int p284, int p285, int p286, int p287, int p288, int p289, int p290, int p291, int p292, int p293, int p294, int p295, int p296, int p297, int p298, int p299, int p300) {
   p00 += x;
   p01 += p00;
   p02 += p01;
   p03 += p02;
   p04 += p03;
   p05 += p04;
   p06 += p05;
   p07 += p06;
   p08 += p07;
   p09 += p08;
   p10 += p09;
   p11 += p10;
   p12 += p11;
   p13 += p12;
   p14 += p13;
   p15 += p14;
   p16 += p15;
   p17 += p16;
   p18 += p17;
   p19 += p18;
   p20 += p19;
   p21 += p20;
   p22 += p21;
   p23 += p22;
   p24 += p23;
   p25 += p24;
   p26 += p25;
   p27 += p26;
   p28 += p27;
   p29 += p28;
   p30 += p29;
   p31 += p30;
   p32 += p31;
   p33 += p32;
   p34 += p33;
   p35 += p34;
   p36 += p35;
   p37 += p36;
   p38 += p37;
   p39 += p38;
   p40 += p39;
   p41 += p40;
   p42 += p41;
   p43 += p42;
   p44 += p43;
   p45 += p44;
   p46 += p45;
   p47 += p46;
   p48 += p47;
   p49 += p48;
   p50 += p49;
   p51 += p50;
   p52 += p51;
   p53 += p52;
   p54 += p53;
   p55 += p54;
   p56 += p55;
   p57 += p56;
   p58 += p57;
   p59 += p58;
   p60 += p59;
   p61 += p60;
   p62 += p61;
   p63 += p62;
   p64 += p63;
   p65 += p64;
   p66 += p65;
   p67 += p66;
   p68 += p67;
   p69 += p68;
   p70 += p69;
   p71 += p70;
   p72 += p71;
   p73 += p72;
   p74 += p73;
   p75 += p74;
   p76 += p75;
   p77 += p76;
   p78 += p77;
   p79 += p78;
   p80 += p79;
   p81 += p80;
   p82 += p81;
   p83 += p82;
   p84 += p83;
   p85 += p84;
   p86 += p85;
   p87 += p86;
   p88 += p87;
   p89 += p88;
   p90 += p89;
   p91 += p90;
   p92 += p91;
   p93 += p92;
   p94 += p93;
   p95 += p94;
   p96 += p95;
   p97 += p96;
   p98 += p97;
   p99 += p98;
   p100 += p99;
   p101 += p100;
   p102 += p101;
   p103 += p102;
   p104 += p103;
   p105 += p104;
   p106 += p105;
   p107 += p106;
   p108 += p107;
   p109 += p108;
   p110 += p109;
   p111 += p110;
   p112 += p111;
   p113 += p112;
   p114 += p113;
   p115 += p114;
   p116 += p115;
   p117 += p116;
   p118 += p117;
   p119 += p118;
   p120 += p119;
   p121 += p120;
   p122 += p121;
   p123 += p122;
   p124 += p123;
   p125 += p124;
   p126 += p125;
   p127 += p126;
   p128 += p127;
   p129 += p128;
   p130 += p129;
   p131 += p130;
   p132 += p131;
   p133 += p132;
   p134 += p133;
   p135 += p134;
   p136 += p135;
   p137 += p136;
   p138 += p137;
   p139 += p138;
   p140 += p139;
   p141 += p140;
   p142 += p141;
   p143 += p142;
   p144 += p143;
   p145 += p144;
   p146 += p145;
   p147 += p146;
   p148 += p147;
   p149 += p148;
   p150 += p149;
   p151 += p150;
   p152 += p151;
   p153 += p152;
   p154 += p153;
   p155 += p154;
   p156 += p155;
   p157 += p156;
   p158 += p157;
   p159 += p158;
   p160 += p159;
   p161 += p160;
   p162 += p161;
   p163 += p162;
   p164 += p163;
   p165 += p164;
   p166 += p165;
   p167 += p166;
   p168 += p167;
   p169 += p168;
   p170 += p169;
   p171 += p170;
   p172 += p171;
   p173 += p172;
   p174 += p173;
   p175 += p174;
   p176 += p175;
   p177 += p176;
   p178 += p177;
   p179 += p178;
   p180 += p179;
   p181 += p180;
   p182 += p181;
   p183 += p182;
   p184 += p183;
   p185 += p184;
   p186 += p185;
   p187 += p186;
   p188 += p187;
   p189 += p188;
   p190 += p189;
   p191 += p190;
   p192 += p191;
   p193 += p192;
   p194 += p193;
   p195 += p194;
   p196 += p195;
   p197 += p196;
   p198 += p197;
   p199 += p198;
   p200 += p199;
   p201 += p200;
   p202 += p201;
   p203 += p202;
   p204 += p203;
   p205 += p204;
   p206 += p205;
   p207 += p206;
   p208 += p207;
   p209 += p208;
   p210 += p209;
   p211 += p210;
   p212 += p211;
   p213 += p212;
   p214 += p213;
   p215 += p214;
   p216 += p215;
   p217 += p216;
   p218 += p217;
   p219 += p218;
   p220 += p219;
   p221 += p220;
   p222 += p221;
   p223 += p222;
   p224 += p223;
   p225 += p224;
   p226 += p225;
   p227 += p226;
   p228 += p227;
   p229 += p228;
   p230 += p229;
   p231 += p230;
   p232 += p231;
   p233 += p232;
   p234 += p233;
   p235 += p234;
   p236 += p235;
   p237 += p236;
   p238 += p237;
   p239 += p238;
   p240 += p239;
   p241 += p240;
   p242 += p241;
   p243 += p242;
   p244 += p243;
   p245 += p244;
   p246 += p245;
   p247 += p246;
   p248 += p247;
   p249 += p248;
   p250 += p249;
   p251 += p250;
   p252 += p251;
   p253 += p252;
   p254 += p253;
   p255 += p254;
   p256 += p255;
   p257 += p256;
   p258 += p257;
   p259 += p258;
   p260 += p259;
   p261 += p260;
   p262 += p261;
   p263 += p262;
   p264 += p263;
   p265 += p264;
   p266 += p265;
   p267 += p266;
   p268 += p267;
   p269 += p268;
   p270 += p269;
   p271 += p270;
   p272 += p271;
   p273 += p272;
   p274 += p273;
   p275 += p274;
   p276 += p275;
   p277 += p276;
   p278 += p277;
   p279 += p278;
   p280 += p279;
   p281 += p280;
   p282 += p281;
   p283 += p282;
   p284 += p283;
   p285 += p284;
   p286 += p285;
   p287 += p286;
   p288 += p287;
   p289 += p288;
   p290 += p289;
   p291 += p290;
   p292 += p291;
   p293 += p292;
   p294 += p293;
   p295 += p294;
   p296 += p295;
   p297 += p296;
   p298 += p297;
   p299 += p298;
   p300 += p299;
   sum_arg = p300;
}

}

public class clss20102 {
  public static void main(String argv[])
  {
     System.exit(run(argv, System.out) + 95/*STATUS_TEMP*/);
  }
  public static int run(String argv[],PrintStream out) {
	int sum, correct_sum = 300*301/2;
  	clss20102_a x = new clss20102_a(0 , 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300);
	if (x.sum_arg != correct_sum) {
		out.println("Error: x.sum_arg != correct_sum : " + x.sum_arg + " != " + correct_sum);
		return 2;
	}
	return 0;
  }
}
--------------------------------------


======================================================================

Comments
EVALUATION Verfied problem in 1.2alpha2. javac is compiling programs into bytecodes that violate the restriction given at the top of page 92 of the JVMS. It should report an error. david.stoutamire@Eng 1997-12-05
05-12-1997