private static int readIntNum(CompileInfo ci, String p, boolean decimal){
		int radix = 10;
		p = p.trim();
		if(!decimal){
			if(ci.replacements!=null){
				Integer num = ci.replacements.get(p.toLowerCase());
				if(num!=null)
					return num;
			}
			if(p.startsWith("0x")){//$NON-NLS-1$
				p = p.substring(2);
				radix = 16;
			}else if(p.startsWith("0b")){//$NON-NLS-1$
				p = p.substring(2);
				radix = 2;
			}
		}
		try{
			return Integer.parseInt(p, radix);
		}catch(NumberFormatException e){
			makeDiagnostic(ci, Kind.ERROR, "wrong.number.format", p);//$NON-NLS-1$
			return 0;
		}
	}