-
Bug
-
Resolution: Won't Fix
-
P4
-
None
-
1.2.0, 1.2.2
-
x86
-
windows_95, windows_98, windows_nt
.vecmath.Point3f;
import java.util.Observer;
import java.util.Observable;
import java.util.ArrayList;
import org.w3c.dom.*;
//import com.ibm.xml.dom.*;
/*import from local packages: */
import kernel.shapes.Shape;
import kernel.bricks.ControlPoint;
import kernel.bricks.Face;
public class Brick extends Shape {
protected Shape3D shape = new Shape3D();
protected final static int numberOfFaces = 6;
public final static int patchDegree = 3;
protected Face[] faces = new Face[numberOfFaces];
protected ControlPoint[][][] controlPoints;
public Brick (Locale locale, Canvas3D canvas, double size) {
vertices = new ArrayList((patchDegree+1)*(patchDegree+1)*(patchDegree+1) -
(patchDegree-1)*(patchDegree-1)*(patchDegree-1));
controlPoints = new
ControlPoint[patchDegree+1][patchDegree+1][patchDegree+1];
representation = new Group();
ControlPoint[][] tmpControlPointArray = new
ControlPoint[patchDegree+1][patchDegree+1];
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
for (int k=0; k<=patchDegree; k++)
if (this instanceof TransformableBrick)
controlPoints[i][j][k] = new MovableControlPoint(locale, canvas, i,
j, k,
size*(-1.0 +
2.0*i/(patchDegree)),
size*(-1.0 +
2.0*j/(patchDegree)),
size*(-1.0 +
2.0*k/(patchDegree)),
size/15
);
else
controlPoints[i][j][k] = new ControlPoint(locale, canvas, i, j, k,
size*(-1.0 +
2.0*i/(patchDegree)),
size*(-1.0 +
2.0*j/(patchDegree)),
size*(-1.0 +
2.0*k/(patchDegree)),
size/15
);
// erase the inner control points: (we do not need them)
for (int i=1; i<patchDegree; i++)
for (int j=1; j<patchDegree; j++)
for (int k=1; k<patchDegree; k++)
controlPoints[i][j][k] = null;
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
for (int k=0; k<=patchDegree; k++)
if (controlPoints[i][j][k] != null) {
representation.addChild(controlPoints[i][j][k].getSceneGraphRepresentation());
vertices.add(controlPoints[i][j][k].getCoordinates());
}
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[i][j][0];
faces[0] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[i][j][patchDegree];
faces[1] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[i][0][j];
faces[2] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[i][patchDegree][j];
faces[3] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[0][i][j];
faces[4] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[patchDegree][i][j];
faces[5] = new Face(tmpControlPointArray);
for (int i=0; i<numberOfFaces; i++)
representation.addChild(faces[i].getSceneGraphRepresentation());
}
public String getXMLRepresentation (int indentLevel) {
StringBuffer sb = new StringBuffer();
String indentString = "";
for (int i=0; i<indentLevel; i++)
indentString = indentString + "\t";
sb.append(indentString+"<Brick kind=\"interpolated\"
degree=\""+patchDegree+"\">\n");
/*
for (int i=0; i<numberOfFaces; i++)
sb.append(faces[i].getXMLRepresentation(indentLevel+1));
*/
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
for (int k=0; k<=patchDegree; k++)
if (controlPoints[i][j][k] != null)
sb.append(controlPoints[i][j][k].getXMLRepresentation(indentLevel+1));
sb.append(indentString+"</Brick>\n");
return sb.toString();
}
/* It is just a quick hack. The function is to be implemented properly later*/
public void initializeFromXML (org.w3c.dom.Node node_) {
Document document = (Document) node_;
Element root = document.getDocumentElement();
System.out.println(root.getTagName());
System.out.println(root.getAttributeNode("kind").getValue());
System.out.println(root.getAttributeNode("degree").getValue());
NodeList nodeList = root.getChildNodes();
int size = nodeList.getLength();
for (int i=0; i<size; i++) {
org.w3c.dom.Node node = nodeList.item(i); // node = control point
representation
//System.out.println(node.getClass().getName());
if (node instanceof Element) {
Element element = (Element) node;
//System.out.println("x_index=\t"+element.getAttribute("x_index"));
//System.out.println("y_index=\t"+element.getAttribute("y_index"));
//System.out.println("z_index=\t"+element.getAttribute("z_index"));
//System.out.println("x=\t"+element.getAttribute("x"));
//System.out.println("y=\t"+element.getAttribute("y"));
//System.out.println("z=\t"+element.getAttribute("z"));
int ii = Integer.parseInt(element.getAttribute("x_index"));
int jj = Integer.parseInt(element.getAttribute("y_index"));
int kk = Integer.parseInt(element.getAttribute("z_index"));
double xx = Double.parseDouble(element.getAttribute("x"));
double yy = Double.parseDouble(element.getAttribute("y"));
double zz = Double.parseDouble(element.getAttribute("z"));
//controlPoints[ii][jj][kk].set(xx, yy, zz);
controlPoints[ii][jj][kk].notifyObservers();
}
}
}
/*
public String toString() {
StringBuffer sb = new StringBuffer();
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
for (int k=0; k<=patchDegree; k++)
if (controlPoints[i][j][k] != null)
sb.append("("+i+", "+j+",
"+k+")\t"+controlPoints[i][j][k].getCoordinates().toString()+"\n");
return sb.toString();
}
*/
}
(Review ID: 100521)
======================================================================
Name: skT88420 Date: 07/12/99
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'engine/MoveGeneration.bitBlackMoves (I)Lengine/MoveList;': Interpreting method.
Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cgi
code for this method:
public static final MoveList bitBlackMoves(int flags) {
// try {
moves.index = 0;
long piece = 0;
long board = 0;
long promotions = 0;
// black pawn moves
piece = BitBoards.blackPawns;
int fromsq = 0;
int sq = 0;
int sq2 = 0;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bPawnCaptures(fromsq);
// capture promotions
promotions = board & BitBoards.RANK1;
while(promotions != 0) {
sq = BitBoards.firstOne(promotions);
promotions ^= (one << sq);
addPromote(PBP,fromsq, sq);
}
board &= ~BitBoards.RANK1;
// en passent
if((BitBoards.bpawnAttacks[fromsq] & Engine.passentTarget[Engine.moves]) != 0) {
sq2 = BitBoards.firstOne(Engine.passentTarget[Engine.moves]);
moves.add(fromsq,sq2,0,PBP,Board.squares[sq2+8].piece,CAPTURE);
}
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBP,Board.squares[sq].piece,CAPTURE);
}
board = BitBoards.bpawnMoves[fromsq];
if((BitBoards.mask[fromsq] & BitBoards.RANK7) != 0) {
if((BitBoards.mask[fromsq-8] & BitBoards.allPieces) == 0 && (BitBoards.mask[fromsq-16] & BitBoards.allPieces) == 0) {
board |= BitBoards.mask[fromsq-16];
}
}
board &= ~BitBoards.allPieces;
// move promotions
promotions = board & BitBoards.RANK1;
while(promotions != 0) {
sq = BitBoards.firstOne(promotions);
promotions ^= (one << sq);
addPromote(PBP,fromsq, sq);
}
board &= ~BitBoards.RANK1;
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBP,-1,0);
}
}
// black knight moves
piece = BitBoards.blackKnights;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bKnightCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBN,Board.squares[sq].piece,CAPTURE);
}
board = knightMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBN,-1,0);
}
}
// black bishop moves
piece = BitBoards.blackBishops;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bBishopCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBB,Board.squares[sq].piece,CAPTURE);
}
board = bishopMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBB,-1,0);
}
}
// black rook moves
piece = BitBoards.blackRooks;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bRookCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBR,Board.squares[sq].piece,CAPTURE);
}
board = rookMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBR,-1,0);
}
}
// black queen moves
piece = BitBoards.blackQueens;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bQueenCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBQ,Board.squares[sq].piece,CAPTURE);
}
board = queenMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBQ,-1,0);
}
}
// black king moves
fromsq = BitBoards.bksq;
if(Board.pieces[BK].square == E8 && Board.pieces[BK].moved == 0 && Board.pieces[BKR].moved == 0 && !Board.pieces[BKR].taken) {
if((BitBoards.allPieces & BitBoards.mask[F8]) == 0 &&
(BitBoards.allPieces & BitBoards.mask[G8]) == 0) {
if(!blackInCheck(E8) &&
!blackInCheck(F8) &&
!blackInCheck(G8)) {
moves.add(E8,G8,40+history_h[E8][G8],PBK,-1,BCKS);
}
}
}
if(Board.pieces[BK].square == E8 && Board.pieces[BK].moved == 0 && Board.pieces[BQR].moved == 0 && !Board.pieces[BQR].taken) {
if((BitBoards.allPieces & BitBoards.mask[D8]) == 0 &&
(BitBoards.allPieces & BitBoards.mask[C8]) == 0 &&
(BitBoards.allPieces & BitBoards.mask[B8]) == 0) {
if(!blackInCheck(E8) &&
!blackInCheck(D8) &&
!blackInCheck(C8)) {
moves.add(E8,C8,40+history_h[E8][C8],PBK,-1,BCQS);
}
}
}
board = bKingCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBK,Board.squares[sq].piece,CAPTURE);
}
board = kingMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBK,-1,0);
}
return moves;
// }
// catch(Exception e) {
// e.printStackTrace();
// Board.print();
// for(int t = 0;t < Search.eTotal;t++) {
// System.out.print(Search.current[t] + " ");
// }
// System.exit(0);
// }
// return null;
}
(Review ID: 85485)
======================================================================
Name: krT82822 Date: 11/02/99
(see 4196473, 4253405, 4253789, 4270318) --eval1127@eng, 11/2/99
java version "1.2.2"
Classic VM (build JDK-1.2.2-W, native threads, symcjit)
JAVA SOURCE:
import java.awt.*;
public class RootApplet extends javax.swing.JApplet {
int number;
public void init() {
number = 225;
}
public void paint(Graphics screen) {
super.paint (screen);
Graphics2D screen2D = (Graphics2D) screen;
screen2D.drawString("The square root of " +
number +
" is " +
Math.sqrt(number), 5, 50);
}
}
NO ERRORS ON javac COMPILATION.
EXACT TEXT OF ERROR MESSAGES UPON EXECUTION OF appletviewer:
"D:\j24wrk>appletviewer RootApplet.html
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'java/util/Hashtable.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Obje
ct;': Interpreting method.
Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cg
i"
NOTE: appletviewer displays program output successfully.
(Review ID: 97329)
======================================================================
Name: rlT66838 Date: 11/24/99
java version "1.2.2"
Classic VM (build JDK-1.2.2-W, native threads, symcjit)
I received this message when I ran my program:
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'LifeCanvas.paint (Ljava/awt/Graphics;)V': Interpreting method.
Please report this error in detail to
http://java.sun.com/cgi-bin/bugreport.cgi
Here is the paint method in my LifeCanvas class:
public void paint(Graphics g)
{
int[] x=new int[3];
int[] y=new int[3];
g.setColor(Color.blue);
for(int k=0;k<cells.size();k++)
{
Point p=(Point)cells.elementAt(k);
int j=p.x;
int i=p.y;
if(j>=0 && j<=38 && i>=0 && i<=19)
{
x[0]=j*12;
x[1]=j*12+9;
x[2]=j*12+18;
if((i+j)%2==0)
{
y[0]=18*i;
y[1]=18*i+15;
y[2]=18*i;
}
else
{
y[0]=18*i+15;
y[1]=18*i;
y[2]=18*i+15;
}
g.fillPolygon(x,y,3);
}
}
g.setColor(Color.red);
for(int i=0;i<20;i++)
for(int j=0;j<39;j++)
{
x[0]=j*12;
x[1]=j*12+9;
x[2]=j*12+18;
if((i+j)%2==0)
{
y[0]=18*i;
y[1]=18*i+15;
y[2]=18*i;
}
else
{
y[0]=18*i+15;
y[1]=18*i;
y[2]=18*i+15;
}
g.drawPolygon(x,y,3);
}
}
(Review ID: 98253)
======================================================================
Name: krT82822 Date: 12/26/99
java version "1.2.2"
Classic VM (build JDK-1.2.2-001, native threads, symcjit)
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'nwcheck/types/IP.<init> (Ljava/lang/String;)V': Interpreting method.
Please report this error in detail to http://java.sun.com/cgi-
bin/bugreport.cgi
source code :
package nwcheck.types;
import java.io.StreamTokenizer;
import java.io.StringReader;
import java.io.IOException;
public class IP
{
private static final long BIT31 = -2147483648;
private static final long[] maskIDHote =
{
16777215, 65535, 255, 0, 0
};
private static final String[] libellesClasses =
{
"class A","class B","class C","multicast","undefined"
};
private byte classe = 0;
private long adresse;
public IP(String s) throws IOException
{
byte etat = 0;
long v = 0;
adresse = 0;
StreamTokenizer analyseur = new StreamTokenizer(new StringReader
(s));
analyseur.resetSyntax();
analyseur.whitespaceChars(0,32);
analyseur.wordChars('0','9');
while (etat != 3)
{
switch (etat)
{
case 0:
{
switch (analyseur.nextToken())
{
case StreamTokenizer.TT_WORD:
{
if ((analyseur.nval >=
0) && (analyseur.nval <= 255))
{
adresse =
adresse << 8 + Long.parseLong(analyseur.sval);
etat = 1;
}
else
etat = 2;
break;
}
default:
etat = 2;
}
break;
}
case 1:
{
switch (analyseur.nextToken())
{
case StreamTokenizer.TT_EOF:
{
etat = 3;
break;
}
case '.':
{
etat = 0;
break;
}
default:
etat = 2;
}
break;
}
case 2:
throw new IOException("Adresse IP non
reconnue");
}
}
v = BIT31;
while ((classe < 4) && ((adresse & v) != 0))
{
classe++;
v = v >> 1;
}
}
public String image()
{
StringBuffer image = new StringBuffer();
long v = adresse;
image.insert(0,v % 256);
v /= 256;
while (v > 0)
{
image.insert(0,'.');
image.insert(0,v % 256);
v /= 256;
}
return image.toString();
}
public boolean estReseau()
{
return ((adresse & maskIDHote[classe]) == 0);
}
public boolean egalite(IP adr)
{
return (adresse == adr.adresse);
}
public boolean egaliteReseau(IP adr)
{
return ((adresse & (~maskIDHote[classe])) ==
(adr.adresse & (~maskIDHote[adr.classe])));
}
public boolean egaliteSousReseau(IP adr,IP mask)
{
return ((adresse & mask.adresse) ==
(adr.adresse & mask.adresse));
}
public String libelleClasse()
{
return libellesClasses[classe];
}
}
(Review ID: 99341)
======================================================================
Name: krT82822 Date: 01/06/2000
java version "1.2.2"
Classic VM (build JDK-1.2.2-001, native threads, symcjit)
The following not easily reproducible error occurs when calling an entity bean
from a stateful session bean, each in a separate container-managed transaction:
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'com/sun/corba/ee/internal/iiop/CDRInputStream.start_block ()V': Interpreting
method.
Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cg
i
(Review ID: 99664)
======================================================================
Name: krT82822 Date: 01/16/2000
java version "1.2"
Classic VM (build JDK-1.2-V, native threads)
When running a simple character shifting the error occurs, X[] is an char array
with the alphbet.
public static String shiftby(String data, int x) {
char temp;
String newdata = "";
int newvalue = 0;
for(int i=0; i < data.length(); i++) {
temp = data.charAt(i);
newvalue = chvalue(temp);
newvalue -= x;
if(newvalue < 0) {
newvalue += 25;
}
newdata += X[newvalue];
}
return newdata;
}
(Review ID: 100013)
======================================================================
Name: krT82822 Date: 01/30/2000
bash.exe: warning: could not find /tmp, please create!
bash-2.02$ java -version
java version "1.2.2"
Classic VM (build JDK-1.2.2-001, native threads, symcjit)
bash-2.02$ java -fullversion
java full version "JDK-1.2.2-001"
bash-2.02$
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'kernel/bricks/Brick.<init>
(Ljavax/media/j3d/Locale;Ljavax/media/j3d/Canvas3D;D)V': Interpreting method.
Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cgi
My program causes an error (see above). I think the error could be caused
by following construct:
if (this instanceof ...) {
...
}
(The error arouse after I had inserted this line)
----------------------------Source code----------------------------------
package kernel.bricks;
import javax.media.j3d.*;
import javax.vecmath.Color3f;
//import javax
import java.util.Observer;
import java.util.Observable;
import java.util.ArrayList;
import org.w3c.dom.*;
//import com.ibm.xml.dom.*;
/*import from local packages: */
import kernel.shapes.Shape;
import kernel.bricks.ControlPoint;
import kernel.bricks.Face;
public class Brick extends Shape {
protected Shape3D shape = new Shape3D();
protected final static int numberOfFaces = 6;
public final static int patchDegree = 3;
protected Face[] faces = new Face[numberOfFaces];
protected ControlPoint[][][] controlPoints;
public Brick (Locale locale, Canvas3D canvas, double size) {
vertices = new ArrayList((patchDegree+1)*(patchDegree+1)*(patchDegree+1) -
(patchDegree-1)*(patchDegree-1)*(patchDegree-1));
controlPoints = new
ControlPoint[patchDegree+1][patchDegree+1][patchDegree+1];
representation = new Group();
ControlPoint[][] tmpControlPointArray = new
ControlPoint[patchDegree+1][patchDegree+1];
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
for (int k=0; k<=patchDegree; k++)
if (this instanceof TransformableBrick)
controlPoints[i][j][k] = new MovableControlPoint(locale, canvas, i,
j, k,
size*(-1.0 +
2.0*i/(patchDegree)),
size*(-1.0 +
2.0*j/(patchDegree)),
size*(-1.0 +
2.0*k/(patchDegree)),
size/15
);
else
controlPoints[i][j][k] = new ControlPoint(locale, canvas, i, j, k,
size*(-1.0 +
2.0*i/(patchDegree)),
size*(-1.0 +
2.0*j/(patchDegree)),
size*(-1.0 +
2.0*k/(patchDegree)),
size/15
);
// erase the inner control points: (we do not need them)
for (int i=1; i<patchDegree; i++)
for (int j=1; j<patchDegree; j++)
for (int k=1; k<patchDegree; k++)
controlPoints[i][j][k] = null;
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
for (int k=0; k<=patchDegree; k++)
if (controlPoints[i][j][k] != null) {
representation.addChild(controlPoints[i][j][k].getSceneGraphRepresentation());
vertices.add(controlPoints[i][j][k].getCoordinates());
}
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[i][j][0];
faces[0] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[i][j][patchDegree];
faces[1] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[i][0][j];
faces[2] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[i][patchDegree][j];
faces[3] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[0][i][j];
faces[4] = new Face(tmpControlPointArray);
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
tmpControlPointArray[i][j] = controlPoints[patchDegree][i][j];
faces[5] = new Face(tmpControlPointArray);
for (int i=0; i<numberOfFaces; i++)
representation.addChild(faces[i].getSceneGraphRepresentation());
}
public String getXMLRepresentation (int indentLevel) {
StringBuffer sb = new StringBuffer();
String indentString = "";
for (int i=0; i<indentLevel; i++)
indentString = indentString + "\t";
sb.append(indentString+"<Brick kind=\"interpolated\"
degree=\""+patchDegree+"\">\n");
/*
for (int i=0; i<numberOfFaces; i++)
sb.append(faces[i].getXMLRepresentation(indentLevel+1));
*/
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
for (int k=0; k<=patchDegree; k++)
if (controlPoints[i][j][k] != null)
sb.append(controlPoints[i][j][k].getXMLRepresentation(indentLevel+1));
sb.append(indentString+"</Brick>\n");
return sb.toString();
}
/* It is just a quick hack. The function is to be implemented properly later*/
public void initializeFromXML (org.w3c.dom.Node node_) {
Document document = (Document) node_;
Element root = document.getDocumentElement();
System.out.println(root.getTagName());
System.out.println(root.getAttributeNode("kind").getValue());
System.out.println(root.getAttributeNode("degree").getValue());
NodeList nodeList = root.getChildNodes();
int size = nodeList.getLength();
for (int i=0; i<size; i++) {
org.w3c.dom.Node node = nodeList.item(i); // node = control point
representation
//System.out.println(node.getClass().getName());
if (node instanceof Element) {
Element element = (Element) node;
//System.out.println("x_index=\t"+element.getAttribute("x_index"));
//System.out.println("y_index=\t"+element.getAttribute("y_index"));
//System.out.println("z_index=\t"+element.getAttribute("z_index"));
//System.out.println("x=\t"+element.getAttribute("x"));
//System.out.println("y=\t"+element.getAttribute("y"));
//System.out.println("z=\t"+element.getAttribute("z"));
int ii = Integer.parseInt(element.getAttribute("x_index"));
int jj = Integer.parseInt(element.getAttribute("y_index"));
int kk = Integer.parseInt(element.getAttribute("z_index"));
double xx = Double.parseDouble(element.getAttribute("x"));
double yy = Double.parseDouble(element.getAttribute("y"));
double zz = Double.parseDouble(element.getAttribute("z"));
//controlPoints[ii][jj][kk].set(xx, yy, zz);
controlPoints[ii][jj][kk].notifyObservers();
}
}
}
/*
public String toString() {
StringBuffer sb = new StringBuffer();
for (int i=0; i<=patchDegree; i++)
for (int j=0; j<=patchDegree; j++)
for (int k=0; k<=patchDegree; k++)
if (controlPoints[i][j][k] != null)
sb.append("("+i+", "+j+",
"+k+")\t"+controlPoints[i][j][k].getCoordinates().toString()+"\n");
return sb.toString();
}
*/
}
(Review ID: 100521)
======================================================================
Name: skT88420 Date: 07/12/99
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'engine/MoveGeneration.bitBlackMoves (I)Lengine/MoveList;': Interpreting method.
Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cgi
code for this method:
public static final MoveList bitBlackMoves(int flags) {
// try {
moves.index = 0;
long piece = 0;
long board = 0;
long promotions = 0;
// black pawn moves
piece = BitBoards.blackPawns;
int fromsq = 0;
int sq = 0;
int sq2 = 0;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bPawnCaptures(fromsq);
// capture promotions
promotions = board & BitBoards.RANK1;
while(promotions != 0) {
sq = BitBoards.firstOne(promotions);
promotions ^= (one << sq);
addPromote(PBP,fromsq, sq);
}
board &= ~BitBoards.RANK1;
// en passent
if((BitBoards.bpawnAttacks[fromsq] & Engine.passentTarget[Engine.moves]) != 0) {
sq2 = BitBoards.firstOne(Engine.passentTarget[Engine.moves]);
moves.add(fromsq,sq2,0,PBP,Board.squares[sq2+8].piece,CAPTURE);
}
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBP,Board.squares[sq].piece,CAPTURE);
}
board = BitBoards.bpawnMoves[fromsq];
if((BitBoards.mask[fromsq] & BitBoards.RANK7) != 0) {
if((BitBoards.mask[fromsq-8] & BitBoards.allPieces) == 0 && (BitBoards.mask[fromsq-16] & BitBoards.allPieces) == 0) {
board |= BitBoards.mask[fromsq-16];
}
}
board &= ~BitBoards.allPieces;
// move promotions
promotions = board & BitBoards.RANK1;
while(promotions != 0) {
sq = BitBoards.firstOne(promotions);
promotions ^= (one << sq);
addPromote(PBP,fromsq, sq);
}
board &= ~BitBoards.RANK1;
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBP,-1,0);
}
}
// black knight moves
piece = BitBoards.blackKnights;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bKnightCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBN,Board.squares[sq].piece,CAPTURE);
}
board = knightMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBN,-1,0);
}
}
// black bishop moves
piece = BitBoards.blackBishops;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bBishopCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBB,Board.squares[sq].piece,CAPTURE);
}
board = bishopMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBB,-1,0);
}
}
// black rook moves
piece = BitBoards.blackRooks;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bRookCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBR,Board.squares[sq].piece,CAPTURE);
}
board = rookMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBR,-1,0);
}
}
// black queen moves
piece = BitBoards.blackQueens;
while(piece != 0) {
fromsq = BitBoards.firstOne(piece);
piece &= BitBoards.clear_mask[fromsq];
board = bQueenCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBQ,Board.squares[sq].piece,CAPTURE);
}
board = queenMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBQ,-1,0);
}
}
// black king moves
fromsq = BitBoards.bksq;
if(Board.pieces[BK].square == E8 && Board.pieces[BK].moved == 0 && Board.pieces[BKR].moved == 0 && !Board.pieces[BKR].taken) {
if((BitBoards.allPieces & BitBoards.mask[F8]) == 0 &&
(BitBoards.allPieces & BitBoards.mask[G8]) == 0) {
if(!blackInCheck(E8) &&
!blackInCheck(F8) &&
!blackInCheck(G8)) {
moves.add(E8,G8,40+history_h[E8][G8],PBK,-1,BCKS);
}
}
}
if(Board.pieces[BK].square == E8 && Board.pieces[BK].moved == 0 && Board.pieces[BQR].moved == 0 && !Board.pieces[BQR].taken) {
if((BitBoards.allPieces & BitBoards.mask[D8]) == 0 &&
(BitBoards.allPieces & BitBoards.mask[C8]) == 0 &&
(BitBoards.allPieces & BitBoards.mask[B8]) == 0) {
if(!blackInCheck(E8) &&
!blackInCheck(D8) &&
!blackInCheck(C8)) {
moves.add(E8,C8,40+history_h[E8][C8],PBK,-1,BCQS);
}
}
}
board = bKingCaptures(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,Board.pieces[pieceOnSquare(fromsq)].value + Board.squares[sq].value,PBK,Board.squares[sq].piece,CAPTURE);
}
board = kingMoves(fromsq);
while(board != 0) {
sq = BitBoards.firstOne(board);
board ^= (one << sq);
moves.add(fromsq,sq,history_h[fromsq][sq],PBK,-1,0);
}
return moves;
// }
// catch(Exception e) {
// e.printStackTrace();
// Board.print();
// for(int t = 0;t < Search.eTotal;t++) {
// System.out.print(Search.current[t] + " ");
// }
// System.exit(0);
// }
// return null;
}
(Review ID: 85485)
======================================================================
Name: krT82822 Date: 11/02/99
(see 4196473, 4253405, 4253789, 4270318) --eval1127@eng, 11/2/99
java version "1.2.2"
Classic VM (build JDK-1.2.2-W, native threads, symcjit)
JAVA SOURCE:
import java.awt.*;
public class RootApplet extends javax.swing.JApplet {
int number;
public void init() {
number = 225;
}
public void paint(Graphics screen) {
super.paint (screen);
Graphics2D screen2D = (Graphics2D) screen;
screen2D.drawString("The square root of " +
number +
" is " +
Math.sqrt(number), 5, 50);
}
}
NO ERRORS ON javac COMPILATION.
EXACT TEXT OF ERROR MESSAGES UPON EXECUTION OF appletviewer:
"D:\j24wrk>appletviewer RootApplet.html
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'java/util/Hashtable.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Obje
ct;': Interpreting method.
Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cg
i"
NOTE: appletviewer displays program output successfully.
(Review ID: 97329)
======================================================================
Name: rlT66838 Date: 11/24/99
java version "1.2.2"
Classic VM (build JDK-1.2.2-W, native threads, symcjit)
I received this message when I ran my program:
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'LifeCanvas.paint (Ljava/awt/Graphics;)V': Interpreting method.
Please report this error in detail to
http://java.sun.com/cgi-bin/bugreport.cgi
Here is the paint method in my LifeCanvas class:
public void paint(Graphics g)
{
int[] x=new int[3];
int[] y=new int[3];
g.setColor(Color.blue);
for(int k=0;k<cells.size();k++)
{
Point p=(Point)cells.elementAt(k);
int j=p.x;
int i=p.y;
if(j>=0 && j<=38 && i>=0 && i<=19)
{
x[0]=j*12;
x[1]=j*12+9;
x[2]=j*12+18;
if((i+j)%2==0)
{
y[0]=18*i;
y[1]=18*i+15;
y[2]=18*i;
}
else
{
y[0]=18*i+15;
y[1]=18*i;
y[2]=18*i+15;
}
g.fillPolygon(x,y,3);
}
}
g.setColor(Color.red);
for(int i=0;i<20;i++)
for(int j=0;j<39;j++)
{
x[0]=j*12;
x[1]=j*12+9;
x[2]=j*12+18;
if((i+j)%2==0)
{
y[0]=18*i;
y[1]=18*i+15;
y[2]=18*i;
}
else
{
y[0]=18*i+15;
y[1]=18*i;
y[2]=18*i+15;
}
g.drawPolygon(x,y,3);
}
}
(Review ID: 98253)
======================================================================
Name: krT82822 Date: 12/26/99
java version "1.2.2"
Classic VM (build JDK-1.2.2-001, native threads, symcjit)
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'nwcheck/types/IP.<init> (Ljava/lang/String;)V': Interpreting method.
Please report this error in detail to http://java.sun.com/cgi-
bin/bugreport.cgi
source code :
package nwcheck.types;
import java.io.StreamTokenizer;
import java.io.StringReader;
import java.io.IOException;
public class IP
{
private static final long BIT31 = -2147483648;
private static final long[] maskIDHote =
{
16777215, 65535, 255, 0, 0
};
private static final String[] libellesClasses =
{
"class A","class B","class C","multicast","undefined"
};
private byte classe = 0;
private long adresse;
public IP(String s) throws IOException
{
byte etat = 0;
long v = 0;
adresse = 0;
StreamTokenizer analyseur = new StreamTokenizer(new StringReader
(s));
analyseur.resetSyntax();
analyseur.whitespaceChars(0,32);
analyseur.wordChars('0','9');
while (etat != 3)
{
switch (etat)
{
case 0:
{
switch (analyseur.nextToken())
{
case StreamTokenizer.TT_WORD:
{
if ((analyseur.nval >=
0) && (analyseur.nval <= 255))
{
adresse =
adresse << 8 + Long.parseLong(analyseur.sval);
etat = 1;
}
else
etat = 2;
break;
}
default:
etat = 2;
}
break;
}
case 1:
{
switch (analyseur.nextToken())
{
case StreamTokenizer.TT_EOF:
{
etat = 3;
break;
}
case '.':
{
etat = 0;
break;
}
default:
etat = 2;
}
break;
}
case 2:
throw new IOException("Adresse IP non
reconnue");
}
}
v = BIT31;
while ((classe < 4) && ((adresse & v) != 0))
{
classe++;
v = v >> 1;
}
}
public String image()
{
StringBuffer image = new StringBuffer();
long v = adresse;
image.insert(0,v % 256);
v /= 256;
while (v > 0)
{
image.insert(0,'.');
image.insert(0,v % 256);
v /= 256;
}
return image.toString();
}
public boolean estReseau()
{
return ((adresse & maskIDHote[classe]) == 0);
}
public boolean egalite(IP adr)
{
return (adresse == adr.adresse);
}
public boolean egaliteReseau(IP adr)
{
return ((adresse & (~maskIDHote[classe])) ==
(adr.adresse & (~maskIDHote[adr.classe])));
}
public boolean egaliteSousReseau(IP adr,IP mask)
{
return ((adresse & mask.adresse) ==
(adr.adresse & mask.adresse));
}
public String libelleClasse()
{
return libellesClasses[classe];
}
}
(Review ID: 99341)
======================================================================
Name: krT82822 Date: 01/06/2000
java version "1.2.2"
Classic VM (build JDK-1.2.2-001, native threads, symcjit)
The following not easily reproducible error occurs when calling an entity bean
from a stateful session bean, each in a separate container-managed transaction:
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'com/sun/corba/ee/internal/iiop/CDRInputStream.start_block ()V': Interpreting
method.
Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cg
i
(Review ID: 99664)
======================================================================
Name: krT82822 Date: 01/16/2000
java version "1.2"
Classic VM (build JDK-1.2-V, native threads)
When running a simple character shifting the error occurs, X[] is an char array
with the alphbet.
public static String shiftby(String data, int x) {
char temp;
String newdata = "";
int newvalue = 0;
for(int i=0; i < data.length(); i++) {
temp = data.charAt(i);
newvalue = chvalue(temp);
newvalue -= x;
if(newvalue < 0) {
newvalue += 25;
}
newdata += X[newvalue];
}
return newdata;
}
(Review ID: 100013)
======================================================================
Name: krT82822 Date: 01/30/2000
bash.exe: warning: could not find /tmp, please create!
bash-2.02$ java -version
java version "1.2.2"
Classic VM (build JDK-1.2.2-001, native threads, symcjit)
bash-2.02$ java -fullversion
java full version "JDK-1.2.2-001"
bash-2.02$
A nonfatal internal JIT (3.10.107(x)) error 'GetRegisterA' has occurred in :
'kernel/bricks/Brick.<init>
(Ljavax/media/j3d/Locale;Ljavax/media/j3d/Canvas3D;D)V': Interpreting method.
Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cgi
My program causes an error (see above). I think the error could be caused
by following construct:
if (this instanceof ...) {
...
}
(The error arouse after I had inserted this line)
----------------------------Source code----------------------------------
package kernel.bricks;
import javax.media.j3d.*;
import javax.vecmath.Color3f;
//import javax