diff --git a/mlair/run_modules/model_setup.py b/mlair/run_modules/model_setup.py
index c089062428667a2356c16087f454ae4ca94269d7..9b282c50c7ebccb740fe98b5159eb086aa8828c9 100644
--- a/mlair/run_modules/model_setup.py
+++ b/mlair/run_modules/model_setup.py
@@ -156,8 +156,13 @@ class ModelSetup(RunEnvironment):
 
     def report_model(self):
         model_settings = self.model.get_settings()
+        model_settings.update(self.model.compile_options)
         df = pd.DataFrame(columns=["model setting"])
-        for k,v in model_settings.items():
+        for k, v in model_settings.items():
+            if v is None:
+                continue
+            if isinstance(v, list):
+                v = ",".join(self._clean_name(str(u)) for u in v)
             if "<" in str(v):
                 v = self._clean_name(str(v))
             df.loc[k] = v
@@ -172,6 +177,6 @@ class ModelSetup(RunEnvironment):
     @staticmethod
     def _clean_name(orig_name: str):
         mod_name = re.sub(r'^{0}'.format(re.escape("<")), '', orig_name).replace("'", "").split(" ")
-        mod_name = mod_name[1] if "class" in mod_name[0] else mod_name[0]
+        mod_name = mod_name[1] if any(map(lambda x: x in mod_name[0], ["class", "function", "method"])) else mod_name[0]
         return mod_name[:-1] if mod_name[-1] == ">" else mod_name