On Wednesday, 21 August 2019 at 13:41:20 UTC, Orfeo wrote:
I've:
```
module anomalo.util;

// Foo doesn't exist  anywhere!!!!!

Foo toJsJson(string type, Args...)(string id, Args args) {
   static if (type == "int" || type == "outcome") {
return Json(["id" : Json(id), "type" : Json(type), "value" : Json(0),]);
   } else {
      static assert(0, "invalid type");
   }
}

```

So:
```
$ dub build
```
No error!

```
$ /usr/bin/dmd -lib -ofliba.a -debug -g -w -I. src/anomalo/util.d -vcolumns
```

No error!

Here [github](https://github.com/o3o/anomalo) my project.

Thank you

toJsJson is a template. Templates are evaluated first when they are instantiated. Compiler doesn't give an error because it doesn't compile toJsJson, because you don't instantiate it anywhere.

Reply via email to