public static Tip_LIzraz_Const_Niz PROVJERI_primarni_izraz(){
		String linija = mParser.ParsirajNovuLiniju();
		UniformniZnak uz = new UniformniZnak(linija);
		Tip_LIzraz_Const_Niz vrati = new Tip_LIzraz_Const_Niz();
		mZadnjiPrimarniIzrazJe_NIZ_ZNAKOVA = false;
		
		if (uz.mNaziv.equals("IDN")){
			ClanTabliceZnakova cl = mSTZ.DohvatiClanIzTabliceZnakova(uz.mLeksickaJedinka);
			if (cl == null) {
				String greska = "<primarni_izraz> ::= " + uz.FormatZaIspis();
				Utilities_Sem.WriteStringLineToOutputAndExit(greska);
			}			
			vrati.mL_izraz = cl.mL_izraz;
			vrati.mTip = cl.mTip;
			vrati.mFun = cl.mTipFunkcija;
			vrati.mConst = cl.mConst;
			vrati.mNiz = cl.mNiz;
			return vrati;
		}
		
		if (uz.mNaziv.equals("BROJ")){
			if (!Utilities_Sem.ProvjeriInt(uz.mLeksickaJedinka)) {
				String greska = "<primarni_izraz> ::= " + uz.FormatZaIspis();
				Utilities_Sem.WriteStringLineToOutputAndExit(greska);
			}			
			vrati.mL_izraz = false;
			vrati.mTip = Tip._int;
			vrati.mConst = false;
			vrati.mNiz = false;
			return vrati;
		}
		
		if (uz.mNaziv.equals("ZNAK")){
			if (!Utilities_Sem.ProvjeriChar(uz.mLeksickaJedinka)) {
				String greska = "<primarni_izraz> ::= " + uz.FormatZaIspis();
				Utilities_Sem.WriteStringLineToOutputAndExit(greska);
			}
			vrati.mL_izraz = false;
			vrati.mTip = Tip._char;
			vrati.mConst = false;
			vrati.mNiz = false;
			return vrati;
		}
		
		if (uz.mNaziv.equals("NIZ_ZNAKOVA")){
			if (!Utilities_Sem.ProvjeriNizConstChar(uz.mLeksickaJedinka)) {
				String greska = "<primarni_izraz> ::= " + uz.FormatZaIspis();
				Utilities_Sem.WriteStringLineToOutputAndExit(greska);
			}
			vrati.mL_izraz = false;
			vrati.mTip = Tip._char;
			vrati.mConst = true;
			vrati.mNiz = true;
			mZadnjiPrimarniIzrazJe_NIZ_ZNAKOVA = true;
			mDuljina_NIZ_ZNAKOVA = Utilities_Sem.VratiBrojZnakovaIz_NIZ_ZNAKOVA(uz.mLeksickaJedinka);
			return vrati;
		}
		
		if (uz.mNaziv.equals("L_ZAGRADA")){
			linija = mParser.ParsirajNovuLiniju();	// ucitaj <izraz>
			Tip_LIzraz_Const_Niz priv = PROVJERI_izraz();
			linija = mParser.ParsirajNovuLiniju();	// ucitaj D_ZAGRADA
			vrati.mL_izraz = priv.mL_izraz;
			vrati.mTip = priv.mTip;
			vrati.mConst = priv.mConst;
			vrati.mNiz = priv.mNiz;
			return vrati;
		}
		
		return null;
	}