05-23-2008 01:16 PM
05-23-2008 02:01 PM
06-24-2008 12:09 PM
06-24-2008 01:28 PM
06-25-2008 08:24 AM
12-01-2017 11:33 AM - edited 12-01-2017 11:34 AM
Ten years later...
May I use __func__, __LINE__ and __FILE__ with LabWindows/CVI 2017?
Where do I get thorough information on accepted preprocessor variables?
Do you understand that it makes no sense whatsoever to pay 3'500€ and write code with an IDE that canNOT assist you in doing so?
Do you have anything in store for the next few months?
12-01-2017 12:22 PM
CVI2017 has C99 support, so all things defined by C99 (like __func__) work of course. You might need to enable C99 in the build options, not sure, I haven't done any non-C99 stuff for years.
All non-standard defines are listed in the "Predefined Macros" section in the help. The standard defines are unfortunately not listed, as far as I can tell.
12-04-2017 03:59 AM
Hello MarcelK, and thank you for your reply that actually gave me the sting to dig a bit and find something I believe it is useful and want to share.
"The standard defines are not listed", that is sad: I have a tool and cannot be sure of how to use it.
Here:
http://www.ni.com/white-paper/14617/es/
is the last info about the LabWindows compiler: Clang3.3 (an open-source project, how interesting...)
I won't discuss the detail that Clang is now at its version 5 (a version 6 is under development). Here come the release notes of the version LabWindows uses, instead: http://releases.llvm.org/3.3/tools/clang/docs/ReleaseNotes.html and the User Manual: http://releases.llvm.org/3.3/tools/clang/docs/UsersManual.html
On the latter page I can read:
Clang is designed to support the C family of programming languages, which includes C, Objective-C, C++, and Objective-C++ as well as many dialects of those. For language-specific information, please see the corresponding language specific section:
In principle, this should settle my concerns for good, BUT...
How comes, then, that LabWindows cannot "do" (I don't know at what level this impossibility arises: editor? IDE? "apparently" not at compiler level) C++?
The reason for my question is obvious: if the problem is at compiler level, then we are given a "stripped-down" version of Clang3.3, and I don't know where to look for proper documentation for it, then. I don't know exactly what's still in and what's been taken out.
I believe that a clear statement on this should be given by NI.
MarcelK, thank you again for your reply.
12-04-2017 04:10 AM
P.S.: a draft of the ANSI C99 TC3 can be found here:
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf
Bye!