We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

Archicad C++ API
About Archicad add-on development using the C++ API.
SOLVED!

AC25 API Compile Error - ParameterPackTraits.hpp

Erenford
Booster
I'm trying to compile one of the examples of the API (Element_Test) and I'm encountering errors on GSRoot\ParameterPackTraits.hpp.

Rebuild started...
1>------ Rebuild All started: Project: Element_Test, Configuration: Debug x64 ------
1>Compiling the localized GRC file...
1>Compiling the non-localized GRC file...
1>Compiling the RC2 file...
1>Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
1>
1>Copyright (C) Microsoft Corporation.  All rights reserved.
1>
1>
1>APICommon.c
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>PropertyUtils.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Test.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Trim.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Tools.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Tips.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_SolidLink.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Snippets.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Set.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Modify.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Hotlink.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Edit.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Basics.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Element_Batch_Create.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Dumper.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>APISpeedTest.cpp
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): error C2220: the following warning is treated as an error
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(80,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>C:\Software Development\Addon Development\API Development Kit 25.3002\Support\Modules\GSRoot\ParameterPackTraits.hpp(92,23): warning C4499: 'static': an explicit specialization cannot have a storage class (ignored)
1>Generating Code...
1>Done building project "Element_Test.vcxproj" -- FAILED.
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========
Only thing I did is edit the MDID (dev+addon id).
I've tried other examples (Attribute_Test), same thing happened
Any ideas on how to fix this?
1 ACCEPTED SOLUTION

Accepted Solutions
Solution
akomporday
Graphisoft Alumni
Graphisoft Alumni
Hi Erenford,

It is a known issue, the fix is already under development. Until then, you can work around it by setting the compiler warning level from level 4 (/W4) to level 3 (/W3). It should compile after that.

Regards,
Andras

View solution in original post

4 REPLIES 4
Solution
akomporday
Graphisoft Alumni
Graphisoft Alumni
Hi Erenford,

It is a known issue, the fix is already under development. Until then, you can work around it by setting the compiler warning level from level 4 (/W4) to level 3 (/W3). It should compile after that.

Regards,
Andras
Viktor Kovacs
Graphisoft
Graphisoft
This is happening because you are trying to compile the code with a later version of Visual Studio than what Archicad builds with.

You can work around the situation by lowering the "Warning Level", and turn off "Treat Warnings As Errors" in the project settings.

Erenford
Booster
Thanks it compiles now. Seems lowering the "Warning Level" is enough.
Dismiss
Participant

Also just hit the same thing in vs2019 (in the year 2022). Note that trying to use vs2017 seemed to hit a pragma that only the 2019 build tools are supported. So curious.