问题
While working on a project we were having 4000+ warnings.
To remove some of those I found one compiler Directive as NEXTGEN
.
After Using this directive I found that there is a much more minimize in the warnings to 257.
I want to know if we have any issues in using the compiler directive. Are there any drawback of this directive for my windows application.
I am using Delphi 10
.
on Site of Embarcadero I found very less information.
Can anyone tell me something about the same?
回答1:
Delphi's NEXTGEN
conditional symbol marks the next-generation ARC compilers. The Windows and OSX compilers are not NEXTGEN
compilers. The iOS and Android compilers are NEXTGEN
. Initial release of Linux compiler in 10.2 Tokyo had NEXTGEN
defined, but since 10.3 Rio it does not.
Any code compiled for Windows that is marked with NEXTGEN
will be ignored in current compilers.
See Conditional symbols:
Defined for compilers (such as the Delphi mobile compilers) that use "next-generation" language features, such as 0-based strings. New in XE4/iOS
回答2:
The NEXTGEN conditional symbol is defined by the compiler. It is defined, for instance, for the mobile compilers that use ARC. It is not defined for the traditional Windows and Mac OS compilers.
You must not define it in your code. You are compiling your code with a traditional compiler, not a NEXTGEN
compiler. Whatever is responsible for these compiler warnings, defining NEXTGEN
is not the solution.
来源:https://stackoverflow.com/questions/42789603/what-is-the-use-of-nextgen-compiler-conditional