FIX: Large String Literals Can Cause Compiler Errors (156921)



The information in this article applies to:

  • Microsoft Visual J++ 1.0

This article was previously published under Q156921

SYMPTOMS

The Java Language Compiler (jvc) generates various compiler errors when a string literal exceeds 1000 characters on one line.

WORKAROUND

You can avoid having string literals that exceed 1000 characters by breaking your string literal into multiple lines and using the + (plus sign) operator to combine the strings.

STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. This problem has been fixed in Visual J++ 1.1.

MORE INFORMATION

Steps to Reproduce Behavior

The following sample code generates one or more of the following errors:
test.java(2162720,1071) : error J0010: Syntax error

test.java(2162720,1072) : error J0014: Expected ')'

test.java(2359392,0) : error J0029: Invalid character

test.java(2752554,2752554) : fatal error J0001: Internal Compiler Error
// test.java
void test {
  public static void main(String args[]) {
   System.out.println("****************************************************
*************************************... for about 1500 characters");
  }
}

// workaround.java
void workaround {
  public static void main(String args[]) {
    System.out.println("****************************************"+
       "********************************************************"+
       "**************************... for about 1500 characters");
  }

}

REFERENCES

For the latest Knowledge Base articles and other support information on Visual J++ and the SDK for Java, see the following page on the Microsoft Technical Support site:

Modification Type:MinorLast Reviewed:8/25/2005
Keywords:kbBug kbCommandLine kbfix kbVJ110fix KB156921 kbAudDeveloper