diff --git a/std/thing/language.c b/std/thing/language.c
index c9c4aba..9e0a0a6 100644
--- a/std/thing/language.c
+++ b/std/thing/language.c
@@ -69,7 +69,7 @@
 }
 
 // Artikel bestimmen
-varargs string QueryArticle(int casus, int dem, int force)
+public varargs string QueryArticle(int casus, int dem, int force)
 {
   // Kein Artikel
   if (!force &&!(QueryProp(P_ARTICLE))) return "";
@@ -93,7 +93,7 @@
 }
 
 // Possessivpronomen bestimmen
-varargs string QueryPossPronoun(mixed what, int casus, int number)
+public varargs string QueryPossPronoun(mixed what, int casus, int number)
 {
   int gen2;
 
@@ -108,7 +108,7 @@
 }
 
 // Pronomen bestimmen nach KNG
-varargs string QueryPronoun(int casus)
+public varargs string QueryPronoun(int casus)
 {
   int gender;
 
@@ -138,7 +138,7 @@
 }
 
 // Anrede fuer Spieler bestimmen
-varargs string QueryDu(int casus,int gender,int zahl)
+public varargs string QueryDu(int casus,int gender,int zahl)
 {
   return
     ({ ({({    "du",   "ihr"}),({    "du",   "ihr"}),({    "du",   "ihr"})}),
@@ -149,7 +149,7 @@
 }
 
 // Welches Geschlecht hat das Objekt als String?
-string QueryGenderString()
+public string QueryGenderString()
 {
   switch( (int)QueryProp( P_GENDER ))
   {
@@ -161,7 +161,7 @@
 
 // Artikel durchdeklinieren nach Kasus, Numerus, Genus und Art
 // des Artikels (demon==bestimmt)
-varargs string DeclAdj(string|string* adj, int casus, int demon)
+public varargs string DeclAdj(string|string* adj, int casus, int demon)
 {
 	// Unregelmaessige Adjektive
 	if( pointerp(adj) ) return adj[casus]+" ";
