RejectedSoftware Forums

Sign up

latest GDC and renderCompat issue

when i trying to compile anything that uses diet's renderCompat, i always got compiler error saying that:

source/vibe/templ/diet.d:99: error: template core.stdc.stdarg.vaarg does not match any function template declaration. Candidates are:
/usr/include/d/4.9.0/core/stdc/stdarg.di:45: note: core.stdc.stdarg.va
arg(T)(ref valist ap)
/usr/include/d/4.9.0/core/stdc/stdarg.di:51: note: core.stdc.stdarg.va
arg(T)(ref valist ap, ref T parmn)
/usr/include/d/4.9.0/core/stdc/stdarg.di:194: note: core.stdc.stdarg.va
arg()(ref valist ap, TypeInfo ti, void* parmn)
source/vibe/templ/diet.d:99: error: template core.stdc.stdarg.va
arg(T)(ref valist ap) cannot deduce template function from argument types !(VariantN!(24u))(void*)
source/vibe/templ/diet.d:102: error: template core.stdc.stdarg.va
arg does not match any function template declaration. Candidates are:
/usr/include/d/4.9.0/core/stdc/stdarg.di:45: note: core.stdc.stdarg.vaarg(T)(ref valist ap)
/usr/include/d/4.9.0/core/stdc/stdarg.di:51: note: core.stdc.stdarg.vaarg(T)(ref valist ap, ref T parmn)
/usr/include/d/4.9.0/core/stdc/stdarg.di:194: note: core.stdc.stdarg.vaarg()(ref valist ap, TypeInfo ti, void parmn)
source/vibe/templ/diet.d:102: error: template core.stdc.stdarg.va_arg(T)(ref va_list ap) cannot deduce template function from argument types !(HTTPServerRequest)(void
)

i'm using latest GDC for GCC 4.9, GDC was built from git. the issue is in at least .19 and .20.

Re: latest GDC and renderCompat issue

On Fri, 09 May 2014 07:17:11 GMT, fcl wrote:

when i trying to compile anything that uses diet's renderCompat, i always got compiler error saying that:

source/vibe/templ/diet.d:99: error: template core.stdc.stdarg.va_arg does not match any function template declaration. Candidates are:
/usr/include/d/4.9.0/core/stdc/stdarg.di:45: note: core.stdc.stdarg.va_arg(T)(ref va_list ap)
/usr/include/d/4.9.0/core/stdc/stdarg.di:51: note: core.stdc.stdarg.va_arg(T)(ref va_list ap, ref T parmn)
/usr/include/d/4.9.0/core/stdc/stdarg.di:194: note: core.stdc.stdarg.va_arg()(ref va_list ap, TypeInfo ti, void* parmn)
source/vibe/templ/diet.d:99: error: template core.stdc.stdarg.va_arg(T)(ref va_list ap) cannot deduce template function from argument types !(VariantN!(24u))(void*)
source/vibe/templ/diet.d:102: error: template core.stdc.stdarg.va_arg does not match any function template declaration. Candidates are:
/usr/include/d/4.9.0/core/stdc/stdarg.di:45: note: core.stdc.stdarg.va_arg(T)(ref va_list ap)
/usr/include/d/4.9.0/core/stdc/stdarg.di:51: note: core.stdc.stdarg.va_arg(T)(ref va_list ap, ref T parmn)
/usr/include/d/4.9.0/core/stdc/stdarg.di:194: note: core.stdc.stdarg.va_arg()(ref va_list ap, TypeInfo ti, void* parmn)
source/vibe/templ/diet.d:102: error: template core.stdc.stdarg.va_arg(T)(ref va_list ap) cannot deduce template function from argument types !(HTTPServerRequest)(void*)

i'm using latest GDC for GCC 4.9, GDC was built from git. the issue is in at least .19 and .20.

I've committed a supposed fix for this, but couldn't test on GDC so far. Note that starting with the 2.064 D frontend, there is no need to use renderCompat anymore. If you find it used in any vibe.d (or related) code, feel free to report it as a bug, I'll remove it ASAP.

Re: latest GDC and renderCompat issue

On Fri, 09 May 2014 07:26:41 GMT, Sönke Ludwig wrote:

On Fri, 09 May 2014 07:17:11 GMT, fcl wrote:

when i trying to compile anything that uses diet's renderCompat, i always got compiler error saying that:

source/vibe/templ/diet.d:99: error: template core.stdc.stdarg.va_arg does not match any function template declaration. Candidates are:
/usr/include/d/4.9.0/core/stdc/stdarg.di:45: note: core.stdc.stdarg.va_arg(T)(ref va_list ap)
/usr/include/d/4.9.0/core/stdc/stdarg.di:51: note: core.stdc.stdarg.va_arg(T)(ref va_list ap, ref T parmn)
/usr/include/d/4.9.0/core/stdc/stdarg.di:194: note: core.stdc.stdarg.va_arg()(ref va_list ap, TypeInfo ti, void* parmn)
source/vibe/templ/diet.d:99: error: template core.stdc.stdarg.va_arg(T)(ref va_list ap) cannot deduce template function from argument types !(VariantN!(24u))(void*)
source/vibe/templ/diet.d:102: error: template core.stdc.stdarg.va_arg does not match any function template declaration. Candidates are:
/usr/include/d/4.9.0/core/stdc/stdarg.di:45: note: core.stdc.stdarg.va_arg(T)(ref va_list ap)
/usr/include/d/4.9.0/core/stdc/stdarg.di:51: note: core.stdc.stdarg.va_arg(T)(ref va_list ap, ref T parmn)
/usr/include/d/4.9.0/core/stdc/stdarg.di:194: note: core.stdc.stdarg.va_arg()(ref va_list ap, TypeInfo ti, void* parmn)
source/vibe/templ/diet.d:102: error: template core.stdc.stdarg.va_arg(T)(ref va_list ap) cannot deduce template function from argument types !(HTTPServerRequest)(void*)

i'm using latest GDC for GCC 4.9, GDC was built from git. the issue is in at least .19 and .20.

I've committed a supposed fix for this, but couldn't test on GDC so far. Note that starting with the 2.064 D frontend, there is no need to use renderCompat anymore. If you find it used in any vibe.d (or related) code, feel free to report it as a bug, I'll remove it ASAP.

Should you change some of the examples so it uses render instead of renderCompat?

Re: latest GDC and renderCompat issue

On Fri, 09 May 2014 07:46:30 GMT, Darius Clark wrote:

On Fri, 09 May 2014 07:26:41 GMT, Sönke Ludwig wrote:

I've committed a supposed fix for this, but couldn't test on GDC so far. Note that starting with the 2.064 D frontend, there is no need to use renderCompat anymore. If you find it used in any vibe.d (or related) code, feel free to report it as a bug, I'll remove it ASAP.

Should you change some of the examples so it uses render instead of renderCompat?

I just found two uses of renderCompat in the "app_skeleton" example and fixed them. Did you stumble over anything else?

Re: latest GDC and renderCompat issue

I've committed a supposed fix

now it works, thank you.

If you find it used in any vibe.d (or related) code, feel free to report it as a bug, I'll remove it ASAP.

ah, it's vibelog, vibenews and alot of other projects, all using renderComat. even vibed.org does this.

Re: latest GDC and renderCompat issue

Did you stumble over anything else?

examples/taskcontrol have one in app.d
vibe/http/server.d uses it in @property HTTPServerRequestDelegate staticTemplate(string template
file)()

Re: latest GDC and renderCompat issue

Am 09.05.2014 10:58, schrieb fcl:

Did you stumble over anything else?
examples/taskcontrol have one in app.d
vibe/http/server.d uses it in @property HTTPServerRequestDelegate staticTemplate(string template
file)()

Thanks, both are fixed now.