From 20d21495851e112b8c8106273d115e2cef464f57 Mon Sep 17 00:00:00 2001 From: Northy1985 <100786104+Northy1985@users.noreply.github.com> Date: Tue, 5 Apr 2022 18:31:22 +0100 Subject: [PATCH 1/2] updated --- ALL_BUILD.vcxproj | 200 +++++ ALL_BUILD.vcxproj.filters | 8 + CMakeCache.txt | 372 ++++++++ .../INSTALL_force.rule | 1 + .../PACKAGE_force.rule | 1 + CMakeFiles/3.23.0-rc4/CMakeCCompiler.cmake | 72 ++ CMakeFiles/3.23.0-rc4/CMakeCXXCompiler.cmake | 83 ++ .../CMakeDetermineCompilerABI_C.bin | Bin 0 -> 51200 bytes .../CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 51200 bytes CMakeFiles/3.23.0-rc4/CMakeRCCompiler.cmake | 6 + CMakeFiles/3.23.0-rc4/CMakeSystem.cmake | 15 + .../3.23.0-rc4/CompilerIdC/CMakeCCompilerId.c | 828 ++++++++++++++++++ .../3.23.0-rc4/CompilerIdC/CompilerIdC.exe | Bin 0 -> 14848 bytes .../CompilerIdC/CompilerIdC.vcxproj | 71 ++ .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 816 +++++++++++++++++ .../CompilerIdCXX/CompilerIdCXX.exe | Bin 0 -> 15360 bytes .../CompilerIdCXX/CompilerIdCXX.vcxproj | 71 ++ CMakeFiles/3.23.0-rc4/VCTargetsPath.txt | 1 + CMakeFiles/3.23.0-rc4/VCTargetsPath.vcxproj | 31 + .../INSTALL_force.rule | 1 + .../PACKAGE_force.rule | 1 + .../INSTALL_force.rule | 1 + .../PACKAGE_force.rule | 1 + CMakeFiles/TargetDirectories.txt | 18 + CMakeFiles/cmake.check_cache | 1 + .../INSTALL_force.rule | 1 + .../PACKAGE_force.rule | 1 + .../generate.stamp.rule | 1 + CMakeFiles/generate.stamp | 1 + CMakeFiles/generate.stamp.depend | 102 +++ CMakeFiles/generate.stamp.list | 4 + CPackConfig.cmake | 65 ++ CPackSourceConfig.cmake | 74 ++ INSTALL.vcxproj | 204 +++++ INSTALL.vcxproj.filters | 13 + PACKAGE.vcxproj | 216 +++++ PACKAGE.vcxproj.filters | 13 + ZERO_CHECK.vcxproj | 174 ++++ ZERO_CHECK.vcxproj.filters | 13 + bison/ALL_BUILD.vcxproj | 188 ++++ bison/ALL_BUILD.vcxproj.filters | 8 + bison/CMakeFiles/generate.stamp | 1 + bison/CMakeFiles/generate.stamp.depend | 2 + bison/INSTALL.vcxproj | 204 +++++ bison/INSTALL.vcxproj.filters | 13 + bison/PACKAGE.vcxproj | 216 +++++ bison/PACKAGE.vcxproj.filters | 13 + bison/cmake_install.cmake | 34 + bison/win_bison.sln | 105 +++ bison/win_bison.vcxproj | 475 ++++++++++ bison/win_bison.vcxproj.filters | 291 ++++++ bison/y.vcxproj | 286 ++++++ bison/y.vcxproj.filters | 19 + cmake_install.cmake | 84 ++ common/ALL_BUILD.vcxproj | 184 ++++ common/ALL_BUILD.vcxproj.filters | 8 + common/CMakeFiles/generate.stamp | 1 + common/CMakeFiles/generate.stamp.depend | 2 + common/INSTALL.vcxproj | 204 +++++ common/INSTALL.vcxproj.filters | 13 + common/PACKAGE.vcxproj | 216 +++++ common/PACKAGE.vcxproj.filters | 13 + common/cmake_install.cmake | 34 + common/winflexbison_common.sln | 77 ++ common/winflexbison_common.vcxproj | 534 +++++++++++ common/winflexbison_common.vcxproj.filters | 768 ++++++++++++++++ flex/ALL_BUILD.vcxproj | 188 ++++ flex/ALL_BUILD.vcxproj.filters | 8 + flex/CMakeFiles/generate.stamp | 1 + flex/CMakeFiles/generate.stamp.depend | 2 + flex/INSTALL.vcxproj | 204 +++++ flex/INSTALL.vcxproj.filters | 13 + flex/PACKAGE.vcxproj | 216 +++++ flex/PACKAGE.vcxproj.filters | 13 + flex/cmake_install.cmake | 34 + flex/fl.vcxproj | 286 ++++++ flex/fl.vcxproj.filters | 19 + flex/win_flex.sln | 105 +++ flex/win_flex.vcxproj | 366 ++++++++ flex/win_flex.vcxproj.filters | 108 +++ winflexbison.sln | 135 +++ 81 files changed, 9172 insertions(+) create mode 100644 ALL_BUILD.vcxproj create mode 100644 ALL_BUILD.vcxproj.filters create mode 100644 CMakeCache.txt create mode 100644 CMakeFiles/17238a7fca38ceac64dd07c7dbd0bdf4/INSTALL_force.rule create mode 100644 CMakeFiles/17238a7fca38ceac64dd07c7dbd0bdf4/PACKAGE_force.rule create mode 100644 CMakeFiles/3.23.0-rc4/CMakeCCompiler.cmake create mode 100644 CMakeFiles/3.23.0-rc4/CMakeCXXCompiler.cmake create mode 100644 CMakeFiles/3.23.0-rc4/CMakeDetermineCompilerABI_C.bin create mode 100644 CMakeFiles/3.23.0-rc4/CMakeDetermineCompilerABI_CXX.bin create mode 100644 CMakeFiles/3.23.0-rc4/CMakeRCCompiler.cmake create mode 100644 CMakeFiles/3.23.0-rc4/CMakeSystem.cmake create mode 100644 CMakeFiles/3.23.0-rc4/CompilerIdC/CMakeCCompilerId.c create mode 100644 CMakeFiles/3.23.0-rc4/CompilerIdC/CompilerIdC.exe create mode 100644 CMakeFiles/3.23.0-rc4/CompilerIdC/CompilerIdC.vcxproj create mode 100644 CMakeFiles/3.23.0-rc4/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100644 CMakeFiles/3.23.0-rc4/CompilerIdCXX/CompilerIdCXX.exe create mode 100644 CMakeFiles/3.23.0-rc4/CompilerIdCXX/CompilerIdCXX.vcxproj create mode 100644 CMakeFiles/3.23.0-rc4/VCTargetsPath.txt create mode 100644 CMakeFiles/3.23.0-rc4/VCTargetsPath.vcxproj create mode 100644 CMakeFiles/6a64f629f7894d851fbaf75ba03068b9/INSTALL_force.rule create mode 100644 CMakeFiles/6a64f629f7894d851fbaf75ba03068b9/PACKAGE_force.rule create mode 100644 CMakeFiles/8d200652f38e246405af94ee0782eb0e/INSTALL_force.rule create mode 100644 CMakeFiles/8d200652f38e246405af94ee0782eb0e/PACKAGE_force.rule create mode 100644 CMakeFiles/TargetDirectories.txt create mode 100644 CMakeFiles/cmake.check_cache create mode 100644 CMakeFiles/dfdce5c0c86227006a5184daff4ed217/INSTALL_force.rule create mode 100644 CMakeFiles/dfdce5c0c86227006a5184daff4ed217/PACKAGE_force.rule create mode 100644 CMakeFiles/dfdce5c0c86227006a5184daff4ed217/generate.stamp.rule create mode 100644 CMakeFiles/generate.stamp create mode 100644 CMakeFiles/generate.stamp.depend create mode 100644 CMakeFiles/generate.stamp.list create mode 100644 CPackConfig.cmake create mode 100644 CPackSourceConfig.cmake create mode 100644 INSTALL.vcxproj create mode 100644 INSTALL.vcxproj.filters create mode 100644 PACKAGE.vcxproj create mode 100644 PACKAGE.vcxproj.filters create mode 100644 ZERO_CHECK.vcxproj create mode 100644 ZERO_CHECK.vcxproj.filters create mode 100644 bison/ALL_BUILD.vcxproj create mode 100644 bison/ALL_BUILD.vcxproj.filters create mode 100644 bison/CMakeFiles/generate.stamp create mode 100644 bison/CMakeFiles/generate.stamp.depend create mode 100644 bison/INSTALL.vcxproj create mode 100644 bison/INSTALL.vcxproj.filters create mode 100644 bison/PACKAGE.vcxproj create mode 100644 bison/PACKAGE.vcxproj.filters create mode 100644 bison/cmake_install.cmake create mode 100644 bison/win_bison.sln create mode 100644 bison/win_bison.vcxproj create mode 100644 bison/win_bison.vcxproj.filters create mode 100644 bison/y.vcxproj create mode 100644 bison/y.vcxproj.filters create mode 100644 cmake_install.cmake create mode 100644 common/ALL_BUILD.vcxproj create mode 100644 common/ALL_BUILD.vcxproj.filters create mode 100644 common/CMakeFiles/generate.stamp create mode 100644 common/CMakeFiles/generate.stamp.depend create mode 100644 common/INSTALL.vcxproj create mode 100644 common/INSTALL.vcxproj.filters create mode 100644 common/PACKAGE.vcxproj create mode 100644 common/PACKAGE.vcxproj.filters create mode 100644 common/cmake_install.cmake create mode 100644 common/winflexbison_common.sln create mode 100644 common/winflexbison_common.vcxproj create mode 100644 common/winflexbison_common.vcxproj.filters create mode 100644 flex/ALL_BUILD.vcxproj create mode 100644 flex/ALL_BUILD.vcxproj.filters create mode 100644 flex/CMakeFiles/generate.stamp create mode 100644 flex/CMakeFiles/generate.stamp.depend create mode 100644 flex/INSTALL.vcxproj create mode 100644 flex/INSTALL.vcxproj.filters create mode 100644 flex/PACKAGE.vcxproj create mode 100644 flex/PACKAGE.vcxproj.filters create mode 100644 flex/cmake_install.cmake create mode 100644 flex/fl.vcxproj create mode 100644 flex/fl.vcxproj.filters create mode 100644 flex/win_flex.sln create mode 100644 flex/win_flex.vcxproj create mode 100644 flex/win_flex.vcxproj.filters create mode 100644 winflexbison.sln diff --git a/ALL_BUILD.vcxproj b/ALL_BUILD.vcxproj new file mode 100644 index 0000000..73f63ff --- /dev/null +++ b/ALL_BUILD.vcxproj @@ -0,0 +1,200 @@ + + + + x64 + + + false + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + Win32Proj + 10.0.22581.0 + x64 + ALL_BUILD + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + Always + Building Custom Rule D:/winflexbison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCompilerIdDetection.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompileFeatures.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerABI.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerId.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeFindBinUtils.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitIncludeInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitLinkInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseLibraryArchitecture.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystem.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCompilerCommon.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPack.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPackComponent.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ADSP-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMCC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\AppleClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Borland-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Bruce-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompilerInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Comeau-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Cray-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Embarcadero-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Fujitsu-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\FujitsuClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GHS-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IAR-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-C-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-CXX-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Intel-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IntelLLVM-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVHPC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVIDIA-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\OpenWatcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PGI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PathScale-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SCO-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SDCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TinyCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Watcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CompilerId\VS-10.vcxproj.in;C:\Program Files\CMake\share\cmake-3.23\Modules\Internal\FeatureTesting.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-Determine-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.23\Templates\CPackConfig.cmake.in;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCXXCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeRCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeSystem.cmake;%(AdditionalInputs) + D:\winflexbison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCompilerIdDetection.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompileFeatures.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerABI.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerId.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeFindBinUtils.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitIncludeInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitLinkInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseLibraryArchitecture.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystem.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCompilerCommon.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPack.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPackComponent.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ADSP-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMCC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\AppleClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Borland-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Bruce-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompilerInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Comeau-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Cray-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Embarcadero-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Fujitsu-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\FujitsuClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GHS-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IAR-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-C-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-CXX-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Intel-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IntelLLVM-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVHPC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVIDIA-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\OpenWatcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PGI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PathScale-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SCO-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SDCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TinyCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Watcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CompilerId\VS-10.vcxproj.in;C:\Program Files\CMake\share\cmake-3.23\Modules\Internal\FeatureTesting.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-Determine-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.23\Templates\CPackConfig.cmake.in;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCXXCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeRCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeSystem.cmake;%(AdditionalInputs) + D:\winflexbison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCompilerIdDetection.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompileFeatures.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerABI.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerId.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeFindBinUtils.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitIncludeInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitLinkInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseLibraryArchitecture.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystem.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCompilerCommon.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPack.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPackComponent.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ADSP-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMCC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\AppleClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Borland-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Bruce-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompilerInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Comeau-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Cray-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Embarcadero-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Fujitsu-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\FujitsuClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GHS-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IAR-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-C-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-CXX-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Intel-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IntelLLVM-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVHPC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVIDIA-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\OpenWatcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PGI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PathScale-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SCO-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SDCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TinyCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Watcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CompilerId\VS-10.vcxproj.in;C:\Program Files\CMake\share\cmake-3.23\Modules\Internal\FeatureTesting.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-Determine-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.23\Templates\CPackConfig.cmake.in;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCXXCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeRCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeSystem.cmake;%(AdditionalInputs) + D:\winflexbison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCompilerIdDetection.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompileFeatures.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerABI.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerId.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeFindBinUtils.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitIncludeInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitLinkInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseLibraryArchitecture.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystem.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCompilerCommon.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPack.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPackComponent.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ADSP-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMCC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\AppleClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Borland-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Bruce-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompilerInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Comeau-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Cray-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Embarcadero-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Fujitsu-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\FujitsuClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GHS-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IAR-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-C-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-CXX-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Intel-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IntelLLVM-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVHPC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVIDIA-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\OpenWatcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PGI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PathScale-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SCO-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SDCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TinyCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Watcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CompilerId\VS-10.vcxproj.in;C:\Program Files\CMake\share\cmake-3.23\Modules\Internal\FeatureTesting.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-Determine-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.23\Templates\CPackConfig.cmake.in;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCXXCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeRCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeSystem.cmake;%(AdditionalInputs) + D:\winflexbison\CMakeFiles\generate.stamp + false + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3} + fl + + + {C9B72576-A174-320B-B833-C85152DF7E14} + win_bison + + + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A} + win_flex + + + {DD225102-0724-3D42-8FF5-846CF53B9BA2} + winflexbison_common + + + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B} + y + + + + + + \ No newline at end of file diff --git a/ALL_BUILD.vcxproj.filters b/ALL_BUILD.vcxproj.filters new file mode 100644 index 0000000..7534313 --- /dev/null +++ b/ALL_BUILD.vcxproj.filters @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/CMakeCache.txt b/CMakeCache.txt new file mode 100644 index 0000000..64623cf --- /dev/null +++ b/CMakeCache.txt @@ -0,0 +1,372 @@ +# This is the CMakeCache file. +# For build in directory: d:/winflexbison +# It was generated by CMake: C:/Program Files/CMake/bin/cmake.exe +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Path to a program. +CMAKE_AR:FILEPATH=I:/vsent2022/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/lib.exe + +//Semicolon separated list of supported configuration types, only +// supports Debug, Release, MinSizeRel, and RelWithDebInfo, anything +// else will be ignored. +CMAKE_CONFIGURATION_TYPES:STRING=Debug;Release;MinSizeRel;RelWithDebInfo + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING=/DWIN32 /D_WINDOWS /W3 /GR /EHsc + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=/MDd /Zi /Ob0 /Od /RTC1 + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=/MD /O1 /Ob1 /DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=/MD /O2 /Ob2 /DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=/MD /Zi /O2 /Ob1 /DNDEBUG + +//Libraries linked by default with all C++ applications. +CMAKE_CXX_STANDARD_LIBRARIES:STRING=kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib + +//Flags used by the C compiler during all build types. +CMAKE_C_FLAGS:STRING=/DWIN32 /D_WINDOWS /W3 + +//Flags used by the C compiler during DEBUG builds. +CMAKE_C_FLAGS_DEBUG:STRING=/MDd /Zi /Ob0 /Od /RTC1 + +//Flags used by the C compiler during MINSIZEREL builds. +CMAKE_C_FLAGS_MINSIZEREL:STRING=/MD /O1 /Ob1 /DNDEBUG + +//Flags used by the C compiler during RELEASE builds. +CMAKE_C_FLAGS_RELEASE:STRING=/MD /O2 /Ob2 /DNDEBUG + +//Flags used by the C compiler during RELWITHDEBINFO builds. +CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=/MD /Zi /O2 /Ob1 /DNDEBUG + +//Libraries linked by default with all C applications. +CMAKE_C_STANDARD_LIBRARIES:STRING=kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING=/machine:x64 + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=C:/Program Files (x86)/winflexbison + +//Path to a program. +CMAKE_LINKER:FILEPATH=I:/vsent2022/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/link.exe + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING=/machine:x64 + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL + +//Path to a program. +CMAKE_MT:FILEPATH=CMAKE_MT-NOTFOUND + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=winflexbison + +//RC compiler +CMAKE_RC_COMPILER:FILEPATH=rc + +//Flags for Windows Resource Compiler during all build types. +CMAKE_RC_FLAGS:STRING=-DWIN32 + +//Flags for Windows Resource Compiler during DEBUG builds. +CMAKE_RC_FLAGS_DEBUG:STRING=-D_DEBUG + +//Flags for Windows Resource Compiler during MINSIZEREL builds. +CMAKE_RC_FLAGS_MINSIZEREL:STRING= + +//Flags for Windows Resource Compiler during RELEASE builds. +CMAKE_RC_FLAGS_RELEASE:STRING= + +//Flags for Windows Resource Compiler during RELWITHDEBINFO builds. +CMAKE_RC_FLAGS_RELWITHDEBINFO:STRING= + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING=/machine:x64 + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=/debug /INCREMENTAL + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=/INCREMENTAL:NO + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=/INCREMENTAL:NO + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=/debug /INCREMENTAL + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING=/machine:x64 + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +//List of CPack Generators which will be created by the 'PACKAGE' +// target. Default: ZIP +CPACK_GENERATOR:STRING=ZIP + +//Complete version of the created package. +CPACK_PACKAGE_VERSION:STRING=master + +//Enable to build 7-Zip source packages +CPACK_SOURCE_7Z:BOOL=ON + +//Enable to build ZIP source packages +CPACK_SOURCE_ZIP:BOOL=ON + +//Set ON to change /MD(DLL) to /MT(static) +USE_STATIC_RUNTIME:BOOL=OFF + +//Value Computed by CMake +win_bison_BINARY_DIR:STATIC=D:/winflexbison/bison + +//Value Computed by CMake +win_bison_IS_TOP_LEVEL:STATIC=OFF + +//Value Computed by CMake +win_bison_SOURCE_DIR:STATIC=D:/winflexbison/bison + +//Value Computed by CMake +win_flex_BINARY_DIR:STATIC=D:/winflexbison/flex + +//Value Computed by CMake +win_flex_IS_TOP_LEVEL:STATIC=OFF + +//Value Computed by CMake +win_flex_SOURCE_DIR:STATIC=D:/winflexbison/flex + +//Value Computed by CMake +winflexbison_BINARY_DIR:STATIC=D:/winflexbison + +//Value Computed by CMake +winflexbison_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +winflexbison_SOURCE_DIR:STATIC=D:/winflexbison + +//Value Computed by CMake +winflexbison_common_BINARY_DIR:STATIC=D:/winflexbison/common + +//Value Computed by CMake +winflexbison_common_IS_TOP_LEVEL:STATIC=OFF + +//Value Computed by CMake +winflexbison_common_SOURCE_DIR:STATIC=D:/winflexbison/common + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=d:/winflexbison +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=23 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=0 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cmake.exe +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=C:/Program Files/CMake/bin/cpack.exe +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=C:/Program Files/CMake/bin/ctest.exe +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_STANDARD_LIBRARIES +CMAKE_CXX_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS +CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG +CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL +CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE +CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO +CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_C_STANDARD_LIBRARIES +CMAKE_C_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Visual Studio 17 2022 +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL=I:/vsent2022 +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=D:/winflexbison +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MT +CMAKE_MT-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=4 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//noop for ranlib +CMAKE_RANLIB:INTERNAL=: +//ADVANCED property for variable: CMAKE_RC_COMPILER +CMAKE_RC_COMPILER-ADVANCED:INTERNAL=1 +CMAKE_RC_COMPILER_WORKS:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS +CMAKE_RC_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS_DEBUG +CMAKE_RC_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS_MINSIZEREL +CMAKE_RC_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS_RELEASE +CMAKE_RC_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RC_FLAGS_RELWITHDEBINFO +CMAKE_RC_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=C:/Program Files/CMake/share/cmake-3.23 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_7Z +CPACK_SOURCE_7Z-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CPACK_SOURCE_ZIP +CPACK_SOURCE_ZIP-ADVANCED:INTERNAL=1 + diff --git a/CMakeFiles/17238a7fca38ceac64dd07c7dbd0bdf4/INSTALL_force.rule b/CMakeFiles/17238a7fca38ceac64dd07c7dbd0bdf4/INSTALL_force.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/17238a7fca38ceac64dd07c7dbd0bdf4/INSTALL_force.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/17238a7fca38ceac64dd07c7dbd0bdf4/PACKAGE_force.rule b/CMakeFiles/17238a7fca38ceac64dd07c7dbd0bdf4/PACKAGE_force.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/17238a7fca38ceac64dd07c7dbd0bdf4/PACKAGE_force.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/3.23.0-rc4/CMakeCCompiler.cmake b/CMakeFiles/3.23.0-rc4/CMakeCCompiler.cmake new file mode 100644 index 0000000..13a23a1 --- /dev/null +++ b/CMakeFiles/3.23.0-rc4/CMakeCCompiler.cmake @@ -0,0 +1,72 @@ +set(CMAKE_C_COMPILER "I:/vsent2022/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/cl.exe") +set(CMAKE_C_COMPILER_ARG1 "") +set(CMAKE_C_COMPILER_ID "MSVC") +set(CMAKE_C_COMPILER_VERSION "19.31.31105.0") +set(CMAKE_C_COMPILER_VERSION_INTERNAL "") +set(CMAKE_C_COMPILER_WRAPPER "") +set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "90") +set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "OFF") +set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17") +set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes") +set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros") +set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert") +set(CMAKE_C17_COMPILE_FEATURES "c_std_17") +set(CMAKE_C23_COMPILE_FEATURES "") + +set(CMAKE_C_PLATFORM_ID "Windows") +set(CMAKE_C_SIMULATE_ID "") +set(CMAKE_C_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_C_SIMULATE_VERSION "") +set(CMAKE_C_COMPILER_ARCHITECTURE_ID x64) + +set(MSVC_C_ARCHITECTURE_ID x64) + +set(CMAKE_AR "I:/vsent2022/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/lib.exe") +set(CMAKE_C_COMPILER_AR "") +set(CMAKE_RANLIB ":") +set(CMAKE_C_COMPILER_RANLIB "") +set(CMAKE_LINKER "I:/vsent2022/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/link.exe") +set(CMAKE_MT "CMAKE_MT-NOTFOUND") +set(CMAKE_COMPILER_IS_GNUCC ) +set(CMAKE_C_COMPILER_LOADED 1) +set(CMAKE_C_COMPILER_WORKS TRUE) +set(CMAKE_C_ABI_COMPILED TRUE) + +set(CMAKE_C_COMPILER_ENV_VAR "CC") + +set(CMAKE_C_COMPILER_ID_RUN 1) +set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m) +set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) +set(CMAKE_C_LINKER_PREFERENCE 10) + +# Save compiler ABI information. +set(CMAKE_C_SIZEOF_DATA_PTR "8") +set(CMAKE_C_COMPILER_ABI "") +set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_C_LIBRARY_ARCHITECTURE "") + +if(CMAKE_C_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_C_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") +endif() + +if(CMAKE_C_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "") +endif() + +set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_C_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "") +set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "") +set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "") +set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/CMakeFiles/3.23.0-rc4/CMakeCXXCompiler.cmake b/CMakeFiles/3.23.0-rc4/CMakeCXXCompiler.cmake new file mode 100644 index 0000000..d132a7c --- /dev/null +++ b/CMakeFiles/3.23.0-rc4/CMakeCXXCompiler.cmake @@ -0,0 +1,83 @@ +set(CMAKE_CXX_COMPILER "I:/vsent2022/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/cl.exe") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "MSVC") +set(CMAKE_CXX_COMPILER_VERSION "19.31.31105.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14") +set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "OFF") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") +set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") + +set(CMAKE_CXX_PLATFORM_ID "Windows") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_CXX_SIMULATE_VERSION "") +set(CMAKE_CXX_COMPILER_ARCHITECTURE_ID x64) + +set(MSVC_CXX_ARCHITECTURE_ID x64) + +set(CMAKE_AR "I:/vsent2022/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/lib.exe") +set(CMAKE_CXX_COMPILER_AR "") +set(CMAKE_RANLIB ":") +set(CMAKE_CXX_COMPILER_RANLIB "") +set(CMAKE_LINKER "I:/vsent2022/VC/Tools/MSVC/14.31.31103/bin/Hostx64/x64/link.exe") +set(CMAKE_MT "CMAKE_MT-NOTFOUND") +set(CMAKE_COMPILER_IS_GNUCXX ) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "") +set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/CMakeFiles/3.23.0-rc4/CMakeDetermineCompilerABI_C.bin b/CMakeFiles/3.23.0-rc4/CMakeDetermineCompilerABI_C.bin new file mode 100644 index 0000000000000000000000000000000000000000..eaf6473bab5f09f9791e1e1437ce49ad85edec43 GIT binary patch literal 51200 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 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_C) +# define COMPILER_ID "SunPro" +# if __SUNPRO_C >= 0x5100 + /* __SUNPRO_C = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) +# endif + +#elif defined(__HP_cc) +# define COMPILER_ID "HP" + /* __HP_cc = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) + +#elif defined(__DECC) +# define COMPILER_ID "Compaq" + /* __DECC_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) + +#elif defined(__IBMC__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__open_xl__) && defined(__clang__) +# define COMPILER_ID "IBMClang" +# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) +# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) +# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) + + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800 +# define COMPILER_ID "XL" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMC__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__TINYC__) +# define COMPILER_ID "TinyCC" + +#elif defined(__BCC__) +# define COMPILER_ID "Bruce" + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) +# define COMPILER_ID "LCC" +# define COMPILER_VERSION_MAJOR DEC(1) +# if defined(__LCC__) +# define COMPILER_VERSION_MINOR DEC(__LCC__- 100) +# endif +# if defined(__LCC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) +# endif +# if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define SIMULATE_ID "GNU" +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif +# endif + +#elif defined(__GNUC__) +# define COMPILER_ID "GNU" +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + +#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC) +# define COMPILER_ID "SDCC" +# if defined(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR) +# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR) +# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH) +# else + /* SDCC = VRP */ +# define COMPILER_VERSION_MAJOR DEC(SDCC/100) +# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) +# define COMPILER_VERSION_PATCH DEC(SDCC % 10) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if !defined(__STDC__) && !defined(__clang__) +# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__) +# define C_VERSION "90" +# else +# define C_VERSION +# endif +#elif __STDC_VERSION__ > 201710L +# define C_VERSION "23" +#elif __STDC_VERSION__ >= 201710L +# define C_VERSION "17" +#elif __STDC_VERSION__ >= 201000L +# define C_VERSION "11" +#elif __STDC_VERSION__ >= 199901L +# define C_VERSION "99" +#else +# define C_VERSION "90" +#endif +const char* info_language_standard_default = + "INFO" ":" "standard_default[" C_VERSION "]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +#ifdef ID_VOID_MAIN +void main() {} +#else +# if defined(__CLASSIC_C__) +int main(argc, argv) int argc; char *argv[]; +# else +int main(int argc, char* argv[]) +# endif +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; + require += info_arch[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} +#endif diff --git a/CMakeFiles/3.23.0-rc4/CompilerIdC/CompilerIdC.exe b/CMakeFiles/3.23.0-rc4/CompilerIdC/CompilerIdC.exe new file mode 100644 index 0000000000000000000000000000000000000000..7c641f7a740d09d2bc66a2d08f520befa8532415 GIT binary patch literal 14848 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 + + + + Debug + x64 + + + + {CAE07175-D007-4FC3-BFE8-47B392814159} + CompilerIdC + Win32Proj + + + 10.0.22581.0 + + + + + + + + + x64 + + + Application + v143 + MultiByte + + + + + + + <_ProjectFileVersion>10.0.30319.1 + .\ + $(Configuration)\ + false + + + + Disabled + %(PreprocessorDefinitions) + false + EnableFastChecks + MultiThreadedDebugDLL + + + TurnOffAllWarnings + + + + + + false + Console + + + + for %%i in (cl.exe) do %40echo CMAKE_C_COMPILER=%%~$PATH:i + + + + + + + + + + diff --git a/CMakeFiles/3.23.0-rc4/CompilerIdCXX/CMakeCXXCompilerId.cpp b/CMakeFiles/3.23.0-rc4/CompilerIdCXX/CMakeCXXCompilerId.cpp new file mode 100644 index 0000000..57a7a85 --- /dev/null +++ b/CMakeFiles/3.23.0-rc4/CompilerIdCXX/CMakeCXXCompilerId.cpp @@ -0,0 +1,816 @@ +/* This source file must have a .cpp extension so that all C++ compilers + recognize the extension without flags. Borland does not know .cxx for + example. */ +#ifndef __cplusplus +# error "A C compiler has been selected for C++." +#endif + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__COMO__) +# define COMPILER_ID "Comeau" + /* __COMO_VERSION__ = VRR */ +# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) +# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) + +#elif defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#endif +#if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +#endif +#if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +#elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +#endif +#if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +#endif +#if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +#endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__open_xl__) && defined(__clang__) +# define COMPILER_ID "IBMClang" +# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__) +# define COMPILER_VERSION_MINOR DEC(__open_xl_release__) +# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__) + + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__)) +# define COMPILER_ID "LCC" +# define COMPILER_VERSION_MAJOR DEC(1) +# if defined(__LCC__) +# define COMPILER_VERSION_MINOR DEC(__LCC__- 100) +# endif +# if defined(__LCC_MINOR__) +# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__) +# endif +# if defined(__GNUC__) && defined(__GNUC_MINOR__) +# define SIMULATE_ID "GNU" +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > 202002L + "23" +#elif CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/CMakeFiles/3.23.0-rc4/CompilerIdCXX/CompilerIdCXX.exe b/CMakeFiles/3.23.0-rc4/CompilerIdCXX/CompilerIdCXX.exe new file mode 100644 index 0000000000000000000000000000000000000000..cfb6ad062dc88758dadbb4160e6f83f78240ae3a GIT binary patch literal 15360 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 + + + + Debug + x64 + + + + {CAE07175-D007-4FC3-BFE8-47B392814159} + CompilerIdCXX + Win32Proj + + + 10.0.22581.0 + + + + + + + + + x64 + + + Application + v143 + MultiByte + + + + + + + <_ProjectFileVersion>10.0.30319.1 + .\ + $(Configuration)\ + false + + + + Disabled + %(PreprocessorDefinitions) + false + EnableFastChecks + MultiThreadedDebugDLL + + + TurnOffAllWarnings + + + + + + false + Console + + + + for %%i in (cl.exe) do %40echo CMAKE_CXX_COMPILER=%%~$PATH:i + + + + + + + + + + diff --git a/CMakeFiles/3.23.0-rc4/VCTargetsPath.txt b/CMakeFiles/3.23.0-rc4/VCTargetsPath.txt new file mode 100644 index 0000000..ac3a16a --- /dev/null +++ b/CMakeFiles/3.23.0-rc4/VCTargetsPath.txt @@ -0,0 +1 @@ +I:/vsent2022/MSBuild/Microsoft/VC/v170 diff --git a/CMakeFiles/3.23.0-rc4/VCTargetsPath.vcxproj b/CMakeFiles/3.23.0-rc4/VCTargetsPath.vcxproj new file mode 100644 index 0000000..7bcd038 --- /dev/null +++ b/CMakeFiles/3.23.0-rc4/VCTargetsPath.vcxproj @@ -0,0 +1,31 @@ + + + + + Debug + x64 + + + + {F3FC6D86-508D-3FB1-96D2-995F08B142EC} + Win32Proj + x64 + 10.0.22581.0 + + + + x64 + + + Utility + MultiByte + v143 + + + + + echo VCTargetsPath=$(VCTargetsPath) + + + + diff --git a/CMakeFiles/6a64f629f7894d851fbaf75ba03068b9/INSTALL_force.rule b/CMakeFiles/6a64f629f7894d851fbaf75ba03068b9/INSTALL_force.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/6a64f629f7894d851fbaf75ba03068b9/INSTALL_force.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/6a64f629f7894d851fbaf75ba03068b9/PACKAGE_force.rule b/CMakeFiles/6a64f629f7894d851fbaf75ba03068b9/PACKAGE_force.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/6a64f629f7894d851fbaf75ba03068b9/PACKAGE_force.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/8d200652f38e246405af94ee0782eb0e/INSTALL_force.rule b/CMakeFiles/8d200652f38e246405af94ee0782eb0e/INSTALL_force.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/8d200652f38e246405af94ee0782eb0e/INSTALL_force.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/8d200652f38e246405af94ee0782eb0e/PACKAGE_force.rule b/CMakeFiles/8d200652f38e246405af94ee0782eb0e/PACKAGE_force.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/8d200652f38e246405af94ee0782eb0e/PACKAGE_force.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/TargetDirectories.txt b/CMakeFiles/TargetDirectories.txt new file mode 100644 index 0000000..c4c48b0 --- /dev/null +++ b/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,18 @@ +D:/winflexbison/CMakeFiles/PACKAGE.dir +D:/winflexbison/CMakeFiles/INSTALL.dir +D:/winflexbison/CMakeFiles/ALL_BUILD.dir +D:/winflexbison/CMakeFiles/ZERO_CHECK.dir +D:/winflexbison/common/CMakeFiles/winflexbison_common.dir +D:/winflexbison/common/CMakeFiles/PACKAGE.dir +D:/winflexbison/common/CMakeFiles/INSTALL.dir +D:/winflexbison/common/CMakeFiles/ALL_BUILD.dir +D:/winflexbison/flex/CMakeFiles/win_flex.dir +D:/winflexbison/flex/CMakeFiles/fl.dir +D:/winflexbison/flex/CMakeFiles/PACKAGE.dir +D:/winflexbison/flex/CMakeFiles/INSTALL.dir +D:/winflexbison/flex/CMakeFiles/ALL_BUILD.dir +D:/winflexbison/bison/CMakeFiles/win_bison.dir +D:/winflexbison/bison/CMakeFiles/y.dir +D:/winflexbison/bison/CMakeFiles/PACKAGE.dir +D:/winflexbison/bison/CMakeFiles/INSTALL.dir +D:/winflexbison/bison/CMakeFiles/ALL_BUILD.dir diff --git a/CMakeFiles/cmake.check_cache b/CMakeFiles/cmake.check_cache new file mode 100644 index 0000000..3dccd73 --- /dev/null +++ b/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/INSTALL_force.rule b/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/INSTALL_force.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/INSTALL_force.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/PACKAGE_force.rule b/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/PACKAGE_force.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/PACKAGE_force.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/generate.stamp.rule b/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/generate.stamp.rule new file mode 100644 index 0000000..2d3998c --- /dev/null +++ b/CMakeFiles/dfdce5c0c86227006a5184daff4ed217/generate.stamp.rule @@ -0,0 +1 @@ +# generated from CMake diff --git a/CMakeFiles/generate.stamp b/CMakeFiles/generate.stamp new file mode 100644 index 0000000..9b5f49f --- /dev/null +++ b/CMakeFiles/generate.stamp @@ -0,0 +1 @@ +# CMake generation timestamp file for this directory. diff --git a/CMakeFiles/generate.stamp.depend b/CMakeFiles/generate.stamp.depend new file mode 100644 index 0000000..d88912b --- /dev/null +++ b/CMakeFiles/generate.stamp.depend @@ -0,0 +1,102 @@ +# CMake generation dependency list for this directory. +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeCCompiler.cmake.in +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeCCompilerABI.c +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeCInformation.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeCXXCompiler.cmake.in +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeCXXCompilerABI.cpp +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeCXXInformation.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeCommonLanguageInclude.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeCompilerIdDetection.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineCCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineCXXCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineCompileFeatures.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineCompilerABI.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineCompilerId.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineRCCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeDetermineSystem.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeFindBinUtils.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeGenericSystem.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeInitializeConfigs.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeLanguageInformation.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeParseImplicitIncludeInfo.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeParseImplicitLinkInfo.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeParseLibraryArchitecture.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeRCCompiler.cmake.in +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeRCInformation.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeSystem.cmake.in +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeSystemSpecificInformation.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeSystemSpecificInitialize.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeTestCCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeTestCXXCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeTestCompilerCommon.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CMakeTestRCCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CPack.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CPackComponent.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/ADSP-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/ARMCC-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/ARMClang-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/AppleClang-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Borland-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Bruce-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/CMakeCommonCompilerMacros.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Clang-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Clang-DetermineCompilerInternal.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Comeau-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Compaq-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Compaq-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Cray-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Embarcadero-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Fujitsu-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/GHS-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/GNU-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/HP-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/HP-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/IAR-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/IBMCPP-CXX-DetermineVersionInternal.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/IBMClang-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Intel-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/LCC-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/LCC-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/MSVC-C.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/MSVC-CXX.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/MSVC-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/NVHPC-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/NVIDIA-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/PGI-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/PathScale-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/SCO-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/SDCC-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/SunPro-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/SunPro-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/TI-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/VisualAge-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/Watcom-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/XL-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/XL-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/XLClang-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/XLClang-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/zOS-C-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Compiler/zOS-CXX-DetermineCompiler.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/CompilerId/VS-10.vcxproj.in +C:/Program Files/CMake/share/cmake-3.23/Modules/Internal/FeatureTesting.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Platform/Windows-Determine-CXX.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Platform/Windows-MSVC-C.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Platform/Windows-MSVC-CXX.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Platform/Windows-MSVC.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Platform/Windows.cmake +C:/Program Files/CMake/share/cmake-3.23/Modules/Platform/WindowsPaths.cmake +C:/Program Files/CMake/share/cmake-3.23/Templates/CPackConfig.cmake.in +D:/winflexbison/CMakeFiles/3.23.0-rc4/CMakeCCompiler.cmake +D:/winflexbison/CMakeFiles/3.23.0-rc4/CMakeCXXCompiler.cmake +D:/winflexbison/CMakeFiles/3.23.0-rc4/CMakeRCCompiler.cmake +D:/winflexbison/CMakeFiles/3.23.0-rc4/CMakeSystem.cmake +D:/winflexbison/CMakeLists.txt diff --git a/CMakeFiles/generate.stamp.list b/CMakeFiles/generate.stamp.list new file mode 100644 index 0000000..2538a73 --- /dev/null +++ b/CMakeFiles/generate.stamp.list @@ -0,0 +1,4 @@ +D:/winflexbison/CMakeFiles/generate.stamp +D:/winflexbison/common/CMakeFiles/generate.stamp +D:/winflexbison/flex/CMakeFiles/generate.stamp +D:/winflexbison/bison/CMakeFiles/generate.stamp diff --git a/CPackConfig.cmake b/CPackConfig.cmake new file mode 100644 index 0000000..2c0bfe5 --- /dev/null +++ b/CPackConfig.cmake @@ -0,0 +1,65 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_ARCHIVE_COMPONENT_INSTALL "OFF") +set(CPACK_BUILD_SOURCE_DIRS "D:/winflexbison;D:/winflexbison") +set(CPACK_CMAKE_GENERATOR "Visual Studio 17 2022") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "winflexbison built using CMake") +set(CPACK_GENERATOR "ZIP") +set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY "OFF") +set(CPACK_INSTALL_CMAKE_PROJECTS "D:/winflexbison;winflexbison;ALL;/") +set(CPACK_INSTALL_PREFIX "C:/Program Files (x86)/winflexbison") +set(CPACK_MODULE_PATH "") +set(CPACK_MONOLITHIC_INSTALL "ON") +set(CPACK_NSIS_DISPLAY_NAME "winflexbison master") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64") +set(CPACK_NSIS_PACKAGE_NAME "winflexbison master") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OUTPUT_CONFIG_FILE "D:/winflexbison/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION_FILE "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Winflexbison - Flex and Bison for Windows") +set(CPACK_PACKAGE_FILE_NAME "win_flex_bison-master") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "winflexbison master") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "winflexbison master") +set(CPACK_PACKAGE_NAME "winflexbison") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "master") +set(CPACK_PACKAGE_VERSION_MAJOR "0") +set(CPACK_PACKAGE_VERSION_MINOR "1") +set(CPACK_PACKAGE_VERSION_PATCH "1") +set(CPACK_RESOURCE_FILE_LICENSE "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericWelcome.txt") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_7Z "ON") +set(CPACK_SOURCE_GENERATOR "7Z;ZIP") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "D:/winflexbison/CPackSourceConfig.cmake") +set(CPACK_SOURCE_ZIP "ON") +set(CPACK_SYSTEM_NAME "win64") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "win64") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "D:/winflexbison/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/CPackSourceConfig.cmake b/CPackSourceConfig.cmake new file mode 100644 index 0000000..6a6105a --- /dev/null +++ b/CPackSourceConfig.cmake @@ -0,0 +1,74 @@ +# This file will be configured to contain variables for CPack. These variables +# should be set in the CMake list file of the project before CPack module is +# included. The list of available CPACK_xxx variables and their associated +# documentation may be obtained using +# cpack --help-variable-list +# +# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME) +# and some are specific to a generator +# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables +# usually begin with CPACK__xxxx. + + +set(CPACK_ARCHIVE_COMPONENT_INSTALL "OFF") +set(CPACK_BUILD_SOURCE_DIRS "D:/winflexbison;D:/winflexbison") +set(CPACK_CMAKE_GENERATOR "Visual Studio 17 2022") +set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE") +set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericDescription.txt") +set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "winflexbison built using CMake") +set(CPACK_GENERATOR "7Z;ZIP") +set(CPACK_GENERATOR "7Z;ZIP") +set(CPACK_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY "OFF") +set(CPACK_INSTALLED_DIRECTORIES "D:/winflexbison;/") +set(CPACK_INSTALL_CMAKE_PROJECTS "") +set(CPACK_INSTALL_PREFIX "C:/Program Files (x86)/winflexbison") +set(CPACK_MODULE_PATH "") +set(CPACK_MONOLITHIC_INSTALL "ON") +set(CPACK_NSIS_DISPLAY_NAME "winflexbison master") +set(CPACK_NSIS_INSTALLER_ICON_CODE "") +set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "") +set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64") +set(CPACK_NSIS_PACKAGE_NAME "winflexbison master") +set(CPACK_NSIS_UNINSTALL_NAME "Uninstall") +set(CPACK_OUTPUT_CONFIG_FILE "D:/winflexbison/CPackConfig.cmake") +set(CPACK_PACKAGE_DEFAULT_LOCATION "/") +set(CPACK_PACKAGE_DESCRIPTION_FILE "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericDescription.txt") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Winflexbison - Flex and Bison for Windows") +set(CPACK_PACKAGE_FILE_NAME "winflexbison-master-Source") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "winflexbison master") +set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "winflexbison master") +set(CPACK_PACKAGE_NAME "winflexbison") +set(CPACK_PACKAGE_RELOCATABLE "true") +set(CPACK_PACKAGE_VENDOR "Humanity") +set(CPACK_PACKAGE_VERSION "master") +set(CPACK_PACKAGE_VERSION_MAJOR "0") +set(CPACK_PACKAGE_VERSION_MINOR "1") +set(CPACK_PACKAGE_VERSION_PATCH "1") +set(CPACK_RESOURCE_FILE_LICENSE "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericLicense.txt") +set(CPACK_RESOURCE_FILE_README "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericDescription.txt") +set(CPACK_RESOURCE_FILE_WELCOME "C:/Program Files/CMake/share/cmake-3.23/Templates/CPack.GenericWelcome.txt") +set(CPACK_RPM_PACKAGE_SOURCES "ON") +set(CPACK_SET_DESTDIR "OFF") +set(CPACK_SOURCE_7Z "ON") +set(CPACK_SOURCE_GENERATOR "7Z;ZIP") +set(CPACK_SOURCE_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#") +set(CPACK_SOURCE_INSTALLED_DIRECTORIES "D:/winflexbison;/") +set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "D:/winflexbison/CPackSourceConfig.cmake") +set(CPACK_SOURCE_PACKAGE_FILE_NAME "winflexbison-master-Source") +set(CPACK_SOURCE_TOPLEVEL_TAG "win64-Source") +set(CPACK_SOURCE_ZIP "ON") +set(CPACK_STRIP_FILES "") +set(CPACK_SYSTEM_NAME "win64") +set(CPACK_THREADS "1") +set(CPACK_TOPLEVEL_TAG "win64-Source") +set(CPACK_WIX_SIZEOF_VOID_P "8") + +if(NOT CPACK_PROPERTIES_FILE) + set(CPACK_PROPERTIES_FILE "D:/winflexbison/CPackProperties.cmake") +endif() + +if(EXISTS ${CPACK_PROPERTIES_FILE}) + include(${CPACK_PROPERTIES_FILE}) +endif() diff --git a/INSTALL.vcxproj b/INSTALL.vcxproj new file mode 100644 index 0000000..67ea468 --- /dev/null +++ b/INSTALL.vcxproj @@ -0,0 +1,204 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D} + Win32Proj + 10.0.22581.0 + x64 + INSTALL + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\CMakeFiles\INSTALL_force + false + false + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + ALL_BUILD + false + Never + + + + + + \ No newline at end of file diff --git a/INSTALL.vcxproj.filters b/INSTALL.vcxproj.filters new file mode 100644 index 0000000..3a9c98f --- /dev/null +++ b/INSTALL.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/PACKAGE.vcxproj b/PACKAGE.vcxproj new file mode 100644 index 0000000..9b79d45 --- /dev/null +++ b/PACKAGE.vcxproj @@ -0,0 +1,216 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168} + Win32Proj + 10.0.22581.0 + x64 + PACKAGE + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\CMakeFiles\PACKAGE_force + false + false + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + ALL_BUILD + false + Never + + + + + + \ No newline at end of file diff --git a/PACKAGE.vcxproj.filters b/PACKAGE.vcxproj.filters new file mode 100644 index 0000000..724fddd --- /dev/null +++ b/PACKAGE.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/ZERO_CHECK.vcxproj b/ZERO_CHECK.vcxproj new file mode 100644 index 0000000..478e01f --- /dev/null +++ b/ZERO_CHECK.vcxproj @@ -0,0 +1,174 @@ + + + + x64 + + + false + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + Win32Proj + 10.0.22581.0 + x64 + ZERO_CHECK + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + Always + Checking Build System + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file D:/winflexbison/winflexbison.sln +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCompilerIdDetection.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompileFeatures.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerABI.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerId.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeFindBinUtils.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitIncludeInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitLinkInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseLibraryArchitecture.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystem.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCompilerCommon.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPack.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPackComponent.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ADSP-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMCC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\AppleClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Borland-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Bruce-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompilerInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Comeau-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Cray-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Embarcadero-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Fujitsu-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\FujitsuClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GHS-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IAR-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-C-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-CXX-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Intel-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IntelLLVM-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVHPC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVIDIA-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\OpenWatcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PGI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PathScale-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SCO-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SDCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TinyCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Watcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CompilerId\VS-10.vcxproj.in;C:\Program Files\CMake\share\cmake-3.23\Modules\Internal\FeatureTesting.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-Determine-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.23\Templates\CPackConfig.cmake.in;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCXXCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeRCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeSystem.cmake;D:\winflexbison\CMakeLists.txt;D:\winflexbison\bison\CMakeLists.txt;D:\winflexbison\common\CMakeLists.txt;D:\winflexbison\flex\CMakeLists.txt;%(AdditionalInputs) + D:\winflexbison\CMakeFiles\generate.stamp;D:\winflexbison\common\CMakeFiles\generate.stamp;D:\winflexbison\flex\CMakeFiles\generate.stamp;D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Checking Build System + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file D:/winflexbison/winflexbison.sln +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCompilerIdDetection.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompileFeatures.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerABI.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerId.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeFindBinUtils.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitIncludeInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitLinkInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseLibraryArchitecture.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystem.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCompilerCommon.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPack.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPackComponent.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ADSP-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMCC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\AppleClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Borland-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Bruce-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompilerInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Comeau-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Cray-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Embarcadero-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Fujitsu-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\FujitsuClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GHS-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IAR-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-C-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-CXX-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Intel-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IntelLLVM-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVHPC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVIDIA-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\OpenWatcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PGI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PathScale-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SCO-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SDCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TinyCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Watcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CompilerId\VS-10.vcxproj.in;C:\Program Files\CMake\share\cmake-3.23\Modules\Internal\FeatureTesting.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-Determine-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.23\Templates\CPackConfig.cmake.in;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCXXCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeRCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeSystem.cmake;D:\winflexbison\CMakeLists.txt;D:\winflexbison\bison\CMakeLists.txt;D:\winflexbison\common\CMakeLists.txt;D:\winflexbison\flex\CMakeLists.txt;%(AdditionalInputs) + D:\winflexbison\CMakeFiles\generate.stamp;D:\winflexbison\common\CMakeFiles\generate.stamp;D:\winflexbison\flex\CMakeFiles\generate.stamp;D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Checking Build System + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file D:/winflexbison/winflexbison.sln +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCompilerIdDetection.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompileFeatures.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerABI.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerId.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeFindBinUtils.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitIncludeInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitLinkInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseLibraryArchitecture.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystem.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCompilerCommon.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPack.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPackComponent.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ADSP-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMCC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\AppleClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Borland-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Bruce-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompilerInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Comeau-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Cray-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Embarcadero-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Fujitsu-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\FujitsuClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GHS-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IAR-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-C-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-CXX-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Intel-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IntelLLVM-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVHPC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVIDIA-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\OpenWatcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PGI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PathScale-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SCO-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SDCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TinyCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Watcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CompilerId\VS-10.vcxproj.in;C:\Program Files\CMake\share\cmake-3.23\Modules\Internal\FeatureTesting.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-Determine-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.23\Templates\CPackConfig.cmake.in;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCXXCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeRCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeSystem.cmake;D:\winflexbison\CMakeLists.txt;D:\winflexbison\bison\CMakeLists.txt;D:\winflexbison\common\CMakeLists.txt;D:\winflexbison\flex\CMakeLists.txt;%(AdditionalInputs) + D:\winflexbison\CMakeFiles\generate.stamp;D:\winflexbison\common\CMakeFiles\generate.stamp;D:\winflexbison\flex\CMakeFiles\generate.stamp;D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Checking Build System + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-list CMakeFiles/generate.stamp.list --vs-solution-file D:/winflexbison/winflexbison.sln +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCCompilerABI.c;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXCompilerABI.cpp;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCXXInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCommonLanguageInclude.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeCompilerIdDetection.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompileFeatures.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerABI.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineCompilerId.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeDetermineSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeFindBinUtils.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeGenericSystem.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeInitializeConfigs.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeLanguageInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitIncludeInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseImplicitLinkInfo.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeParseLibraryArchitecture.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCCompiler.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeRCInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystem.cmake.in;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInformation.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeSystemSpecificInitialize.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCXXCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestCompilerCommon.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CMakeTestRCCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPack.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CPackComponent.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ADSP-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMCC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\ARMClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\AppleClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Borland-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Bruce-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\CMakeCommonCompilerMacros.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Clang-DetermineCompilerInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Comeau-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Compaq-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Cray-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Embarcadero-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Fujitsu-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\FujitsuClang-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GHS-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\GNU-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\HP-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IAR-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-C-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMCPP-CXX-DetermineVersionInternal.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IBMClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Intel-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\IntelLLVM-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\LCC-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\MSVC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVHPC-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\NVIDIA-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\OpenWatcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PGI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\PathScale-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SCO-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SDCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\SunPro-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TI-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\TinyCC-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\VisualAge-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\Watcom-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XL-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\XLClang-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-C-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Compiler\zOS-CXX-DetermineCompiler.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\CompilerId\VS-10.vcxproj.in;C:\Program Files\CMake\share\cmake-3.23\Modules\Internal\FeatureTesting.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-Determine-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-C.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC-CXX.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows-MSVC.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\Windows.cmake;C:\Program Files\CMake\share\cmake-3.23\Modules\Platform\WindowsPaths.cmake;C:\Program Files\CMake\share\cmake-3.23\Templates\CPackConfig.cmake.in;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeCXXCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeRCCompiler.cmake;D:\winflexbison\CMakeFiles\3.23.0-rc4\CMakeSystem.cmake;D:\winflexbison\CMakeLists.txt;D:\winflexbison\bison\CMakeLists.txt;D:\winflexbison\common\CMakeLists.txt;D:\winflexbison\flex\CMakeLists.txt;%(AdditionalInputs) + D:\winflexbison\CMakeFiles\generate.stamp;D:\winflexbison\common\CMakeFiles\generate.stamp;D:\winflexbison\flex\CMakeFiles\generate.stamp;D:\winflexbison\bison\CMakeFiles\generate.stamp + false + + + + + + + + + + \ No newline at end of file diff --git a/ZERO_CHECK.vcxproj.filters b/ZERO_CHECK.vcxproj.filters new file mode 100644 index 0000000..034e1b1 --- /dev/null +++ b/ZERO_CHECK.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/bison/ALL_BUILD.vcxproj b/bison/ALL_BUILD.vcxproj new file mode 100644 index 0000000..9f3f91c --- /dev/null +++ b/bison/ALL_BUILD.vcxproj @@ -0,0 +1,188 @@ + + + + x64 + + + false + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + Win32Proj + 10.0.22581.0 + x64 + ALL_BUILD + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + Always + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {C9B72576-A174-320B-B833-C85152DF7E14} + win_bison + + + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B} + y + + + + + + \ No newline at end of file diff --git a/bison/ALL_BUILD.vcxproj.filters b/bison/ALL_BUILD.vcxproj.filters new file mode 100644 index 0000000..2ab02ee --- /dev/null +++ b/bison/ALL_BUILD.vcxproj.filters @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/bison/CMakeFiles/generate.stamp b/bison/CMakeFiles/generate.stamp new file mode 100644 index 0000000..9b5f49f --- /dev/null +++ b/bison/CMakeFiles/generate.stamp @@ -0,0 +1 @@ +# CMake generation timestamp file for this directory. diff --git a/bison/CMakeFiles/generate.stamp.depend b/bison/CMakeFiles/generate.stamp.depend new file mode 100644 index 0000000..d4e7cb3 --- /dev/null +++ b/bison/CMakeFiles/generate.stamp.depend @@ -0,0 +1,2 @@ +# CMake generation dependency list for this directory. +D:/winflexbison/bison/CMakeLists.txt diff --git a/bison/INSTALL.vcxproj b/bison/INSTALL.vcxproj new file mode 100644 index 0000000..1b8c91e --- /dev/null +++ b/bison/INSTALL.vcxproj @@ -0,0 +1,204 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D} + Win32Proj + 10.0.22581.0 + x64 + INSTALL + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\INSTALL_force + false + false + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + ALL_BUILD + false + Never + + + + + + \ No newline at end of file diff --git a/bison/INSTALL.vcxproj.filters b/bison/INSTALL.vcxproj.filters new file mode 100644 index 0000000..693b685 --- /dev/null +++ b/bison/INSTALL.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/bison/PACKAGE.vcxproj b/bison/PACKAGE.vcxproj new file mode 100644 index 0000000..ac0b4b0 --- /dev/null +++ b/bison/PACKAGE.vcxproj @@ -0,0 +1,216 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168} + Win32Proj + 10.0.22581.0 + x64 + PACKAGE + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\PACKAGE_force + false + false + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + ALL_BUILD + false + Never + + + + + + \ No newline at end of file diff --git a/bison/PACKAGE.vcxproj.filters b/bison/PACKAGE.vcxproj.filters new file mode 100644 index 0000000..d52d529 --- /dev/null +++ b/bison/PACKAGE.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/bison/cmake_install.cmake b/bison/cmake_install.cmake new file mode 100644 index 0000000..f205e91 --- /dev/null +++ b/bison/cmake_install.cmake @@ -0,0 +1,34 @@ +# Install script for directory: D:/winflexbison/bison + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/winflexbison") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + diff --git a/bison/win_bison.sln b/bison/win_bison.sln new file mode 100644 index 0000000..419bed6 --- /dev/null +++ b/bison/win_bison.sln @@ -0,0 +1,105 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + {C9B72576-A174-320B-B833-C85152DF7E14} = {C9B72576-A174-320B-B833-C85152DF7E14} + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B} = {91772CDA-0C57-3F00-A594-62BAEAFD6E3B} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "INSTALL", "INSTALL.vcxproj", "{1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}" + ProjectSection(ProjectDependencies) = postProject + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} = {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PACKAGE", "PACKAGE.vcxproj", "{3ED8E858-F15E-3B13-BE69-BFDF9D63E168}" + ProjectSection(ProjectDependencies) = postProject + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} = {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "..\\ZERO_CHECK.vcxproj", "{A4935C9F-62F8-3CF8-9EB5-442349923DB2}" + ProjectSection(ProjectDependencies) = postProject + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "win_bison", "win_bison.vcxproj", "{C9B72576-A174-320B-B833-C85152DF7E14}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + {DD225102-0724-3D42-8FF5-846CF53B9BA2} = {DD225102-0724-3D42-8FF5-846CF53B9BA2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winflexbison_common", "..\common\winflexbison_common.vcxproj", "{DD225102-0724-3D42-8FF5-846CF53B9BA2}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "y", "y.vcxproj", "{91772CDA-0C57-3F00-A594-62BAEAFD6E3B}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Release|x64 = Release|x64 + MinSizeRel|x64 = MinSizeRel|x64 + RelWithDebInfo|x64 = RelWithDebInfo|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Debug|x64.ActiveCfg = Debug|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Debug|x64.Build.0 = Debug|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Release|x64.ActiveCfg = Release|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Release|x64.Build.0 = Release|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.Debug|x64.ActiveCfg = Debug|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.Release|x64.ActiveCfg = Release|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.Debug|x64.ActiveCfg = Debug|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.Release|x64.ActiveCfg = Release|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Debug|x64.ActiveCfg = Debug|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Debug|x64.Build.0 = Debug|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Release|x64.ActiveCfg = Release|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Release|x64.Build.0 = Release|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.Debug|x64.ActiveCfg = Debug|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.Debug|x64.Build.0 = Debug|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.Release|x64.ActiveCfg = Release|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.Release|x64.Build.0 = Release|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Debug|x64.ActiveCfg = Debug|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Debug|x64.Build.0 = Debug|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Release|x64.ActiveCfg = Release|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Release|x64.Build.0 = Release|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.Debug|x64.ActiveCfg = Debug|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.Debug|x64.Build.0 = Debug|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.Release|x64.ActiveCfg = Release|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.Release|x64.Build.0 = Release|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {07937CBE-F42E-353D-9BA6-87520FE19DE8} + EndGlobalSection + GlobalSection(ExtensibilityAddIns) = postSolution + EndGlobalSection +EndGlobal diff --git a/bison/win_bison.vcxproj b/bison/win_bison.vcxproj new file mode 100644 index 0000000..6dd5399 --- /dev/null +++ b/bison/win_bison.vcxproj @@ -0,0 +1,475 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {C9B72576-A174-320B-B833-C85152DF7E14} + Win32Proj + 10.0.22581.0 + x64 + win_bison + NoUpgrade + + + + Application + MultiByte + v143 + + + Application + MultiByte + v143 + + + Application + MultiByte + v143 + + + Application + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + D:\winflexbison\bin\Debug\ + win_bison.dir\Debug\ + win_bison + .exe + true + true + D:\winflexbison\bin\Release\ + win_bison.dir\Release\ + win_bison + .exe + false + true + D:\winflexbison\bison\MinSizeRel\ + win_bison.dir\MinSizeRel\ + win_bison + .exe + false + true + D:\winflexbison\bison\RelWithDebInfo\ + win_bison.dir\RelWithDebInfo\ + win_bison + .exe + true + true + + + + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + EnableFastChecks + ProgramDatabase + + + Disabled + Disabled + NotUsing + MultiThreadedDebugDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="Debug" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"Debug\" + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -E copy_directory D:/winflexbison/bison/data D:/winflexbison/bin/Debug/data +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + ..\common\Debug\winflexbison_common.lib;kernel32.lib;user32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib + %(AdditionalLibraryDirectories) + %(AdditionalOptions) /machine:x64 + true + %(IgnoreSpecificDefaultLibraries) + D:/winflexbison/bison/Debug/win_bison.lib + D:/winflexbison/bin/Debug/win_bison.pdb + Console + + + false + + + + + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + AnySuitable + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="Release" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"Release\" + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -E copy_directory D:/winflexbison/bison/data D:/winflexbison/bin/Release/data +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + ..\common\Release\winflexbison_common.lib;kernel32.lib;user32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib + %(AdditionalLibraryDirectories) + %(AdditionalOptions) /machine:x64 + false + %(IgnoreSpecificDefaultLibraries) + D:/winflexbison/bison/Release/win_bison.lib + D:/winflexbison/bin/Release/win_bison.pdb + Console + + + false + + + + + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + OnlyExplicitInline + MinSpace + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="MinSizeRel" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"MinSizeRel\" + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -E copy_directory D:/winflexbison/bison/data D:/winflexbison/bison/MinSizeRel/data +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + ..\common\MinSizeRel\winflexbison_common.lib;kernel32.lib;user32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib + %(AdditionalLibraryDirectories) + %(AdditionalOptions) /machine:x64 + false + %(IgnoreSpecificDefaultLibraries) + D:/winflexbison/bison/MinSizeRel/win_bison.lib + D:/winflexbison/bison/MinSizeRel/win_bison.pdb + Console + + + false + + + + + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + ProgramDatabase + + + OnlyExplicitInline + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="RelWithDebInfo" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"RelWithDebInfo\" + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\bison\src;D:\winflexbison\bison;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -E copy_directory D:/winflexbison/bison/data D:/winflexbison/bison/RelWithDebInfo/data +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + ..\common\RelWithDebInfo\winflexbison_common.lib;kernel32.lib;user32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib + %(AdditionalLibraryDirectories) + %(AdditionalOptions) /machine:x64 + true + %(IgnoreSpecificDefaultLibraries) + D:/winflexbison/bison/RelWithDebInfo/win_bison.lib + D:/winflexbison/bison/RelWithDebInfo/win_bison.pdb + Console + + + false + + + + + Always + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {DD225102-0724-3D42-8FF5-846CF53B9BA2} + winflexbison_common + + + + + + \ No newline at end of file diff --git a/bison/win_bison.vcxproj.filters b/bison/win_bison.vcxproj.filters new file mode 100644 index 0000000..097b0fc --- /dev/null +++ b/bison/win_bison.vcxproj.filters @@ -0,0 +1,291 @@ + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + + + + {45072AC8-810B-32C8-ACA6-157EE3480F8B} + + + {9FC37CC4-790A-3787-8444-B60BBC7BBF58} + + + diff --git a/bison/y.vcxproj b/bison/y.vcxproj new file mode 100644 index 0000000..88d7b45 --- /dev/null +++ b/bison/y.vcxproj @@ -0,0 +1,286 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B} + Win32Proj + 10.0.22581.0 + x64 + y + NoUpgrade + + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + D:\winflexbison\bison\Debug\ + y.dir\Debug\ + y + .lib + D:\winflexbison\bison\Release\ + y.dir\Release\ + y + .lib + D:\winflexbison\bison\MinSizeRel\ + y.dir\MinSizeRel\ + y + .lib + D:\winflexbison\bison\RelWithDebInfo\ + y.dir\RelWithDebInfo\ + y + .lib + + + + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + EnableFastChecks + ProgramDatabase + + + Disabled + Disabled + NotUsing + MultiThreadedDebugDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="Debug" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"Debug\" + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + + + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + AnySuitable + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="Release" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"Release\" + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + + + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + OnlyExplicitInline + MinSpace + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="MinSizeRel" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"MinSizeRel\" + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + + + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + ProgramDatabase + + + OnlyExplicitInline + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="RelWithDebInfo" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"RelWithDebInfo\" + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + + + D:\winflexbison\bison\src;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + Always + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/bison/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\bison\CMakeFiles\generate.stamp + false + + + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + + + + \ No newline at end of file diff --git a/bison/y.vcxproj.filters b/bison/y.vcxproj.filters new file mode 100644 index 0000000..da40425 --- /dev/null +++ b/bison/y.vcxproj.filters @@ -0,0 +1,19 @@ + + + + + Source Files + + + Source Files + + + + + + + + {9FC37CC4-790A-3787-8444-B60BBC7BBF58} + + + diff --git a/cmake_install.cmake b/cmake_install.cmake new file mode 100644 index 0000000..dc4f112 --- /dev/null +++ b/cmake_install.cmake @@ -0,0 +1,84 @@ +# Install script for directory: D:/winflexbison + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/winflexbison") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/./" TYPE DIRECTORY FILES "D:/winflexbison/bin/Release/") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/./custom_build_rules/" TYPE DIRECTORY FILES "D:/winflexbison/custom_build_rules/") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/./data/" TYPE DIRECTORY FILES "D:/winflexbison/bison/data/") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/." TYPE FILE FILES "D:/winflexbison/flex/src/FlexLexer.h") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/." TYPE FILE FILES "D:/winflexbison/changelog.md") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/." TYPE FILE FILES "D:/winflexbison/COPYING") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/." TYPE FILE FILES "D:/winflexbison/COPYING.DOC") +endif() + +if("x${CMAKE_INSTALL_COMPONENT}x" STREQUAL "xUnspecifiedx" OR NOT CMAKE_INSTALL_COMPONENT) + file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/." TYPE FILE FILES "D:/winflexbison/README.md") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for each subdirectory. + include("D:/winflexbison/common/cmake_install.cmake") + include("D:/winflexbison/flex/cmake_install.cmake") + include("D:/winflexbison/bison/cmake_install.cmake") + +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "D:/winflexbison/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/common/ALL_BUILD.vcxproj b/common/ALL_BUILD.vcxproj new file mode 100644 index 0000000..f17dafd --- /dev/null +++ b/common/ALL_BUILD.vcxproj @@ -0,0 +1,184 @@ + + + + x64 + + + false + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + Win32Proj + 10.0.22581.0 + x64 + ALL_BUILD + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + Always + Building Custom Rule D:/winflexbison/common/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/common/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/common/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/common/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/common/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/common/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/common/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/common/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\generate.stamp + false + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {DD225102-0724-3D42-8FF5-846CF53B9BA2} + winflexbison_common + + + + + + \ No newline at end of file diff --git a/common/ALL_BUILD.vcxproj.filters b/common/ALL_BUILD.vcxproj.filters new file mode 100644 index 0000000..ff77557 --- /dev/null +++ b/common/ALL_BUILD.vcxproj.filters @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/common/CMakeFiles/generate.stamp b/common/CMakeFiles/generate.stamp new file mode 100644 index 0000000..9b5f49f --- /dev/null +++ b/common/CMakeFiles/generate.stamp @@ -0,0 +1 @@ +# CMake generation timestamp file for this directory. diff --git a/common/CMakeFiles/generate.stamp.depend b/common/CMakeFiles/generate.stamp.depend new file mode 100644 index 0000000..efd9a6f --- /dev/null +++ b/common/CMakeFiles/generate.stamp.depend @@ -0,0 +1,2 @@ +# CMake generation dependency list for this directory. +D:/winflexbison/common/CMakeLists.txt diff --git a/common/INSTALL.vcxproj b/common/INSTALL.vcxproj new file mode 100644 index 0000000..bfa3320 --- /dev/null +++ b/common/INSTALL.vcxproj @@ -0,0 +1,204 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D} + Win32Proj + 10.0.22581.0 + x64 + INSTALL + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\INSTALL_force + false + false + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + ALL_BUILD + false + Never + + + + + + \ No newline at end of file diff --git a/common/INSTALL.vcxproj.filters b/common/INSTALL.vcxproj.filters new file mode 100644 index 0000000..ab17922 --- /dev/null +++ b/common/INSTALL.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/common/PACKAGE.vcxproj b/common/PACKAGE.vcxproj new file mode 100644 index 0000000..2496d08 --- /dev/null +++ b/common/PACKAGE.vcxproj @@ -0,0 +1,216 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168} + Win32Proj + 10.0.22581.0 + x64 + PACKAGE + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\PACKAGE_force + false + false + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + ALL_BUILD + false + Never + + + + + + \ No newline at end of file diff --git a/common/PACKAGE.vcxproj.filters b/common/PACKAGE.vcxproj.filters new file mode 100644 index 0000000..0d13a3f --- /dev/null +++ b/common/PACKAGE.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/common/cmake_install.cmake b/common/cmake_install.cmake new file mode 100644 index 0000000..b9cfe02 --- /dev/null +++ b/common/cmake_install.cmake @@ -0,0 +1,34 @@ +# Install script for directory: D:/winflexbison/common + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/winflexbison") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + diff --git a/common/winflexbison_common.sln b/common/winflexbison_common.sln new file mode 100644 index 0000000..9236367 --- /dev/null +++ b/common/winflexbison_common.sln @@ -0,0 +1,77 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + {DD225102-0724-3D42-8FF5-846CF53B9BA2} = {DD225102-0724-3D42-8FF5-846CF53B9BA2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "INSTALL", "INSTALL.vcxproj", "{1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}" + ProjectSection(ProjectDependencies) = postProject + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} = {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PACKAGE", "PACKAGE.vcxproj", "{3ED8E858-F15E-3B13-BE69-BFDF9D63E168}" + ProjectSection(ProjectDependencies) = postProject + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} = {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "..\\ZERO_CHECK.vcxproj", "{A4935C9F-62F8-3CF8-9EB5-442349923DB2}" + ProjectSection(ProjectDependencies) = postProject + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winflexbison_common", "winflexbison_common.vcxproj", "{DD225102-0724-3D42-8FF5-846CF53B9BA2}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Release|x64 = Release|x64 + MinSizeRel|x64 = MinSizeRel|x64 + RelWithDebInfo|x64 = RelWithDebInfo|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Debug|x64.ActiveCfg = Debug|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Debug|x64.Build.0 = Debug|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Release|x64.ActiveCfg = Release|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Release|x64.Build.0 = Release|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.Debug|x64.ActiveCfg = Debug|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.Release|x64.ActiveCfg = Release|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.Debug|x64.ActiveCfg = Debug|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.Release|x64.ActiveCfg = Release|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Debug|x64.ActiveCfg = Debug|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Debug|x64.Build.0 = Debug|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Release|x64.ActiveCfg = Release|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Release|x64.Build.0 = Release|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Debug|x64.ActiveCfg = Debug|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Debug|x64.Build.0 = Debug|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Release|x64.ActiveCfg = Release|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Release|x64.Build.0 = Release|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {ABFECD0B-B1E6-3A51-8F4D-A99107EA5441} + EndGlobalSection + GlobalSection(ExtensibilityAddIns) = postSolution + EndGlobalSection +EndGlobal diff --git a/common/winflexbison_common.vcxproj b/common/winflexbison_common.vcxproj new file mode 100644 index 0000000..bd098f6 --- /dev/null +++ b/common/winflexbison_common.vcxproj @@ -0,0 +1,534 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {DD225102-0724-3D42-8FF5-846CF53B9BA2} + Win32Proj + 10.0.22581.0 + x64 + winflexbison_common + NoUpgrade + + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + D:\winflexbison\common\Debug\ + winflexbison_common.dir\Debug\ + winflexbison_common + .lib + D:\winflexbison\common\Release\ + winflexbison_common.dir\Release\ + winflexbison_common + .lib + D:\winflexbison\common\MinSizeRel\ + winflexbison_common.dir\MinSizeRel\ + winflexbison_common + .lib + D:\winflexbison\common\RelWithDebInfo\ + winflexbison_common.dir\RelWithDebInfo\ + winflexbison_common + .lib + + + + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + EnableFastChecks + ProgramDatabase + + + Disabled + Disabled + NotUsing + MultiThreadedDebugDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;_LIB;CMAKE_INTDIR="Debug" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;_LIB;CMAKE_INTDIR=\"Debug\" + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + AnySuitable + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;_LIB;CMAKE_INTDIR="Release" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;_LIB;CMAKE_INTDIR=\"Release\" + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + OnlyExplicitInline + MinSpace + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;_LIB;CMAKE_INTDIR="MinSizeRel" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;_LIB;CMAKE_INTDIR=\"MinSizeRel\" + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + ProgramDatabase + + + OnlyExplicitInline + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;_LIB;CMAKE_INTDIR="RelWithDebInfo" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;_LIB;CMAKE_INTDIR=\"RelWithDebInfo\" + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + Always + Building Custom Rule D:/winflexbison/common/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/common/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/common/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/common/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/common/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/common/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/common/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/common/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\common\CMakeFiles\generate.stamp + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + + + + \ No newline at end of file diff --git a/common/winflexbison_common.vcxproj.filters b/common/winflexbison_common.vcxproj.filters new file mode 100644 index 0000000..9a81047 --- /dev/null +++ b/common/winflexbison_common.vcxproj.filters @@ -0,0 +1,768 @@ + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + + + + {45072AC8-810B-32C8-ACA6-157EE3480F8B} + + + {9FC37CC4-790A-3787-8444-B60BBC7BBF58} + + + diff --git a/flex/ALL_BUILD.vcxproj b/flex/ALL_BUILD.vcxproj new file mode 100644 index 0000000..9ac2050 --- /dev/null +++ b/flex/ALL_BUILD.vcxproj @@ -0,0 +1,188 @@ + + + + x64 + + + false + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + Win32Proj + 10.0.22581.0 + x64 + ALL_BUILD + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + %(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + + + Always + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3} + fl + + + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A} + win_flex + + + + + + \ No newline at end of file diff --git a/flex/ALL_BUILD.vcxproj.filters b/flex/ALL_BUILD.vcxproj.filters new file mode 100644 index 0000000..abac6ce --- /dev/null +++ b/flex/ALL_BUILD.vcxproj.filters @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/flex/CMakeFiles/generate.stamp b/flex/CMakeFiles/generate.stamp new file mode 100644 index 0000000..9b5f49f --- /dev/null +++ b/flex/CMakeFiles/generate.stamp @@ -0,0 +1 @@ +# CMake generation timestamp file for this directory. diff --git a/flex/CMakeFiles/generate.stamp.depend b/flex/CMakeFiles/generate.stamp.depend new file mode 100644 index 0000000..fd0f86f --- /dev/null +++ b/flex/CMakeFiles/generate.stamp.depend @@ -0,0 +1,2 @@ +# CMake generation dependency list for this directory. +D:/winflexbison/flex/CMakeLists.txt diff --git a/flex/INSTALL.vcxproj b/flex/INSTALL.vcxproj new file mode 100644 index 0000000..f536b49 --- /dev/null +++ b/flex/INSTALL.vcxproj @@ -0,0 +1,204 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D} + Win32Proj + 10.0.22581.0 + x64 + INSTALL + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + Always + + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\INSTALL_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\INSTALL_force + false + false + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + ALL_BUILD + false + Never + + + + + + \ No newline at end of file diff --git a/flex/INSTALL.vcxproj.filters b/flex/INSTALL.vcxproj.filters new file mode 100644 index 0000000..f17deb9 --- /dev/null +++ b/flex/INSTALL.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/flex/PACKAGE.vcxproj b/flex/PACKAGE.vcxproj new file mode 100644 index 0000000..ca90135 --- /dev/null +++ b/flex/PACKAGE.vcxproj @@ -0,0 +1,216 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168} + Win32Proj + 10.0.22581.0 + x64 + PACKAGE + NoUpgrade + + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + Utility + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + $(Platform)\$(Configuration)\$(ProjectName)\ + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd D:\winflexbison +if %errorlevel% neq 0 goto :cmEnd +D: +if %errorlevel% neq 0 goto :cmEnd +"C:\Program Files\CMake\bin\cpack.exe" -C $(Configuration) --config ./CPackConfig.cmake +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + + + + + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\PACKAGE_force + false + false + + setlocal +cd . +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\PACKAGE_force + false + false + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + ALL_BUILD + false + Never + + + + + + \ No newline at end of file diff --git a/flex/PACKAGE.vcxproj.filters b/flex/PACKAGE.vcxproj.filters new file mode 100644 index 0000000..6403b6e --- /dev/null +++ b/flex/PACKAGE.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + CMake Rules + + + + + {E92C022B-F728-305B-88DB-5D3CC34AB085} + + + diff --git a/flex/cmake_install.cmake b/flex/cmake_install.cmake new file mode 100644 index 0000000..0bf2abe --- /dev/null +++ b/flex/cmake_install.cmake @@ -0,0 +1,34 @@ +# Install script for directory: D:/winflexbison/flex + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/winflexbison") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + diff --git a/flex/fl.vcxproj b/flex/fl.vcxproj new file mode 100644 index 0000000..0853c60 --- /dev/null +++ b/flex/fl.vcxproj @@ -0,0 +1,286 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3} + Win32Proj + 10.0.22581.0 + x64 + fl + NoUpgrade + + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + StaticLibrary + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + D:\winflexbison\flex\Debug\ + fl.dir\Debug\ + fl + .lib + D:\winflexbison\flex\Release\ + fl.dir\Release\ + fl + .lib + D:\winflexbison\flex\MinSizeRel\ + fl.dir\MinSizeRel\ + fl + .lib + D:\winflexbison\flex\RelWithDebInfo\ + fl.dir\RelWithDebInfo\ + fl + .lib + + + + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + EnableFastChecks + ProgramDatabase + + + Disabled + Disabled + NotUsing + MultiThreadedDebugDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="Debug" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"Debug\" + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + + + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + AnySuitable + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="Release" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"Release\" + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + + + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + OnlyExplicitInline + MinSpace + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="MinSizeRel" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"MinSizeRel\" + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + + + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + ProgramDatabase + + + OnlyExplicitInline + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="RelWithDebInfo" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"RelWithDebInfo\" + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + + + D:\winflexbison\flex\src;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + %(AdditionalOptions) /machine:x64 + + + + + Always + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + + + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + + + + \ No newline at end of file diff --git a/flex/fl.vcxproj.filters b/flex/fl.vcxproj.filters new file mode 100644 index 0000000..7784c31 --- /dev/null +++ b/flex/fl.vcxproj.filters @@ -0,0 +1,19 @@ + + + + + Source Files + + + Source Files + + + + + + + + {9FC37CC4-790A-3787-8444-B60BBC7BBF58} + + + diff --git a/flex/win_flex.sln b/flex/win_flex.sln new file mode 100644 index 0000000..3426cc1 --- /dev/null +++ b/flex/win_flex.sln @@ -0,0 +1,105 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3} = {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3} + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A} = {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "INSTALL", "INSTALL.vcxproj", "{1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}" + ProjectSection(ProjectDependencies) = postProject + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} = {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PACKAGE", "PACKAGE.vcxproj", "{3ED8E858-F15E-3B13-BE69-BFDF9D63E168}" + ProjectSection(ProjectDependencies) = postProject + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} = {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "..\\ZERO_CHECK.vcxproj", "{A4935C9F-62F8-3CF8-9EB5-442349923DB2}" + ProjectSection(ProjectDependencies) = postProject + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fl", "fl.vcxproj", "{5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "win_flex", "win_flex.vcxproj", "{D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + {DD225102-0724-3D42-8FF5-846CF53B9BA2} = {DD225102-0724-3D42-8FF5-846CF53B9BA2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winflexbison_common", "..\common\winflexbison_common.vcxproj", "{DD225102-0724-3D42-8FF5-846CF53B9BA2}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Release|x64 = Release|x64 + MinSizeRel|x64 = MinSizeRel|x64 + RelWithDebInfo|x64 = RelWithDebInfo|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Debug|x64.ActiveCfg = Debug|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Debug|x64.Build.0 = Debug|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Release|x64.ActiveCfg = Release|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Release|x64.Build.0 = Release|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.Debug|x64.ActiveCfg = Debug|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.Release|x64.ActiveCfg = Release|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.Debug|x64.ActiveCfg = Debug|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.Release|x64.ActiveCfg = Release|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Debug|x64.ActiveCfg = Debug|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Debug|x64.Build.0 = Debug|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Release|x64.ActiveCfg = Release|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Release|x64.Build.0 = Release|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.Debug|x64.ActiveCfg = Debug|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.Debug|x64.Build.0 = Debug|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.Release|x64.ActiveCfg = Release|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.Release|x64.Build.0 = Release|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.Debug|x64.ActiveCfg = Debug|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.Debug|x64.Build.0 = Debug|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.Release|x64.ActiveCfg = Release|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.Release|x64.Build.0 = Release|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Debug|x64.ActiveCfg = Debug|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Debug|x64.Build.0 = Debug|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Release|x64.ActiveCfg = Release|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Release|x64.Build.0 = Release|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {D79ABF6C-FD02-3563-B927-B4024B08279B} + EndGlobalSection + GlobalSection(ExtensibilityAddIns) = postSolution + EndGlobalSection +EndGlobal diff --git a/flex/win_flex.vcxproj b/flex/win_flex.vcxproj new file mode 100644 index 0000000..65e84e7 --- /dev/null +++ b/flex/win_flex.vcxproj @@ -0,0 +1,366 @@ + + + + x64 + + + + Debug + x64 + + + Release + x64 + + + MinSizeRel + x64 + + + RelWithDebInfo + x64 + + + + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A} + Win32Proj + 10.0.22581.0 + x64 + win_flex + NoUpgrade + + + + Application + MultiByte + v143 + + + Application + MultiByte + v143 + + + Application + MultiByte + v143 + + + Application + MultiByte + v143 + + + + + + + + + + <_ProjectFileVersion>10.0.20506.1 + D:\winflexbison\bin\Debug\ + win_flex.dir\Debug\ + win_flex + .exe + true + true + D:\winflexbison\bin\Release\ + win_flex.dir\Release\ + win_flex + .exe + false + true + D:\winflexbison\flex\MinSizeRel\ + win_flex.dir\MinSizeRel\ + win_flex + .exe + false + true + D:\winflexbison\flex\RelWithDebInfo\ + win_flex.dir\RelWithDebInfo\ + win_flex + .exe + true + true + + + + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + EnableFastChecks + ProgramDatabase + + + Disabled + Disabled + NotUsing + MultiThreadedDebugDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="Debug" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_DEBUG;_WINDOWS;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"Debug\" + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + ..\common\Debug\winflexbison_common.lib;kernel32.lib;user32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib + %(AdditionalLibraryDirectories) + %(AdditionalOptions) /machine:x64 + true + %(IgnoreSpecificDefaultLibraries) + D:/winflexbison/flex/Debug/win_flex.lib + D:/winflexbison/bin/Debug/win_flex.pdb + Console + + + false + + + + + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + AnySuitable + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="Release" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"Release\" + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + ..\common\Release\winflexbison_common.lib;kernel32.lib;user32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib + %(AdditionalLibraryDirectories) + %(AdditionalOptions) /machine:x64 + false + %(IgnoreSpecificDefaultLibraries) + D:/winflexbison/flex/Release/win_flex.lib + D:/winflexbison/bin/Release/win_flex.pdb + Console + + + false + + + + + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + + + OnlyExplicitInline + MinSpace + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="MinSizeRel" + $(IntDir) + + + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"MinSizeRel\" + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + ..\common\MinSizeRel\winflexbison_common.lib;kernel32.lib;user32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib + %(AdditionalLibraryDirectories) + %(AdditionalOptions) /machine:x64 + false + %(IgnoreSpecificDefaultLibraries) + D:/winflexbison/flex/MinSizeRel/win_flex.lib + D:/winflexbison/flex/MinSizeRel/win_flex.pdb + Console + + + false + + + + + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + %(AdditionalOptions) /source-charset:utf-8 + $(IntDir) + ProgramDatabase + + + OnlyExplicitInline + MaxSpeed + NotUsing + MultiThreadedDLL + false + Level3 + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR="RelWithDebInfo" + $(IntDir) + + + %(PreprocessorDefinitions);WIN32;_WINDOWS;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;inline=__inline;restrict=__restrict;__extension__;CMAKE_INTDIR=\"RelWithDebInfo\" + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + + + D:\winflexbison\flex\src;D:\winflexbison\common\misc;D:\winflexbison\common\m4;D:\winflexbison\common\m4\lib;%(AdditionalIncludeDirectories) + $(ProjectDir)/$(IntDir) + %(Filename).h + %(Filename).tlb + %(Filename)_i.c + %(Filename)_p.c + + + ..\common\RelWithDebInfo\winflexbison_common.lib;kernel32.lib;user32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib + %(AdditionalLibraryDirectories) + %(AdditionalOptions) /machine:x64 + true + %(IgnoreSpecificDefaultLibraries) + D:/winflexbison/flex/RelWithDebInfo/win_flex.lib + D:/winflexbison/flex/RelWithDebInfo/win_flex.pdb + Console + + + false + + + + + Always + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + Building Custom Rule D:/winflexbison/flex/CMakeLists.txt + setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd + %(AdditionalInputs) + D:\winflexbison\flex\CMakeFiles\generate.stamp + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + ZERO_CHECK + false + Never + + + {DD225102-0724-3D42-8FF5-846CF53B9BA2} + winflexbison_common + + + + + + \ No newline at end of file diff --git a/flex/win_flex.vcxproj.filters b/flex/win_flex.vcxproj.filters new file mode 100644 index 0000000..bbb54c1 --- /dev/null +++ b/flex/win_flex.vcxproj.filters @@ -0,0 +1,108 @@ + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + + + + {45072AC8-810B-32C8-ACA6-157EE3480F8B} + + + {9FC37CC4-790A-3787-8444-B60BBC7BBF58} + + + diff --git a/winflexbison.sln b/winflexbison.sln new file mode 100644 index 0000000..8ca9217 --- /dev/null +++ b/winflexbison.sln @@ -0,0 +1,135 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "ALL_BUILD.vcxproj", "{A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3} = {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3} + {C9B72576-A174-320B-B833-C85152DF7E14} = {C9B72576-A174-320B-B833-C85152DF7E14} + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A} = {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A} + {DD225102-0724-3D42-8FF5-846CF53B9BA2} = {DD225102-0724-3D42-8FF5-846CF53B9BA2} + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B} = {91772CDA-0C57-3F00-A594-62BAEAFD6E3B} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "INSTALL", "INSTALL.vcxproj", "{1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}" + ProjectSection(ProjectDependencies) = postProject + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} = {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PACKAGE", "PACKAGE.vcxproj", "{3ED8E858-F15E-3B13-BE69-BFDF9D63E168}" + ProjectSection(ProjectDependencies) = postProject + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} = {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0} + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZERO_CHECK", "ZERO_CHECK.vcxproj", "{A4935C9F-62F8-3CF8-9EB5-442349923DB2}" + ProjectSection(ProjectDependencies) = postProject + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fl", "flex\fl.vcxproj", "{5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "win_bison", "bison\win_bison.vcxproj", "{C9B72576-A174-320B-B833-C85152DF7E14}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + {DD225102-0724-3D42-8FF5-846CF53B9BA2} = {DD225102-0724-3D42-8FF5-846CF53B9BA2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "win_flex", "flex\win_flex.vcxproj", "{D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + {DD225102-0724-3D42-8FF5-846CF53B9BA2} = {DD225102-0724-3D42-8FF5-846CF53B9BA2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winflexbison_common", "common\winflexbison_common.vcxproj", "{DD225102-0724-3D42-8FF5-846CF53B9BA2}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "y", "bison\y.vcxproj", "{91772CDA-0C57-3F00-A594-62BAEAFD6E3B}" + ProjectSection(ProjectDependencies) = postProject + {A4935C9F-62F8-3CF8-9EB5-442349923DB2} = {A4935C9F-62F8-3CF8-9EB5-442349923DB2} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Release|x64 = Release|x64 + MinSizeRel|x64 = MinSizeRel|x64 + RelWithDebInfo|x64 = RelWithDebInfo|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Debug|x64.ActiveCfg = Debug|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Debug|x64.Build.0 = Debug|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Release|x64.ActiveCfg = Release|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.Release|x64.Build.0 = Release|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A436E7B0-A3E8-30D6-86B7-F3EA31BF54D0}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.Debug|x64.ActiveCfg = Debug|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.Release|x64.ActiveCfg = Release|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {1F5E5ACE-40E9-3AFE-BBF2-FFCC29F3343D}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.Debug|x64.ActiveCfg = Debug|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.Release|x64.ActiveCfg = Release|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {3ED8E858-F15E-3B13-BE69-BFDF9D63E168}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Debug|x64.ActiveCfg = Debug|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Debug|x64.Build.0 = Debug|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Release|x64.ActiveCfg = Release|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.Release|x64.Build.0 = Release|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {A4935C9F-62F8-3CF8-9EB5-442349923DB2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.Debug|x64.ActiveCfg = Debug|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.Debug|x64.Build.0 = Debug|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.Release|x64.ActiveCfg = Release|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.Release|x64.Build.0 = Release|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {5E47D4DE-B1D7-334B-A3D8-CC2605810EB3}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.Debug|x64.ActiveCfg = Debug|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.Debug|x64.Build.0 = Debug|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.Release|x64.ActiveCfg = Release|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.Release|x64.Build.0 = Release|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {C9B72576-A174-320B-B833-C85152DF7E14}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.Debug|x64.ActiveCfg = Debug|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.Debug|x64.Build.0 = Debug|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.Release|x64.ActiveCfg = Release|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.Release|x64.Build.0 = Release|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {D1FAA1A5-3930-3DED-8165-9294DCC7FA2A}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Debug|x64.ActiveCfg = Debug|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Debug|x64.Build.0 = Debug|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Release|x64.ActiveCfg = Release|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.Release|x64.Build.0 = Release|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {DD225102-0724-3D42-8FF5-846CF53B9BA2}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.Debug|x64.ActiveCfg = Debug|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.Debug|x64.Build.0 = Debug|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.Release|x64.ActiveCfg = Release|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.Release|x64.Build.0 = Release|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.MinSizeRel|x64.ActiveCfg = MinSizeRel|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.MinSizeRel|x64.Build.0 = MinSizeRel|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.RelWithDebInfo|x64.ActiveCfg = RelWithDebInfo|x64 + {91772CDA-0C57-3F00-A594-62BAEAFD6E3B}.RelWithDebInfo|x64.Build.0 = RelWithDebInfo|x64 + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {8D304F0E-922C-3567-9686-DA6C4039D935} + EndGlobalSection + GlobalSection(ExtensibilityAddIns) = postSolution + EndGlobalSection +EndGlobal From 6bde31ed9222ba435f8649ad5d9d9316a612da30 Mon Sep 17 00:00:00 2001 From: Northy1985 <100786104+Northy1985@users.noreply.github.com> Date: Tue, 5 Apr 2022 22:15:32 +0100 Subject: [PATCH 2/2] setup update --- ALL_BUILD.vcxproj | 2 + .../win64/ZIP/win_flex_bison-master.zip | Bin 0 -> 1012809 bytes .../win64/ZIP/win_flex_bison-master/COPYING | 674 ++++ .../ZIP/win_flex_bison-master/COPYING.DOC | 451 +++ .../ZIP/win_flex_bison-master/FlexLexer.h | 220 + .../win64/ZIP/win_flex_bison-master/README.md | 34 + .../ZIP/win_flex_bison-master/changelog.md | 166 + .../custom_build_rules/README.md | 173 + .../custom_build_rules/docs/1.png | Bin 0 -> 31654 bytes .../custom_build_rules/docs/2.png | Bin 0 -> 11445 bytes .../custom_build_rules/docs/3.png | Bin 0 -> 7316 bytes .../custom_build_rules/docs/4.png | Bin 0 -> 12213 bytes .../custom_build_rules/docs/5.png | Bin 0 -> 11534 bytes .../custom_build_rules/docs/6.png | Bin 0 -> 15611 bytes .../docs/BisonProperties.png | Bin 0 -> 27186 bytes .../docs/FlexProperties.png | Bin 0 -> 26767 bytes .../custom_build_rules/docs/Flex_debuging.png | Bin 0 -> 27219 bytes .../custom_build_rules/docs/Properties.png | Bin 0 -> 31446 bytes .../custom_build_rules/docs/Verbosity.png | Bin 0 -> 29722 bytes .../win_bison_custom_build.props | 23 + .../win_bison_custom_build.targets | 91 + .../win_bison_only/win_bison_custom_build.xml | 281 ++ .../win_flex_bison_custom_build.props | 43 + .../win_flex_bison_custom_build.targets | 178 + .../win_flex_bison_custom_build.xml | 521 +++ .../win_flex_only/win_flex_custom_build.props | 23 + .../win_flex_custom_build.targets | 94 + .../win_flex_only/win_flex_custom_build.xml | 243 ++ .../ZIP/win_flex_bison-master/data/README.md | 227 ++ .../data/bison-default.css | 61 + .../ZIP/win_flex_bison-master/data/local.mk | 58 + .../data/m4sugar/foreach.m4 | 362 ++ .../data/m4sugar/m4sugar.m4 | 3329 ++++++++++++++++ .../data/skeletons/bison.m4 | 1241 ++++++ .../data/skeletons/c++-skel.m4 | 27 + .../data/skeletons/c++.m4 | 778 ++++ .../data/skeletons/c-like.m4 | 72 + .../data/skeletons/c-skel.m4 | 27 + .../win_flex_bison-master/data/skeletons/c.m4 | 1125 ++++++ .../data/skeletons/d-skel.m4 | 26 + .../win_flex_bison-master/data/skeletons/d.m4 | 628 +++ .../data/skeletons/glr.c | 2763 +++++++++++++ .../data/skeletons/glr.cc | 397 ++ .../data/skeletons/glr2.cc | 3533 +++++++++++++++++ .../data/skeletons/java-skel.m4 | 27 + .../data/skeletons/java.m4 | 502 +++ .../data/skeletons/lalr1.cc | 1633 ++++++++ .../data/skeletons/lalr1.d | 1326 +++++++ .../data/skeletons/lalr1.java | 1303 ++++++ .../data/skeletons/location.cc | 380 ++ .../data/skeletons/stack.hh | 157 + .../data/skeletons/traceon.m4 | 2 + .../data/skeletons/variant.hh | 525 +++ .../data/skeletons/yacc.c | 2209 +++++++++++ .../win_flex_bison-master/data/xslt/bison.xsl | 105 + .../data/xslt/xml2dot.xsl | 401 ++ .../data/xslt/xml2text.xsl | 572 +++ .../data/xslt/xml2xhtml.xsl | 765 ++++ .../ZIP/win_flex_bison-master/win_bison.exe | Bin 0 -> 611840 bytes .../ZIP/win_flex_bison-master/win_flex.exe | Bin 0 -> 491008 bytes bison/MinSizeRel/data/README.md | 227 ++ bison/MinSizeRel/data/bison-default.css | 61 + bison/MinSizeRel/data/local.mk | 58 + bison/MinSizeRel/data/m4sugar/foreach.m4 | 362 ++ bison/MinSizeRel/data/m4sugar/m4sugar.m4 | 3329 ++++++++++++++++ bison/MinSizeRel/data/skeletons/bison.m4 | 1241 ++++++ bison/MinSizeRel/data/skeletons/c++-skel.m4 | 27 + bison/MinSizeRel/data/skeletons/c++.m4 | 778 ++++ bison/MinSizeRel/data/skeletons/c-like.m4 | 72 + bison/MinSizeRel/data/skeletons/c-skel.m4 | 27 + bison/MinSizeRel/data/skeletons/c.m4 | 1125 ++++++ bison/MinSizeRel/data/skeletons/d-skel.m4 | 26 + bison/MinSizeRel/data/skeletons/d.m4 | 628 +++ bison/MinSizeRel/data/skeletons/glr.c | 2763 +++++++++++++ bison/MinSizeRel/data/skeletons/glr.cc | 397 ++ bison/MinSizeRel/data/skeletons/glr2.cc | 3533 +++++++++++++++++ bison/MinSizeRel/data/skeletons/java-skel.m4 | 27 + bison/MinSizeRel/data/skeletons/java.m4 | 502 +++ bison/MinSizeRel/data/skeletons/lalr1.cc | 1633 ++++++++ bison/MinSizeRel/data/skeletons/lalr1.d | 1326 +++++++ bison/MinSizeRel/data/skeletons/lalr1.java | 1303 ++++++ bison/MinSizeRel/data/skeletons/location.cc | 380 ++ bison/MinSizeRel/data/skeletons/stack.hh | 157 + bison/MinSizeRel/data/skeletons/traceon.m4 | 2 + bison/MinSizeRel/data/skeletons/variant.hh | 525 +++ bison/MinSizeRel/data/skeletons/yacc.c | 2209 +++++++++++ bison/MinSizeRel/data/xslt/bison.xsl | 105 + bison/MinSizeRel/data/xslt/xml2dot.xsl | 401 ++ bison/MinSizeRel/data/xslt/xml2text.xsl | 572 +++ bison/MinSizeRel/data/xslt/xml2xhtml.xsl | 765 ++++ bison/MinSizeRel/win_bison.exe | Bin 0 -> 510976 bytes bison/MinSizeRel/y.lib | Bin 0 -> 2722 bytes bison/RelWithDebInfo/data/README.md | 227 ++ bison/RelWithDebInfo/data/bison-default.css | 61 + bison/RelWithDebInfo/data/local.mk | 58 + bison/RelWithDebInfo/data/m4sugar/foreach.m4 | 362 ++ bison/RelWithDebInfo/data/m4sugar/m4sugar.m4 | 3329 ++++++++++++++++ bison/RelWithDebInfo/data/skeletons/bison.m4 | 1241 ++++++ .../RelWithDebInfo/data/skeletons/c++-skel.m4 | 27 + bison/RelWithDebInfo/data/skeletons/c++.m4 | 778 ++++ bison/RelWithDebInfo/data/skeletons/c-like.m4 | 72 + bison/RelWithDebInfo/data/skeletons/c-skel.m4 | 27 + bison/RelWithDebInfo/data/skeletons/c.m4 | 1125 ++++++ bison/RelWithDebInfo/data/skeletons/d-skel.m4 | 26 + bison/RelWithDebInfo/data/skeletons/d.m4 | 628 +++ bison/RelWithDebInfo/data/skeletons/glr.c | 2763 +++++++++++++ bison/RelWithDebInfo/data/skeletons/glr.cc | 397 ++ bison/RelWithDebInfo/data/skeletons/glr2.cc | 3533 +++++++++++++++++ .../data/skeletons/java-skel.m4 | 27 + bison/RelWithDebInfo/data/skeletons/java.m4 | 502 +++ bison/RelWithDebInfo/data/skeletons/lalr1.cc | 1633 ++++++++ bison/RelWithDebInfo/data/skeletons/lalr1.d | 1326 +++++++ .../RelWithDebInfo/data/skeletons/lalr1.java | 1303 ++++++ .../RelWithDebInfo/data/skeletons/location.cc | 380 ++ bison/RelWithDebInfo/data/skeletons/stack.hh | 157 + .../RelWithDebInfo/data/skeletons/traceon.m4 | 2 + .../RelWithDebInfo/data/skeletons/variant.hh | 525 +++ bison/RelWithDebInfo/data/skeletons/yacc.c | 2209 +++++++++++ bison/RelWithDebInfo/data/xslt/bison.xsl | 105 + bison/RelWithDebInfo/data/xslt/xml2dot.xsl | 401 ++ bison/RelWithDebInfo/data/xslt/xml2text.xsl | 572 +++ bison/RelWithDebInfo/data/xslt/xml2xhtml.xsl | 765 ++++ bison/RelWithDebInfo/win_bison.exe | Bin 0 -> 805376 bytes bison/RelWithDebInfo/y.lib | Bin 0 -> 6290 bytes .../MinSizeRel/win_bison.exe.recipe | 14 + .../win_bison.tlog/CL.command.1.tlog | Bin 0 -> 54186 bytes .../MinSizeRel/win_bison.tlog/CL.read.1.tlog | Bin 0 -> 320376 bytes .../MinSizeRel/win_bison.tlog/CL.write.1.tlog | Bin 0 -> 8606 bytes .../win_bison.tlog/CustomBuild.command.1.tlog | 10 + .../win_bison.tlog/CustomBuild.read.1.tlog | 1 + .../win_bison.tlog/CustomBuild.write.1.tlog | 2 + .../win_bison.tlog/link.command.1.tlog | Bin 0 -> 9792 bytes .../win_bison.tlog/link.read.1.tlog | Bin 0 -> 13072 bytes .../win_bison.tlog/link.write.1.tlog | Bin 0 -> 5370 bytes .../win_bison.tlog/win_bison.lastbuildstate | 2 + .../RelWithDebInfo/win_bison.exe.recipe | 14 + .../win_bison.tlog/CL.command.1.tlog | Bin 0 -> 55594 bytes .../win_bison.tlog/CL.read.1.tlog | Bin 0 -> 320376 bytes .../win_bison.tlog/CL.write.1.tlog | Bin 0 -> 17958 bytes .../win_bison.tlog/CustomBuild.command.1.tlog | 10 + .../win_bison.tlog/CustomBuild.read.1.tlog | 1 + .../win_bison.tlog/CustomBuild.write.1.tlog | 2 + .../win_bison.tlog/link.command.1.tlog | Bin 0 -> 10636 bytes .../win_bison.tlog/link.read.1.tlog | Bin 0 -> 14034 bytes .../win_bison.tlog/link.write.1.tlog | Bin 0 -> 5966 bytes .../win_bison.tlog/win_bison.lastbuildstate | 2 + bison/y.dir/MinSizeRel/y.lib.recipe | 11 + .../y.dir/MinSizeRel/y.tlog/CL.command.1.tlog | Bin 0 -> 1926 bytes bison/y.dir/MinSizeRel/y.tlog/CL.read.1.tlog | Bin 0 -> 2674 bytes bison/y.dir/MinSizeRel/y.tlog/CL.write.1.tlog | Bin 0 -> 346 bytes .../y.tlog/CustomBuild.command.1.tlog | 10 + .../MinSizeRel/y.tlog/CustomBuild.read.1.tlog | 1 + .../y.tlog/CustomBuild.write.1.tlog | 2 + .../MinSizeRel/y.tlog/Lib-link.read.1.tlog | Bin 0 -> 568 bytes .../MinSizeRel/y.tlog/Lib-link.write.1.tlog | Bin 0 -> 284 bytes .../MinSizeRel/y.tlog/Lib.command.1.tlog | Bin 0 -> 480 bytes .../y.dir/MinSizeRel/y.tlog/y.lastbuildstate | 2 + bison/y.dir/RelWithDebInfo/y.lib.recipe | 11 + .../RelWithDebInfo/y.tlog/CL.command.1.tlog | Bin 0 -> 1990 bytes .../RelWithDebInfo/y.tlog/CL.read.1.tlog | Bin 0 -> 2674 bytes .../RelWithDebInfo/y.tlog/CL.write.1.tlog | Bin 0 -> 772 bytes .../y.tlog/CustomBuild.command.1.tlog | 10 + .../y.tlog/CustomBuild.read.1.tlog | 1 + .../y.tlog/CustomBuild.write.1.tlog | 2 + .../y.tlog/Lib-link.read.1.tlog | Bin 0 -> 600 bytes .../y.tlog/Lib-link.write.1.tlog | Bin 0 -> 308 bytes .../RelWithDebInfo/y.tlog/Lib.command.1.tlog | Bin 0 -> 520 bytes .../RelWithDebInfo/y.tlog/y.lastbuildstate | 2 + common/MinSizeRel/winflexbison_common.lib | Bin 0 -> 866798 bytes common/RelWithDebInfo/winflexbison_common.lib | Bin 0 -> 2594984 bytes .../winflexb.DD225102.tlog/CL.command.1.tlog | Bin 0 -> 131428 bytes .../winflexb.DD225102.tlog/CL.read.1.tlog | Bin 0 -> 582498 bytes .../winflexb.DD225102.tlog/CL.write.1.tlog | Bin 0 -> 25170 bytes .../CustomBuild.command.1.tlog | 10 + .../CustomBuild.read.1.tlog | 1 + .../CustomBuild.write.1.tlog | 2 + .../Lib-link.read.1.tlog | Bin 0 -> 31994 bytes .../Lib-link.write.1.tlog | Bin 0 -> 15928 bytes .../winflexb.DD225102.tlog/Lib.command.1.tlog | Bin 0 -> 27118 bytes .../winflexbison_common.lastbuildstate | 2 + .../MinSizeRel/winflexbison_common.lib.recipe | 11 + .../winflexb.DD225102.tlog/CL.command.1.tlog | Bin 0 -> 134916 bytes .../winflexb.DD225102.tlog/CL.read.1.tlog | Bin 0 -> 582498 bytes .../winflexb.DD225102.tlog/CL.write.1.tlog | Bin 0 -> 49480 bytes .../CustomBuild.command.1.tlog | 10 + .../CustomBuild.read.1.tlog | 1 + .../CustomBuild.write.1.tlog | 2 + .../Lib-link.read.1.tlog | Bin 0 -> 33738 bytes .../Lib-link.write.1.tlog | Bin 0 -> 16808 bytes .../winflexb.DD225102.tlog/Lib.command.1.tlog | Bin 0 -> 28870 bytes .../winflexbison_common.lastbuildstate | 2 + .../winflexbison_common.lib.recipe | 11 + flex/MinSizeRel/fl.lib | Bin 0 -> 2064 bytes flex/MinSizeRel/win_flex.exe | Bin 0 -> 425472 bytes flex/RelWithDebInfo/fl.lib | Bin 0 -> 4596 bytes flex/RelWithDebInfo/win_flex.exe | Bin 0 -> 612864 bytes flex/fl.dir/MinSizeRel/fl.lib.recipe | 11 + .../MinSizeRel/fl.tlog/CL.command.1.tlog | Bin 0 -> 1938 bytes flex/fl.dir/MinSizeRel/fl.tlog/CL.read.1.tlog | Bin 0 -> 1692 bytes .../fl.dir/MinSizeRel/fl.tlog/CL.write.1.tlog | Bin 0 -> 362 bytes .../fl.tlog/CustomBuild.command.1.tlog | 10 + .../fl.tlog/CustomBuild.read.1.tlog | 1 + .../fl.tlog/CustomBuild.write.1.tlog | 2 + .../MinSizeRel/fl.tlog/Lib-link.read.1.tlog | Bin 0 -> 588 bytes .../MinSizeRel/fl.tlog/Lib-link.write.1.tlog | Bin 0 -> 294 bytes .../MinSizeRel/fl.tlog/Lib.command.1.tlog | Bin 0 -> 504 bytes .../MinSizeRel/fl.tlog/fl.lastbuildstate | 2 + flex/fl.dir/RelWithDebInfo/fl.lib.recipe | 11 + .../RelWithDebInfo/fl.tlog/CL.command.1.tlog | Bin 0 -> 2002 bytes .../RelWithDebInfo/fl.tlog/CL.read.1.tlog | Bin 0 -> 1692 bytes .../RelWithDebInfo/fl.tlog/CL.write.1.tlog | Bin 0 -> 794 bytes .../fl.tlog/CustomBuild.command.1.tlog | 10 + .../fl.tlog/CustomBuild.read.1.tlog | 1 + .../fl.tlog/CustomBuild.write.1.tlog | 2 + .../fl.tlog/Lib-link.read.1.tlog | Bin 0 -> 620 bytes .../fl.tlog/Lib-link.write.1.tlog | Bin 0 -> 318 bytes .../RelWithDebInfo/fl.tlog/Lib.command.1.tlog | Bin 0 -> 544 bytes .../RelWithDebInfo/fl.tlog/fl.lastbuildstate | 2 + .../MinSizeRel/win_flex.exe.recipe | 14 + .../win_flex.tlog/CL.command.1.tlog | Bin 0 -> 24408 bytes .../MinSizeRel/win_flex.tlog/CL.read.1.tlog | Bin 0 -> 99654 bytes .../MinSizeRel/win_flex.tlog/CL.write.1.tlog | Bin 0 -> 3748 bytes .../win_flex.tlog/CustomBuild.command.1.tlog | 10 + .../win_flex.tlog/CustomBuild.read.1.tlog | 1 + .../win_flex.tlog/CustomBuild.write.1.tlog | 2 + .../win_flex.tlog/link.command.1.tlog | Bin 0 -> 4836 bytes .../MinSizeRel/win_flex.tlog/link.read.1.tlog | Bin 0 -> 7114 bytes .../win_flex.tlog/link.write.1.tlog | Bin 0 -> 2410 bytes .../win_flex.tlog/win_flex.lastbuildstate | 2 + .../RelWithDebInfo/win_flex.exe.recipe | 14 + .../win_flex.tlog/CL.command.1.tlog | Bin 0 -> 25080 bytes .../win_flex.tlog/CL.read.1.tlog | Bin 0 -> 99654 bytes .../win_flex.tlog/CL.write.1.tlog | Bin 0 -> 8028 bytes .../win_flex.tlog/CustomBuild.command.1.tlog | 10 + .../win_flex.tlog/CustomBuild.read.1.tlog | 1 + .../win_flex.tlog/CustomBuild.write.1.tlog | 2 + .../win_flex.tlog/link.command.1.tlog | Bin 0 -> 5308 bytes .../win_flex.tlog/link.read.1.tlog | Bin 0 -> 7704 bytes .../win_flex.tlog/link.write.1.tlog | Bin 0 -> 2812 bytes .../win_flex.tlog/win_flex.lastbuildstate | 2 + install_manifest.txt | 88 + win_flex_bison-master.zip | Bin 0 -> 1012809 bytes 242 files changed, 77260 insertions(+) create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master.zip create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/COPYING create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/COPYING.DOC create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/FlexLexer.h create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/README.md create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/changelog.md create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/README.md create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/1.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/2.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/3.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/4.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/5.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/6.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/BisonProperties.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/FlexProperties.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/Flex_debuging.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/Properties.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/Verbosity.png create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.props create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.targets create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.xml create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.props create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.targets create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.xml create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.props create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.targets create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.xml create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/README.md create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/bison-default.css create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/local.mk create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/m4sugar/foreach.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/m4sugar/m4sugar.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/bison.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c++-skel.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c++.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c-like.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c-skel.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/d-skel.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/d.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr.c create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr.cc create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr2.cc create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/java-skel.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/java.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.cc create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.d create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.java create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/location.cc create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/stack.hh create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/traceon.m4 create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/variant.hh create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/yacc.c create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/bison.xsl create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2dot.xsl create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2text.xsl create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2xhtml.xsl create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/win_bison.exe create mode 100644 _CPack_Packages/win64/ZIP/win_flex_bison-master/win_flex.exe create mode 100644 bison/MinSizeRel/data/README.md create mode 100644 bison/MinSizeRel/data/bison-default.css create mode 100644 bison/MinSizeRel/data/local.mk create mode 100644 bison/MinSizeRel/data/m4sugar/foreach.m4 create mode 100644 bison/MinSizeRel/data/m4sugar/m4sugar.m4 create mode 100644 bison/MinSizeRel/data/skeletons/bison.m4 create mode 100644 bison/MinSizeRel/data/skeletons/c++-skel.m4 create mode 100644 bison/MinSizeRel/data/skeletons/c++.m4 create mode 100644 bison/MinSizeRel/data/skeletons/c-like.m4 create mode 100644 bison/MinSizeRel/data/skeletons/c-skel.m4 create mode 100644 bison/MinSizeRel/data/skeletons/c.m4 create mode 100644 bison/MinSizeRel/data/skeletons/d-skel.m4 create mode 100644 bison/MinSizeRel/data/skeletons/d.m4 create mode 100644 bison/MinSizeRel/data/skeletons/glr.c create mode 100644 bison/MinSizeRel/data/skeletons/glr.cc create mode 100644 bison/MinSizeRel/data/skeletons/glr2.cc create mode 100644 bison/MinSizeRel/data/skeletons/java-skel.m4 create mode 100644 bison/MinSizeRel/data/skeletons/java.m4 create mode 100644 bison/MinSizeRel/data/skeletons/lalr1.cc create mode 100644 bison/MinSizeRel/data/skeletons/lalr1.d create mode 100644 bison/MinSizeRel/data/skeletons/lalr1.java create mode 100644 bison/MinSizeRel/data/skeletons/location.cc create mode 100644 bison/MinSizeRel/data/skeletons/stack.hh create mode 100644 bison/MinSizeRel/data/skeletons/traceon.m4 create mode 100644 bison/MinSizeRel/data/skeletons/variant.hh create mode 100644 bison/MinSizeRel/data/skeletons/yacc.c create mode 100644 bison/MinSizeRel/data/xslt/bison.xsl create mode 100644 bison/MinSizeRel/data/xslt/xml2dot.xsl create mode 100644 bison/MinSizeRel/data/xslt/xml2text.xsl create mode 100644 bison/MinSizeRel/data/xslt/xml2xhtml.xsl create mode 100644 bison/MinSizeRel/win_bison.exe create mode 100644 bison/MinSizeRel/y.lib create mode 100644 bison/RelWithDebInfo/data/README.md create mode 100644 bison/RelWithDebInfo/data/bison-default.css create mode 100644 bison/RelWithDebInfo/data/local.mk create mode 100644 bison/RelWithDebInfo/data/m4sugar/foreach.m4 create mode 100644 bison/RelWithDebInfo/data/m4sugar/m4sugar.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/bison.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/c++-skel.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/c++.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/c-like.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/c-skel.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/c.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/d-skel.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/d.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/glr.c create mode 100644 bison/RelWithDebInfo/data/skeletons/glr.cc create mode 100644 bison/RelWithDebInfo/data/skeletons/glr2.cc create mode 100644 bison/RelWithDebInfo/data/skeletons/java-skel.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/java.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/lalr1.cc create mode 100644 bison/RelWithDebInfo/data/skeletons/lalr1.d create mode 100644 bison/RelWithDebInfo/data/skeletons/lalr1.java create mode 100644 bison/RelWithDebInfo/data/skeletons/location.cc create mode 100644 bison/RelWithDebInfo/data/skeletons/stack.hh create mode 100644 bison/RelWithDebInfo/data/skeletons/traceon.m4 create mode 100644 bison/RelWithDebInfo/data/skeletons/variant.hh create mode 100644 bison/RelWithDebInfo/data/skeletons/yacc.c create mode 100644 bison/RelWithDebInfo/data/xslt/bison.xsl create mode 100644 bison/RelWithDebInfo/data/xslt/xml2dot.xsl create mode 100644 bison/RelWithDebInfo/data/xslt/xml2text.xsl create mode 100644 bison/RelWithDebInfo/data/xslt/xml2xhtml.xsl create mode 100644 bison/RelWithDebInfo/win_bison.exe create mode 100644 bison/RelWithDebInfo/y.lib create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.exe.recipe create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.command.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.read.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.write.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/CustomBuild.command.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/CustomBuild.read.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/CustomBuild.write.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/link.command.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/link.read.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/link.write.1.tlog create mode 100644 bison/win_bison.dir/MinSizeRel/win_bison.tlog/win_bison.lastbuildstate create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.exe.recipe create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.command.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.read.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.write.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.command.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.read.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.write.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.command.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.read.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.write.1.tlog create mode 100644 bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/win_bison.lastbuildstate create mode 100644 bison/y.dir/MinSizeRel/y.lib.recipe create mode 100644 bison/y.dir/MinSizeRel/y.tlog/CL.command.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/CL.read.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/CL.write.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/CustomBuild.command.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/CustomBuild.read.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/CustomBuild.write.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/Lib-link.read.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/Lib-link.write.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/Lib.command.1.tlog create mode 100644 bison/y.dir/MinSizeRel/y.tlog/y.lastbuildstate create mode 100644 bison/y.dir/RelWithDebInfo/y.lib.recipe create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/CL.command.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/CL.read.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/CL.write.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.command.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.read.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.write.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/Lib-link.read.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/Lib-link.write.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/Lib.command.1.tlog create mode 100644 bison/y.dir/RelWithDebInfo/y.tlog/y.lastbuildstate create mode 100644 common/MinSizeRel/winflexbison_common.lib create mode 100644 common/RelWithDebInfo/winflexbison_common.lib create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CL.command.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CL.read.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CL.write.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CustomBuild.command.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CustomBuild.read.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CustomBuild.write.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/Lib-link.read.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/Lib-link.write.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/Lib.command.1.tlog create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/winflexbison_common.lastbuildstate create mode 100644 common/winflexbison_common.dir/MinSizeRel/winflexbison_common.lib.recipe create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.command.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.read.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.write.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CustomBuild.command.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CustomBuild.read.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CustomBuild.write.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/Lib-link.read.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/Lib-link.write.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/Lib.command.1.tlog create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/winflexbison_common.lastbuildstate create mode 100644 common/winflexbison_common.dir/RelWithDebInfo/winflexbison_common.lib.recipe create mode 100644 flex/MinSizeRel/fl.lib create mode 100644 flex/MinSizeRel/win_flex.exe create mode 100644 flex/RelWithDebInfo/fl.lib create mode 100644 flex/RelWithDebInfo/win_flex.exe create mode 100644 flex/fl.dir/MinSizeRel/fl.lib.recipe create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/CL.command.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/CL.read.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/CL.write.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.command.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.read.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.write.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/Lib-link.read.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/Lib-link.write.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/Lib.command.1.tlog create mode 100644 flex/fl.dir/MinSizeRel/fl.tlog/fl.lastbuildstate create mode 100644 flex/fl.dir/RelWithDebInfo/fl.lib.recipe create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/CL.command.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/CL.read.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/CL.write.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.command.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.read.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.write.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/Lib-link.read.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/Lib-link.write.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/Lib.command.1.tlog create mode 100644 flex/fl.dir/RelWithDebInfo/fl.tlog/fl.lastbuildstate create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.exe.recipe create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/CL.command.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/CL.read.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/CL.write.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/CustomBuild.command.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/CustomBuild.read.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/CustomBuild.write.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/link.command.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/link.read.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/link.write.1.tlog create mode 100644 flex/win_flex.dir/MinSizeRel/win_flex.tlog/win_flex.lastbuildstate create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.exe.recipe create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.command.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.read.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.write.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.command.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.read.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.write.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/link.command.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/link.read.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/link.write.1.tlog create mode 100644 flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/win_flex.lastbuildstate create mode 100644 install_manifest.txt create mode 100644 win_flex_bison-master.zip diff --git a/ALL_BUILD.vcxproj b/ALL_BUILD.vcxproj index 73f63ff..ba38d93 100644 --- a/ALL_BUILD.vcxproj +++ b/ALL_BUILD.vcxproj @@ -55,6 +55,7 @@ + @@ -196,5 +197,6 @@ if %errorlevel% neq 0 goto :VCEnd + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master.zip b/_CPack_Packages/win64/ZIP/win_flex_bison-master.zip new file mode 100644 index 0000000000000000000000000000000000000000..884b0c9b8d7677946a4d1ddcf23497c4d5d31af1 GIT binary patch literal 1012809 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

0nV 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

5(%*q~S2} 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 ijEGy)BVK`w6+aS7n^&L{9r=V#Mz}@Z1 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

RfI+UWMLs&J9Bc*Pca+r62{KIR@(Q^r1 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ȹ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%0Av!6w#={bAfxn3Y$a0OE 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%0AE_OA*Z3Qy;8|H((3@@1vfeKZ7i(GakC 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%0DhfV!6~HS2x&F%7G1!ukiLZwv+0Q0 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 literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/COPYING b/_CPack_Packages/win64/ZIP/win_flex_bison-master/COPYING new file mode 100644 index 0000000..f288702 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/COPYING @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/COPYING.DOC b/_CPack_Packages/win64/ZIP/win_flex_bison-master/COPYING.DOC new file mode 100644 index 0000000..bf128be --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/COPYING.DOC @@ -0,0 +1,451 @@ + + GNU Free Documentation License + Version 1.3, 3 November 2008 + + + Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. + + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +0. PREAMBLE + +The purpose of this License is to make a manual, textbook, or other +functional and useful document "free" in the sense of freedom: to +assure everyone the effective freedom to copy and redistribute it, +with or without modifying it, either commercially or noncommercially. +Secondarily, this License preserves for the author and publisher a way +to get credit for their work, while not being considered responsible +for modifications made by others. + +This License is a kind of "copyleft", which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. + +We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. + + +1. APPLICABILITY AND DEFINITIONS + +This License applies to any manual or other work, in any medium, that +contains a notice placed by the copyright holder saying it can be +distributed under the terms of this License. Such a notice grants a +world-wide, royalty-free license, unlimited in duration, to use that +work under the conditions stated herein. The "Document", below, +refers to any such manual or work. Any member of the public is a +licensee, and is addressed as "you". You accept the license if you +copy, modify or distribute the work in a way requiring permission +under copyright law. + +A "Modified Version" of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. + +A "Secondary Section" is a named appendix or a front-matter section of +the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall +subject (or to related matters) and contains nothing that could fall +directly within that overall subject. (Thus, if the Document is in +part a textbook of mathematics, a Secondary Section may not explain +any mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. + +The "Invariant Sections" are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. If a +section does not fit the above definition of Secondary then it is not +allowed to be designated as Invariant. The Document may contain zero +Invariant Sections. If the Document does not identify any Invariant +Sections then there are none. + +The "Cover Texts" are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. A Front-Cover Text may +be at most 5 words, and a Back-Cover Text may be at most 25 words. + +A "Transparent" copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, that is suitable for revising the document +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup, or absence of markup, has been arranged to thwart +or discourage subsequent modification by readers is not Transparent. +An image format is not Transparent if used for any substantial amount +of text. A copy that is not "Transparent" is called "Opaque". + +Examples of suitable formats for Transparent copies include plain +ASCII without markup, Texinfo input format, LaTeX input format, SGML +or XML using a publicly available DTD, and standard-conforming simple +HTML, PostScript or PDF designed for human modification. Examples of +transparent image formats include PNG, XCF and JPG. Opaque formats +include proprietary formats that can be read and edited only by +proprietary word processors, SGML or XML for which the DTD and/or +processing tools are not generally available, and the +machine-generated HTML, PostScript or PDF produced by some word +processors for output purposes only. + +The "Title Page" means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, "Title Page" means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. + +The "publisher" means any person or entity that distributes copies of +the Document to the public. + +A section "Entitled XYZ" means a named subunit of the Document whose +title either is precisely XYZ or contains XYZ in parentheses following +text that translates XYZ in another language. (Here XYZ stands for a +specific section name mentioned below, such as "Acknowledgements", +"Dedications", "Endorsements", or "History".) To "Preserve the Title" +of such a section when you modify the Document means that it remains a +section "Entitled XYZ" according to this definition. + +The Document may include Warranty Disclaimers next to the notice which +states that this License applies to the Document. These Warranty +Disclaimers are considered to be included by reference in this +License, but only as regards disclaiming warranties: any other +implication that these Warranty Disclaimers may have is void and has +no effect on the meaning of this License. + +2. VERBATIM COPYING + +You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no +other conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in section 3. + +You may also lend copies, under the same conditions stated above, and +you may publicly display copies. + + +3. COPYING IN QUANTITY + +If you publish printed copies (or copies in media that commonly have +printed covers) of the Document, numbering more than 100, and the +Document's license notice requires Cover Texts, you must enclose the +copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. + +If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. + +If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a computer-network location from which the general network-using +public has access to download using public-standard network protocols +a complete Transparent copy of the Document, free of added material. +If you use the latter option, you must take reasonably prudent steps, +when you begin distribution of Opaque copies in quantity, to ensure +that this Transparent copy will remain thus accessible at the stated +location until at least one year after the last time you distribute an +Opaque copy (directly or through your agents or retailers) of that +edition to the public. + +It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to +give them a chance to provide you with an updated version of the +Document. + + +4. MODIFICATIONS + +You may copy and distribute a Modified Version of the Document under +the conditions of sections 2 and 3 above, provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: + +A. Use in the Title Page (and on the covers, if any) a title distinct + from that of the Document, and from those of previous versions + (which should, if there were any, be listed in the History section + of the Document). You may use the same title as a previous version + if the original publisher of that version gives permission. +B. List on the Title Page, as authors, one or more persons or entities + responsible for authorship of the modifications in the Modified + Version, together with at least five of the principal authors of the + Document (all of its principal authors, if it has fewer than five), + unless they release you from this requirement. +C. State on the Title page the name of the publisher of the + Modified Version, as the publisher. +D. Preserve all the copyright notices of the Document. +E. Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices. +F. Include, immediately after the copyright notices, a license notice + giving the public permission to use the Modified Version under the + terms of this License, in the form shown in the Addendum below. +G. Preserve in that license notice the full lists of Invariant Sections + and required Cover Texts given in the Document's license notice. +H. Include an unaltered copy of this License. +I. Preserve the section Entitled "History", Preserve its Title, and add + to it an item stating at least the title, year, new authors, and + publisher of the Modified Version as given on the Title Page. If + there is no section Entitled "History" in the Document, create one + stating the title, year, authors, and publisher of the Document as + given on its Title Page, then add an item describing the Modified + Version as stated in the previous sentence. +J. Preserve the network location, if any, given in the Document for + public access to a Transparent copy of the Document, and likewise + the network locations given in the Document for previous versions + it was based on. These may be placed in the "History" section. + You may omit a network location for a work that was published at + least four years before the Document itself, or if the original + publisher of the version it refers to gives permission. +K. For any section Entitled "Acknowledgements" or "Dedications", + Preserve the Title of the section, and preserve in the section all + the substance and tone of each of the contributor acknowledgements + and/or dedications given therein. +L. Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section titles. +M. Delete any section Entitled "Endorsements". Such a section + may not be included in the Modified Version. +N. Do not retitle any existing section to be Entitled "Endorsements" + or to conflict in title with any Invariant Section. +O. Preserve any Warranty Disclaimers. + +If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. + +You may add a section Entitled "Endorsements", provided it contains +nothing but endorsements of your Modified Version by various +parties--for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. + +You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. + +The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. + + +5. COMBINING DOCUMENTS + +You may combine the Document with other documents released under this +License, under the terms defined in section 4 above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice, and that you preserve all their Warranty Disclaimers. + +The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. + +In the combination, you must combine any sections Entitled "History" +in the various original documents, forming one section Entitled +"History"; likewise combine any sections Entitled "Acknowledgements", +and any sections Entitled "Dedications". You must delete all sections +Entitled "Endorsements". + + +6. COLLECTIONS OF DOCUMENTS + +You may make a collection consisting of the Document and other +documents released under this License, and replace the individual +copies of this License in the various documents with a single copy +that is included in the collection, provided that you follow the rules +of this License for verbatim copying of each of the documents in all +other respects. + +You may extract a single document from such a collection, and +distribute it individually under this License, provided you insert a +copy of this License into the extracted document, and follow this +License in all other respects regarding verbatim copying of that +document. + + +7. AGGREGATION WITH INDEPENDENT WORKS + +A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, is called an "aggregate" if the copyright +resulting from the compilation is not used to limit the legal rights +of the compilation's users beyond what the individual works permit. +When the Document is included in an aggregate, this License does not +apply to the other works in the aggregate which are not themselves +derivative works of the Document. + +If the Cover Text requirement of section 3 is applicable to these +copies of the Document, then if the Document is less than one half of +the entire aggregate, the Document's Cover Texts may be placed on +covers that bracket the Document within the aggregate, or the +electronic equivalent of covers if the Document is in electronic form. +Otherwise they must appear on printed covers that bracket the whole +aggregate. + + +8. TRANSLATION + +Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of section 4. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License, and all the license notices in the +Document, and any Warranty Disclaimers, provided that you also include +the original English version of this License and the original versions +of those notices and disclaimers. In case of a disagreement between +the translation and the original version of this License or a notice +or disclaimer, the original version will prevail. + +If a section in the Document is Entitled "Acknowledgements", +"Dedications", or "History", the requirement (section 4) to Preserve +its Title (section 1) will typically require changing the actual +title. + + +9. TERMINATION + +You may not copy, modify, sublicense, or distribute the Document +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense, or distribute it is void, and +will automatically terminate your rights under this License. + +However, if you cease all violation of this License, then your license +from a particular copyright holder is reinstated (a) provisionally, +unless and until the copyright holder explicitly and finally +terminates your license, and (b) permanently, if the copyright holder +fails to notify you of the violation by some reasonable means prior to +60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, receipt of a copy of some or all of the same material does +not give you any rights to use it. + + +10. FUTURE REVISIONS OF THIS LICENSE + +The Free Software Foundation may publish new, revised versions of the +GNU Free Documentation License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in +detail to address new problems or concerns. See +https://www.gnu.org/licenses/. + +Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License "or any later version" applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. If the Document +specifies that a proxy can decide which future versions of this +License can be used, that proxy's public statement of acceptance of a +version permanently authorizes you to choose that version for the +Document. + +11. RELICENSING + +"Massive Multiauthor Collaboration Site" (or "MMC Site") means any +World Wide Web server that publishes copyrightable works and also +provides prominent facilities for anybody to edit those works. A +public wiki that anybody can edit is an example of such a server. A +"Massive Multiauthor Collaboration" (or "MMC") contained in the site +means any set of copyrightable works thus published on the MMC site. + +"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0 +license published by Creative Commons Corporation, a not-for-profit +corporation with a principal place of business in San Francisco, +California, as well as future copyleft versions of that license +published by that same organization. + +"Incorporate" means to publish or republish a Document, in whole or in +part, as part of another Document. + +An MMC is "eligible for relicensing" if it is licensed under this +License, and if all works that were first published under this License +somewhere other than this MMC, and subsequently incorporated in whole or +in part into the MMC, (1) had no cover texts or invariant sections, and +(2) were thus incorporated prior to November 1, 2008. + +The operator of an MMC Site may republish an MMC contained in the site +under CC-BY-SA on the same site at any time before August 1, 2009, +provided the MMC is eligible for relicensing. + + +ADDENDUM: How to use this License for your documents + +To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: + + Copyright (c) YEAR YOUR NAME. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license is included in the section entitled "GNU + Free Documentation License". + +If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, +replace the "with...Texts." line with this: + + with the Invariant Sections being LIST THEIR TITLES, with the + Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. + +If you have Invariant Sections without Cover Texts, or some other +combination of the three, merge those two alternatives to suit the +situation. + +If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/FlexLexer.h b/_CPack_Packages/win64/ZIP/win_flex_bison-master/FlexLexer.h new file mode 100644 index 0000000..c4dad2b --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/FlexLexer.h @@ -0,0 +1,220 @@ +// -*-C++-*- +// FlexLexer.h -- define interfaces for lexical analyzer classes generated +// by flex + +// Copyright (c) 1993 The Regents of the University of California. +// All rights reserved. +// +// This code is derived from software contributed to Berkeley by +// Kent Williams and Tom Epperly. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: + +// 1. Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// 2. Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in the +// documentation and/or other materials provided with the distribution. + +// Neither the name of the University nor the names of its contributors +// may be used to endorse or promote products derived from this software +// without specific prior written permission. + +// THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR +// IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +// PURPOSE. + +// This file defines FlexLexer, an abstract class which specifies the +// external interface provided to flex C++ lexer objects, and yyFlexLexer, +// which defines a particular lexer class. +// +// If you want to create multiple lexer classes, you use the -P flag +// to rename each yyFlexLexer to some other xxFlexLexer. You then +// include in your other sources once per lexer class: +// +// #undef yyFlexLexer +// #define yyFlexLexer xxFlexLexer +// #include +// +// #undef yyFlexLexer +// #define yyFlexLexer zzFlexLexer +// #include +// ... + +#ifndef __FLEX_LEXER_H +// Never included before - need to define base class. +#define __FLEX_LEXER_H + +#include + +extern "C++" { + +struct yy_buffer_state; +typedef int yy_state_type; + +class FlexLexer +{ +public: + virtual ~FlexLexer() { } + + const char* YYText() const { return yytext; } + int YYLeng() const { return yyleng; } + + virtual void + yy_switch_to_buffer( yy_buffer_state* new_buffer ) = 0; + virtual yy_buffer_state* yy_create_buffer( std::istream* s, int size ) = 0; + virtual yy_buffer_state* yy_create_buffer( std::istream& s, int size ) = 0; + virtual void yy_delete_buffer( yy_buffer_state* b ) = 0; + virtual void yyrestart( std::istream* s ) = 0; + virtual void yyrestart( std::istream& s ) = 0; + + virtual int yylex() = 0; + + // Call yylex with new input/output sources. + int yylex( std::istream& new_in, std::ostream& new_out ) + { + switch_streams( new_in, new_out ); + return yylex(); + } + + int yylex( std::istream* new_in, std::ostream* new_out = 0) + { + switch_streams( new_in, new_out ); + return yylex(); + } + + // Switch to new input/output streams. A nil stream pointer + // indicates "keep the current one". + virtual void switch_streams( std::istream* new_in, + std::ostream* new_out ) = 0; + virtual void switch_streams( std::istream& new_in, + std::ostream& new_out ) = 0; + + int lineno() const { return yylineno; } + + int debug() const { return yy_flex_debug; } + void set_debug( int flag ) { yy_flex_debug = flag; } + +protected: + char* yytext; + int yyleng; + int yylineno; // only maintained if you use %option yylineno + int yy_flex_debug; // only has effect with -d or "%option debug" +}; + +} +#endif // FLEXLEXER_H + +#if defined(yyFlexLexer) || ! defined(yyFlexLexerOnce) +// Either this is the first time through (yyFlexLexerOnce not defined), +// or this is a repeated include to define a different flavor of +// yyFlexLexer, as discussed in the flex manual. +# define yyFlexLexerOnce + +extern "C++" { + +class yyFlexLexer : public FlexLexer { +public: + // arg_yyin and arg_yyout default to the cin and cout, but we + // only make that assignment when initializing in yylex(). + yyFlexLexer( std::istream& arg_yyin, std::ostream& arg_yyout ); + yyFlexLexer( std::istream* arg_yyin = 0, std::ostream* arg_yyout = 0 ); +private: + void ctor_common(); + +public: + + virtual ~yyFlexLexer(); + + void yy_switch_to_buffer( yy_buffer_state* new_buffer ); + yy_buffer_state* yy_create_buffer( std::istream* s, int size ); + yy_buffer_state* yy_create_buffer( std::istream& s, int size ); + void yy_delete_buffer( yy_buffer_state* b ); + void yyrestart( std::istream* s ); + void yyrestart( std::istream& s ); + + void yypush_buffer_state( yy_buffer_state* new_buffer ); + void yypop_buffer_state(); + + virtual int yylex(); + virtual void switch_streams( std::istream& new_in, std::ostream& new_out ); + virtual void switch_streams( std::istream* new_in = 0, std::ostream* new_out = 0 ); + virtual int yywrap(); + +protected: + virtual int LexerInput( char* buf, int max_size ); + virtual void LexerOutput( const char* buf, int size ); + virtual void LexerError( const char* msg ); + + void yyunput( int c, char* buf_ptr ); + int yyinput(); + + void yy_load_buffer_state(); + void yy_init_buffer( yy_buffer_state* b, std::istream& s ); + void yy_flush_buffer( yy_buffer_state* b ); + + int yy_start_stack_ptr; + int yy_start_stack_depth; + int* yy_start_stack; + + void yy_push_state( int new_state ); + void yy_pop_state(); + int yy_top_state(); + + yy_state_type yy_get_previous_state(); + yy_state_type yy_try_NUL_trans( yy_state_type current_state ); + int yy_get_next_buffer(); + + std::istream yyin; // input source for default LexerInput + std::ostream yyout; // output sink for default LexerOutput + + // yy_hold_char holds the character lost when yytext is formed. + char yy_hold_char; + + // Number of characters read into yy_ch_buf. + int yy_n_chars; + + // Points to current character in buffer. + char* yy_c_buf_p; + + int yy_init; // whether we need to initialize + int yy_start; // start state number + + // Flag which is used to allow yywrap()'s to do buffer switches + // instead of setting up a fresh yyin. A bit of a hack ... + int yy_did_buffer_switch_on_eof; + + + size_t yy_buffer_stack_top; /**< index of top of stack. */ + size_t yy_buffer_stack_max; /**< capacity of stack. */ + yy_buffer_state ** yy_buffer_stack; /**< Stack as an array. */ + void yyensure_buffer_stack(void); + + // The following are not always needed, but may be depending + // on use of certain flex features (like REJECT or yymore()). + + yy_state_type yy_last_accepting_state; + char* yy_last_accepting_cpos; + + yy_state_type* yy_state_buf; + yy_state_type* yy_state_ptr; + + char* yy_full_match; + int* yy_full_state; + int yy_full_lp; + + int yy_lp; + int yy_looking_for_trail_begin; + + int yy_more_flag; + int yy_more_len; + int yy_more_offset; + int yy_prev_more_offset; +}; + +} + +#endif // yyFlexLexer || ! yyFlexLexerOnce diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/README.md b/_CPack_Packages/win64/ZIP/win_flex_bison-master/README.md new file mode 100644 index 0000000..b4e96ec --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/README.md @@ -0,0 +1,34 @@ +# WinFlexBison - Flex and Bison for Microsoft Windows + +WinFlexBison is a Windows port of [Flex (the fast lexical analyser)](https://github.com/westes/flex/) and [GNU Bison (parser generator)](https://www.gnu.org/software/bison/). +Both win_flex and win_bison are based on upstream sources but depend on system libraries only. + +**NOTE**: +* 2.4.x versions include GNU Bison version 2.7 +* 2.5.x versions include GNU Bison version 3.x.x + +## License +Flex uses a [BSD license](flex/src/COPYING), GNU Bison is [licensed under the GNU General Public License (GPLv3+)](bison/src/COPYING). +All build scripts in WinFlexBison are distributed under GPLv3+. See [COPYING](COPYING) for details. + +All documentation, especially those under custom_build_rules/doc, is distributed under the GNU Free Documentation License (FDL 1.3+). + +## Build status +Bison 3.x (master) [![Build status](https://ci.appveyor.com/api/projects/status/58lcjnr0mb9uc8c8/branch/master?svg=true)](https://ci.appveyor.com/project/lexxmark/winflexbison/branch/master) and, for compatibility reasons, Bison 2.7 (bison2.7) [![Build status](https://ci.appveyor.com/api/projects/status/58lcjnr0mb9uc8c8/branch/bison2.7?svg=true)](https://ci.appveyor.com/project/lexxmark/winflexbison/branch/bison2.7) + +## Downloads +https://github.com/lexxmark/winflexbison/releases provides stable versions. +To test non-released development versions see the artifacts provided by CI under "Build status". + +## Changelog +The release page includes the full Changelog but you may also see the [changelog.md](changelog.md) file. + +## Build requirements +* Visual Studio 2017 or newer +* optional: CMake (when building with CMake) + +## HowTo +You may use win_flex and win_bison directly on the command line or [use them via CustomBuildRules in VisualStudio](custom_build_rules/README.md). + +## Example flex/bison files +See https://github.com/meyerd/flex-bison-example diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/changelog.md b/_CPack_Packages/win64/ZIP/win_flex_bison-master/changelog.md new file mode 100644 index 0000000..5d80cec --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/changelog.md @@ -0,0 +1,166 @@ +## Changelog + +**NOTE**: + * 2.4.x versions include bison version 2.7 + * 2.5.x versions include bison version 3.x + +### version 2.5.25 + * upgrade win_bison to version 3.8.2 + * upgrade m4 to version 1.4.19 + +### version 2.5.24 + * upgrade win_bison to version 3.7.4 + * upgrade m4 to version 1.4.18 + * upgrade gnulib + * removed VS2015 support + * fixed win_bison --update option (renaming opened file) + +### version 2.5.23 + * upgrade win_bison to version 3.7.1 + +### version 2.5.22 + * upgrade win_bison to version 3.5.0 + +### version 2.5.21 + * avoid _m4eof lines in generated bison code while printing warnings + +### version 2.5.20 + * recovered invoking win_bison from different folders + +### version 2.5.19 + * upgrade win_bison to version 3.4.1 + +### version 2.5.18 + * upgrade win_bison to version 3.3.2 + +### version 2.5.17 + * upgrade win_bison to version 3.3.1 + +### version 2.5.16 + * upgrade win_bison to version 3.1 + * write output flex/bison files in binary mode "wb" that means use '\n' EOL not '\r\n' + * documentation about how to use the custom build-rules is now included + +### versions 2.4.12/2.5.15 + * upgrade win_bison to version 3.0.5 + +### versions 2.4.12/2.5.14 + * revert to Visual Studio 2015 due to false positive virus alarms for win_flex.exe + +### versions 2.4.11/2.5.13 + * fixed VS 2017 compilation errors in location.cc + +### versions 2.4.11/2.5.12 + * migrate to Visual Studio 2017 + +### versions 2.4.10/2.5.11 + * upgrade win_flex to version 2.6.4 + * fixed compilation warnings + +### versions 2.4.9/2.5.10 + * data folder was up to dated for bison 3.0.4 + +### versions 2.4.9/2.5.9 + * recovered --header-file win_flex option + +### versions 2.4.8/2.5.8 + * fixed outdated FlexLexer.h file + +### versions 2.4.7/2.5.7 + * upgrade win_flex to version 2.6.3 + * fixed compilation warnings + +### versions 2.4.6/2.5.6 + * upgrade win_bison to version 3.0.4 + * win_bison v2.7 is unchanged + * add separate custom build rules + * for win_bison `custom_build_rules\win_bison_only` + * and win_flex `custom_build_rules\win_flex_only` + +### versions 2.4.5/2.5.5 + * fix missing Additional Options in custom build rules + * fix incorrect "----header-file" option in flex custom build rules + * add some extra flex options to Visual Studio property pages: + 1. Prefix (--prefix="...") + 2. C++ Class Name (--yyclass="...") + +###versions 2.4.4/2.5.4 + * fix silent errors in custom build rules + * add some flex/bison options to Visual Studio property pages: + * Bison: + 1. Output File Name (--output="...") + 2. Defines File Name (--defines="...") + 3. Debug (--debug) + 4. Verbose (--verbose) + 5. No lines (--no-lines) + 6. File Prefix (--file-prefix="...") + 7. Graph File (--graph="...") + 8. Warnings (--warnings="...") + 9. Report (--report="...") + 10. Report File Name (--report-file="...") + + * Flex: + 1. Output File Name (--outfile="...") + 2. Header File Name (--header-file="...") + 3. Windows compatibility mode (--wincompat) + 4. Case-insensitive mode (--case-insensitive) + 5. Lex-compatibility mode (--lex-compat) + 6. Start Condition Stacks (--stack) + 7. Bison Bridge Mode (--bison-bridge) + 8. No #line Directives (--noline) + 9. Generate Reentrant Scanner (--reentrant) + 10. Generate C++ Scanner (--c++) + 11. Debug Mode (--debug) + +### versions 2.4.3/2.5.3 + * fix incorrect #line directives in win_flex.exe +see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=542482 + +### versions 2.4.2/2.5.2 + * backport parallel invocations of win_bison version 2.7 + * win_bison of version 3.0 is unchanged + +### versions 2.4.1/2.5.1 + * remove XSI extention syntax for fprintf function (not implemented in windows) + * this fixes Graphviz files generation for bison + +**NOTE**: + * 2.4.x versions will include bison version 2.7 + * 2.5.x versions will include bison version 3.0 + +### version 2.5 + * upgrade win_bison to version 3.0 and make temporary win_bison's files process unique (so parallel invocations of win_bison are possible) + +**NOTE**: Several deprecated features were removed in bison 3.0 so this version can break your projects. +Please see http://savannah.gnu.org/forum/forum.php?forum_id=7663 +For the reason of compatibility I don't change win_flex_bison-latest.zip to refer to win_flex_bison-2.5.zip file. +It still refer to win_flex_bison-2.4.zip + +### version 2.4 + * fix problem with "m4_syscmd is not implemented" message. + * Now win_bison should output correct diagnostic and error messages. + +### version 2.3 + * hide __attribute__ construction for non GCC compilers + +### version 2.2 + * added --wincompat option to win_flex (this option changes `` unix include with `` windows analog + also `isatty/fileno` functions changed to `_isatty/_fileno`) +fixed two "'<' : signed/unsigned mismatch" warnings in win_flex generated file + +### version 2.1 + * fixed crash when execute win_bison.exe under WindowsXP (argv[0] don't have full application path) + * added win_flex_bison-latest.zip package to freeze download link + +### version 2.0 + * upgrade win_bison to version 2.7 and win_flex to version 2.5.37 + +### version 1.2 + * fixed win_flex.exe #line directives (some #line directives in output file were with unescaped backslashes) + +### version 1.1 + * fixed win_flex.exe parallel invocations (now all temporary files are process specific) + * added FLEX_TMP_DIR environment variable support to redirect temporary files folder + * added '.exe' to program name in win_flex.exe --version output (CMake support) + * fixed win_bison.exe to use "/data" subfolder related to executable path rather than current working directory + * added BISON_PKGDATADIR environment variable to redirect "/data" subfolder to a different place diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/README.md b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/README.md new file mode 100644 index 0000000..181d7d8 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/README.md @@ -0,0 +1,173 @@ + +How to setup custom build rules for Visual Studio 2010 and up. +--------------- + +First of all you should have the necessary files. +Custom Build rules are separated into a file triplet of `.xml`, `.targets` and `.props`. + +You find the custom build rules for win_flex_bison in the **custom_build_rules** directory of the win_flex_bison archive. + +You may choose to install one of the following rule set + +* the combined rules - [alternative download][1]: + * [win_flex_bison_custom_build.props ](win_flex_bison/win_flex_bison_custom_build.props) + * [win_flex_bison_custom_build.targets](win_flex_bison/win_flex_bison_custom_build.targets) + * [win_flex_bison_custom_build.xml ](win_flex_bison/win_flex_bison_custom_build.xml) + +* flex only rules - [alternative download][2]: + * [win_flex_custom_build.props ](win_flex_only/win_flex_custom_build.props) + * [win_flex_custom_build.targets ](win_flex_only/win_flex_custom_build.targets) + * [win_flex_custom_build.xml ](win_flex_only/win_flex_custom_build.xml) + +* bison only rules - [alternative download][3]: + * [win_bison_custom_build.props ](win_bison_only/win_bison_custom_build.props) + * [win_bison_custom_build.targets](win_bison_only/win_bison_custom_build.targets) + * [win_bison_custom_build.xml ](win_bison_only/win_bison_custom_build.xml) + +This documentation uses the combined rule-set but can be used for all rule-sets. + +[1]: https://sourceforge.net/projects/winflexbison/files/win_flex_bison_custom_build_rules.zip/download "Combined build rules for Bison and Flex" +[2]: https://sourceforge.net/projects/winflexbison/files/win_flex_custom_build_rules.zip/download "Build rules for Flex only" +[3]: https://sourceforge.net/projects/winflexbison/files/win_bison_custom_build_rules.zip/download "Build rules for Bison only" + +---- + +Launch Visual Studio and open an VC/VC++ project. +Open context menu for project item in Solution Explorer panel and select "**Build Customizations...**" menu item. +(Note: newer VS versions have this below sub-menu "**Build Dependencies...**".) + +![Build Customizations in Solution Explorer](docs/1.png) + +---- + +In popup dialog "Visual C++ Build Customization Files" press "**Find Existing...**" button. + +![Customization Files](docs/2.png) + +---- + +In Open File dialog select "**win_flex_bison_custom_build.targets**" file and press "Open". +(Note: you may have to switch the file filter to "(*.*) all files".) + +---- + +You will see "Add Search Path?" message box, press "Yes". + +![Adding Search Path](docs/3.png) + +---- + +In "Visual C++ Build Customization Files" dialog check just added item **win_flex_bison_custom_build** and press "OK". + +![activate custom build rule](docs/4.png) + +---- + +Now you can add flex and bison files to the project... + +![project with flex and bison files added](docs/5.png) + +... and build. +In build output you should see something like this: + +~~~~ + +1>------ Rebuild All started: Project: ConsoleApplication1, Configuration: Debug Win32 ------ +1> Process sample bison file +1> Process sample flex file +1> stdafx.cpp +1> ConsoleApplication1.cpp +1> Generating Code... +1> ConsoleApplication1.vcxproj -> C:\Users\ConsoleApplication1\Debug\ConsoleApplication1.exe +========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ========== + +~~~~ + +----- + +For **sample.y** bison file there are two output files: **sample.tab.h** and **sample.tab.cpp**. +For **sample.l** flex file you'll got **sample.flex.cpp**. + +Now you can add them to the project and build. (*Don't forget to exclude cpp files from using precompiled headers*) + +![Include generated files into Solution](docs/6.png) + +~~~~ + +1>------ Build started: Project: ConsoleApplication1, Configuration: Debug Win32 ------ +1> Process sample bison file +1> Process sample flex file +1> sample.tab.cpp +1> sample.flex.cpp +1> Generating Code... +1> ConsoleApplication1.vcxproj -> C:\Users\ConsoleApplication1\Debug\ConsoleApplication1.exe +========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ========== + +~~~~ + +---- + +If your flex/bison file is incorrect and you've got an error. But you don't see actual error message, something like this: + +~~~~ + +1>------ Build started: Project: ConsoleApplication2, Configuration: Debug Win32 ------ +1> Process "grammar.y" bison file +1>C:...\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: The command " +1>C:...\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: start /B /WAIT /D "C:...\ConsoleApplication2\ConsoleApplication2\" win_bison.exe --output="grammar.tab.cpp" --defines="grammar.tab.h" --graph="1.dot" "grammar.y" +1>C:...\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: exit /b %errorlevel%" exited with code 1. +========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== + +~~~~ + +You can change Build Output Verbosity from "Minimal" to "Normal" in "Options" dialog + +![Verbosity](docs/Verbosity.png) + +Then you will see more detailed output: + +~~~~ + +1>BisonTarget: +1> Process "grammar.y" bison file +1> grammar.y:51.1-4: error: invalid directive: '%sdw' +1>C:...\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: The command " +1>C:...\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: start /B /WAIT /D "C:...\ConsoleApplication2\" win_bison.exe --output="grammar.tab.cpp" --defines="grammar.tab.h" --graph="1.dot" "grammar.y" +1>C:...\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: exit /b %errorlevel%" exited with code 1. +1> +1>Build FAILED. +1> +1>Time Elapsed 00:00:01.21 +========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== + +~~~~ + +---- + +Also you can tune some flex/bison options in files properties dialog: + +![Opening File Properties](docs/Properties.png) +![Property Page for Flex sources](docs/FlexProperties.png) +![Property Page for Bison sources](docs/BisonProperties.png) + +---- + + +To debug your scanner or parser you can set break points right into **sample.y** or **sample.l** code. + +![Debugging Flex source files](docs/Flex_debuging.png) + +---- + + +To use the Visual C++ Code editor for Flex/Bison files instead of the text editor adjust your editor settings as follows: + +* click **Options** on the **Tools** menu, expand the **Text Editor** node and select **File Extension** +* type extension **`l`** in the **Extension** field and choose **Microsoft Visual C++** in the **Editor** drop-down field, click **Add** +* do the same for the extension **`y`** + +You now have syntax highlighting, code-completion and show definition options in your Flex/Bison source. + +---- + +Enjoy! diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/1.png b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/1.png new file mode 100644 index 0000000000000000000000000000000000000000..e29510ecbc1ea268999bcea34e4251071b1fb81e GIT binary patch literal 31654 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

6gBN@G|Vx-zT`q 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 literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/4.png b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/4.png new file mode 100644 index 0000000000000000000000000000000000000000..288d79a2a5ae39861f0f81adeffd2bc814972b59 GIT binary patch literal 12213 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 literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/5.png b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/5.png new file mode 100644 index 0000000000000000000000000000000000000000..5b9e18f6d299232582980f37ab31551759623de2 GIT binary patch literal 11534 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 a_jto=Prr=RS)YTD4=Bp2%9KkR2mLRwDRyrF literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/6.png b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/6.png new file mode 100644 index 0000000000000000000000000000000000000000..5f51155ffb93e3e16ca6db013db5033f5a5b949b GIT binary patch literal 15611 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 Ck!u(L literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/BisonProperties.png b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/BisonProperties.png new file mode 100644 index 0000000000000000000000000000000000000000..309365884771fa0c6be1086bcf17ae0b9ec5dfc4 GIT binary patch literal 27186 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 literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/Properties.png b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/Properties.png new file mode 100644 index 0000000000000000000000000000000000000000..e636e764fe0d03d42a2c16ff0c6ec11efc560266 GIT binary patch literal 31446 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 literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/Verbosity.png b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/docs/Verbosity.png new file mode 100644 index 0000000000000000000000000000000000000000..b2997ba70a49d96ef05f409364103e6a9ab91411 GIT binary patch literal 29722 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 Jg~Ix;{vS=7cLM+b literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.props b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.props new file mode 100644 index 0000000..d27b3a4 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.props @@ -0,0 +1,23 @@ + + + + Midl + CustomBuild + + + _SelectedFiles;$(BisonDependsOn) + + + + %(Filename).tab.cpp + %(Filename).tab.h + +start /B /WAIT /D "%(RootDir)%(Directory)" win_bison.exe [AllOptions] [AdditionalOptions] "%(Filename)%(Extension)" +exit /b %errorlevel% + %(RootDir)%(Directory)%(OutputFile);%(RootDir)%(Directory)%(DefinesFile); + Process "%(Filename)%(Extension)" bison file + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.targets b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.targets new file mode 100644 index 0000000..feb0de2 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.targets @@ -0,0 +1,91 @@ + + + + + + BisonTarget + + + + $(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml + + + + + + + + @(Bison, '|') + + + + + + + + + $(ComputeLinkInputsTargets); + ComputeBisonOutput; + + + $(ComputeLibInputsTargets); + ComputeBisonOutput; + + + + + + + + + + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.xml b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.xml new file mode 100644 index 0000000..1d51e62 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_bison_only/win_bison_custom_build.xml @@ -0,0 +1,281 @@ + + + + + + + + + + General + + + + + Bison Options + + + + + Command Line + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Execute Before + + + Specifies the targets for the build customization to run before. + + + + + + + + + + + Execute After + + + Specifies the targets for the build customization to run after. + + + + + + + + + + + + + + Additional Options + + + Additional Options + + + + + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.props b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.props new file mode 100644 index 0000000..17317d6 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.props @@ -0,0 +1,43 @@ + + + + Midl + CustomBuild + + + _SelectedFiles;$(BisonDependsOn) + + + + %(Filename).tab.cpp + %(Filename).tab.h + +start /B /WAIT /D "%(RootDir)%(Directory)" win_bison.exe [AllOptions] [AdditionalOptions] "%(Filename)%(Extension)" +exit /b %errorlevel% + %(RootDir)%(Directory)%(OutputFile);%(RootDir)%(Directory)%(DefinesFile); + Process "%(Filename)%(Extension)" bison file + + + + Midl + CustomBuild + + + _SelectedFiles;$(FlexDependsOn) + + + + %(Filename).flex.cpp + true + +start /B /WAIT /D "%(RootDir)%(Directory)" win_flex.exe [AllOptions] [AdditionalOptions] "%(Filename)%(Extension)" +exit /b %errorlevel% + %(RootDir)%(Directory)%(OutputFile); + Process "%(Filename)%(Extension)" flex file + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.targets b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.targets new file mode 100644 index 0000000..2fabf74 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.targets @@ -0,0 +1,178 @@ + + + + + + BisonTarget + + + FlexTarget + + + + $(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml + + + $(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml + + + + + + + + @(Bison, '|') + + + + + + + + + $(ComputeLinkInputsTargets); + ComputeBisonOutput; + + + $(ComputeLibInputsTargets); + ComputeBisonOutput; + + + + + + + + + + + + + + + + + + @(Flex, '|') + + + + + + + + + $(ComputeLinkInputsTargets); + ComputeFlexOutput; + + + $(ComputeLibInputsTargets); + ComputeFlexOutput; + + + + + + + + + + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.xml b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.xml new file mode 100644 index 0000000..20c429c --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_bison/win_flex_bison_custom_build.xml @@ -0,0 +1,521 @@ + + + + + + + + + + General + + + + + Bison Options + + + + + Command Line + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Execute Before + + + Specifies the targets for the build customization to run before. + + + + + + + + + + + Execute After + + + Specifies the targets for the build customization to run after. + + + + + + + + + + + + + + Additional Options + + + Additional Options + + + + + + + + + + + + + + General + + + + + Flex Options + + + + + Command Line + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Execute Before + + + Specifies the targets for the build customization to run before. + + + + + + + + + + + Execute After + + + Specifies the targets for the build customization to run after. + + + + + + + + + + + + + + Additional Options + + + Additional Options + + + + + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.props b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.props new file mode 100644 index 0000000..9203b4a --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.props @@ -0,0 +1,23 @@ + + + + Midl + CustomBuild + + + _SelectedFiles;$(FlexDependsOn) + + + + %(Filename).flex.cpp + true + +start /B /WAIT /D "%(RootDir)%(Directory)" win_flex.exe [AllOptions] [AdditionalOptions] "%(Filename)%(Extension)" +exit /b %errorlevel% + %(RootDir)%(Directory)%(OutputFile); + Process "%(Filename)%(Extension)" flex file + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.targets b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.targets new file mode 100644 index 0000000..2e81555 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.targets @@ -0,0 +1,94 @@ + + + + + + FlexTarget + + + + $(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml + + + + + + + + @(Flex, '|') + + + + + + + + + $(ComputeLinkInputsTargets); + ComputeFlexOutput; + + + $(ComputeLibInputsTargets); + ComputeFlexOutput; + + + + + + + + + + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.xml b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.xml new file mode 100644 index 0000000..a471574 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/custom_build_rules/win_flex_only/win_flex_custom_build.xml @@ -0,0 +1,243 @@ + + + + + + + + + + General + + + + + Flex Options + + + + + Command Line + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Execute Before + + + Specifies the targets for the build customization to run before. + + + + + + + + + + + Execute After + + + Specifies the targets for the build customization to run after. + + + + + + + + + + + + + + Additional Options + + + Additional Options + + + + + + + \ No newline at end of file diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/README.md b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/README.md new file mode 100644 index 0000000..09886ea --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/README.md @@ -0,0 +1,227 @@ +This directory contains data needed by Bison. + +# Directory Content +## Skeletons +Bison skeletons: the general shapes of the different parser kinds, that are +specialized for specific grammars by the bison program. + +Currently, the supported skeletons are: + +- yacc.c + It used to be named bison.simple: it corresponds to C Yacc + compatible LALR(1) parsers. + +- lalr1.cc + Produces a C++ parser class. + +- lalr1.java + Produces a Java parser class. + +- glr.c + A Generalized LR C parser based on Bison's LALR(1) tables. + +- glr.cc + A Generalized LR C++ parser. Actually a C++ wrapper around glr.c. + +These skeletons are the only ones supported by the Bison team. Because the +interface between skeletons and the bison program is not finished, *we are +not bound to it*. In particular, Bison is not mature enough for us to +consider that "foreign skeletons" are supported. + +## m4sugar +This directory contains M4sugar, sort of an extended library for M4, which +is used by Bison to instantiate the skeletons. + +## xslt +This directory contains XSLT programs that transform Bison's XML output into +various formats. + +- bison.xsl + A library of routines used by the other XSLT programs. + +- xml2dot.xsl + Conversion into GraphViz's dot format. + +- xml2text.xsl + Conversion into text. + +- xml2xhtml.xsl + Conversion into XHTML. + +# Implementation Notes About the Skeletons + +"Skeleton" in Bison parlance means "backend": a skeleton is fed by the bison +executable with LR tables, facts about the symbols, etc. and they generate +the output (say parser.cc, parser.hh, location.hh, etc.). They are only in +charge of generating the parser and its auxiliary files, they do not +generate the XML output, the parser.output reports, nor the graphical +rendering. + +The bits of information passing from bison to the backend is named +"muscles". Muscles are passed to M4 via its standard input: it's a set of +m4 definitions. To see them, use `--trace=muscles`. + +Except for muscles, whose names are generated by bison, the skeletons have +no constraint at all on the macro names: there is no technical/theoretical +limitation, as long as you generate the output, you can do what you want. +However, of course, that would be a bad idea if, say, the C and C++ +skeletons used different approaches and had completely different +implementations. That would be a maintenance nightmare. + +Below, we document some of the macros that we use in several of the +skeletons. If you are to write a new skeleton, please, implement them for +your language. Overall, be sure to follow the same patterns as the existing +skeletons. + +## Vocabulary + +We use "formal arguments", or "formals" for short, to denote the declared +parameters of a function (e.g., `int argc, const char **argv`). Yes, this +is somewhat contradictory with `param` in the `%param` directives. + +We use "effective arguments", or "args" for short, to denote the values +passed in function calls (e.g., `argc, argv`). + +## Symbols + +### `b4_symbol(NUM, FIELD)` +In order to unify the handling of the various aspects of symbols (tag, type +name, whether terminal, etc.), bison.exe defines one macro per (token, +field), where field can `has_id`, `id`, etc.: see +`prepare_symbol_definitions()` in `src/output.c`. + +NUM can be: +- `empty` to denote the "empty" pseudo-symbol when it exists, +- `eof`, `error`, or `undef` +- a symbol number. + +FIELD can be: + +- `has_id`: 0 or 1 + Whether the symbol has an `id`. + +- `id`: string (e.g., `exp`, `NUM`, or `TOK_NUM` with api.token.prefix) + If `has_id`, the name of the token kind (prefixed by api.token.prefix if + defined), otherwise empty. Guaranteed to be usable as a C identifier. + This is used to define the token kind (i.e., the enum used by the return + value of yylex). Should be named `token_kind`. + +- `tag`: string + A human readable representation of the symbol. Can be `'foo'`, + `'foo.id'`, `'"foo"'` etc. + +- `code`: integer + The token code associated to the token kind `id`. + The external number as used by yylex. Can be ASCII code when a character, + some number chosen by bison, or some user number in the case of `%token + FOO `. Corresponds to `yychar` in `yacc.c`. + +- `is_token`: 0 or 1 + Whether this is a terminal symbol. + +- `kind_base`: string (e.g., `YYSYMBOL_exp`, `YYSYMBOL_NUM`) + The base of the symbol kind, i.e., the enumerator of this symbol (token or + nonterminal) which is mapped to its `number`. + +- `kind`: string + Same as `kind_base`, but possibly with a prefix in some languages. E.g., + EOF's `kind_base` and `kind` are `YYSYMBOL_YYEOF` in C, but are + `S_YYEMPTY` and `symbol_kind::S_YYEMPTY` in C++. + +- `number`: integer + The code associated to the `kind`. + The internal number (computed from the external number by yytranslate). + Corresponds to yytoken in yacc.c. This is the same number that serves as + key in b4_symbol(NUM, FIELD). + + In bison, symbols are first assigned increasing numbers in order of + appearance (but tokens first, then nterms). After grammar reduction, + unused nterms are then renumbered to appear last (i.e., first tokens, then + used nterms and finally unused nterms). This final number NUM is the one + contained in this field, and it is the one used as key in `b4_symbol(NUM, + FIELD)`. + + The code of the rule actions, however, is emitted before we know what + symbols are unused, so they use the original numbers. To avoid confusion, + they actually use "orig NUM" instead of just "NUM". bison also emits + definitions for `b4_symbol(orig NUM, number)` that map from original + numbers to the new ones. `b4_symbol` actually resolves `orig NUM` in the + other case, i.e., `b4_symbol(orig 42, tag)` would return the tag of the + symbols whose original number was 42. + +- `has_type`: 0, 1 + Whether has a semantic value. + +- `type_tag`: string + When api.value.type=union, the generated name for the union member. + yytype_INT etc. for symbols that has_id, otherwise yytype_1 etc. + +- `type`: string + If it has a semantic value, its type tag, or, if variant are used, + its type. + In the case of api.value.type=union, type is the real type (e.g. int). + +- `slot`: string + If it has a semantic value, the name of the union member (i.e., bounces to + either `type_tag` or `type`). It would be better to fix our mess and + always use `type` for the true type of the member, and `type_tag` for the + name of the union member. + +- `has_printer`: 0, 1 +- `printer`: string +- `printer_file`: string +- `printer_line`: integer +- `printer_loc`: location + If the symbol has a printer, everything about it. + +- `has_destructor`, `destructor`, `destructor_file`, `destructor_line`, `destructor_loc` + Likewise. + +### `b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG])` +Expansion of $$, $1, $3, etc. + +The semantic value from a given VAL. +- `VAL`: some semantic value storage (typically a union). e.g., `yylval` +- `SYMBOL-NUM`: the symbol number from which we extract the type tag. +- `TYPE-TAG`, the user forced the ``. + +The result can be used safely, it is put in parens to avoid nasty precedence +issues. + +### `b4_lhs_value(SYMBOL-NUM, [TYPE])` +Expansion of `$$` or `$$`, for symbol `SYMBOL-NUM`. + +### `b4_rhs_data(RULE-LENGTH, POS)` +The data corresponding to the symbol `#POS`, where the current rule has +`RULE-LENGTH` symbols on RHS. + +### `b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE])` +Expansion of `$POS`, where the current rule has `RULE-LENGTH` symbols +on RHS. + + diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/bison-default.css b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/bison-default.css new file mode 100644 index 0000000..aadaba1 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/bison-default.css @@ -0,0 +1,61 @@ +/* Default styling rules for Bison when doing terminal output. + Copyright (C) 2019-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* This is an experimental feature. The class names may change in the + future. */ + +/* Diagnostics. */ +.warning { color: purple; } +.error { color: red; } +.note { color: cyan; } + +.fixit-insert { color: green; } + +/* Semantic values in Bison's own parser traces. */ +.value { color: green; } + +/* "Sections" in traces (--trace). */ +.trace0 { color: green; } + +/* Syntax error messages. */ +.expected { color: green; } +.unexpected { color: red; } + + +/* Counterexamples. */ + +/* Cex: point in rule. */ +.cex-dot { color: red; } + +/* Cex: coloring various rules. */ +.cex-0 { color: yellow; } +.cex-1 { color: green; } +.cex-2 { color: blue; } +.cex-3 { color: purple; } +.cex-4 { color: violet; } +.cex-5 { color: orange; } +.cex-6 { color: brown; } +.cex-7 { color: mauve; } +.cex-8 { color: #013220; } /* Dark green. */ +.cex-9 { color: #e75480; } /* Dark pink. */ +.cex-10 { color: cyan; } +.cex-11 { color: orange; } + +/* Cex: derivation rewriting steps. */ +.cex-step { font-style: italic; } + +/* Cex: leaves of a derivation. */ +.cex-leaf { font-weight: 600; } diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/local.mk b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/local.mk new file mode 100644 index 0000000..c51d287 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/local.mk @@ -0,0 +1,58 @@ +## Copyright (C) 2002, 2005-2015, 2018-2021 Free Software Foundation, +## Inc. + +## This program is free software: you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program. If not, see . + +dist_pkgdata_DATA = \ + data/README.md \ + data/bison-default.css + +skeletonsdir = $(pkgdatadir)/skeletons +dist_skeletons_DATA = \ + data/skeletons/bison.m4 \ + data/skeletons/c++-skel.m4 \ + data/skeletons/c++.m4 \ + data/skeletons/c-like.m4 \ + data/skeletons/c-skel.m4 \ + data/skeletons/c.m4 \ + data/skeletons/glr.c \ + data/skeletons/glr.cc \ + data/skeletons/glr2.cc \ + data/skeletons/java-skel.m4 \ + data/skeletons/java.m4 \ + data/skeletons/lalr1.cc \ + data/skeletons/lalr1.java \ + data/skeletons/location.cc \ + data/skeletons/stack.hh \ + data/skeletons/traceon.m4 \ + data/skeletons/variant.hh \ + data/skeletons/yacc.c + +# Experimental support for the D language. +dist_skeletons_DATA += \ + data/skeletons/d-skel.m4 \ + data/skeletons/d.m4 \ + data/skeletons/lalr1.d + +m4sugardir = $(pkgdatadir)/m4sugar +dist_m4sugar_DATA = \ + data/m4sugar/foreach.m4 \ + data/m4sugar/m4sugar.m4 + +xsltdir = $(pkgdatadir)/xslt +dist_xslt_DATA = \ + data/xslt/bison.xsl \ + data/xslt/xml2dot.xsl \ + data/xslt/xml2text.xsl \ + data/xslt/xml2xhtml.xsl diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/m4sugar/foreach.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/m4sugar/foreach.m4 new file mode 100644 index 0000000..2052d44 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/m4sugar/foreach.m4 @@ -0,0 +1,362 @@ +# -*- Autoconf -*- +# This file is part of Autoconf. +# foreach-based replacements for recursive functions. +# Speeds up GNU M4 1.4.x by avoiding quadratic $@ recursion, but penalizes +# GNU M4 1.6 by requiring more memory and macro expansions. +# +# Copyright (C) 2008-2017, 2020 Free Software Foundation, Inc. + +# This file is part of Autoconf. This program is free +# software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# Under Section 7 of GPL version 3, you are granted additional +# permissions described in the Autoconf Configure Script Exception, +# version 3.0, as published by the Free Software Foundation. +# +# You should have received a copy of the GNU General Public License +# and a copy of the Autoconf Configure Script Exception along with +# this program; see the files COPYINGv3 and COPYING.EXCEPTION +# respectively. If not, see . + +# Written by Eric Blake. + +# In M4 1.4.x, every byte of $@ is rescanned. This means that an +# algorithm on n arguments that recurses with one less argument each +# iteration will scan n * (n + 1) / 2 arguments, for O(n^2) time. In +# M4 1.6, this was fixed so that $@ is only scanned once, then +# back-references are made to information stored about the scan. +# Thus, n iterations need only scan n arguments, for O(n) time. +# Additionally, in M4 1.4.x, recursive algorithms did not clean up +# memory very well, requiring O(n^2) memory rather than O(n) for n +# iterations. +# +# This file is designed to overcome the quadratic nature of $@ +# recursion by writing a variant of m4_foreach that uses m4_for rather +# than $@ recursion to operate on the list. This involves more macro +# expansions, but avoids the need to rescan a quadratic number of +# arguments, making these replacements very attractive for M4 1.4.x. +# On the other hand, in any version of M4, expanding additional macros +# costs additional time; therefore, in M4 1.6, where $@ recursion uses +# fewer macros, these replacements actually pessimize performance. +# Additionally, the use of $10 to mean the tenth argument violates +# POSIX; although all versions of m4 1.4.x support this meaning, a +# future m4 version may switch to take it as the first argument +# concatenated with a literal 0, so the implementations in this file +# are not future-proof. Thus, this file is conditionally included as +# part of m4_init(), only when it is detected that M4 probably has +# quadratic behavior (ie. it lacks the macro __m4_version__). +# +# Please keep this file in sync with m4sugar.m4. + +# _m4_foreach(PRE, POST, IGNORED, ARG...) +# --------------------------------------- +# Form the common basis of the m4_foreach and m4_map macros. For each +# ARG, expand PRE[ARG]POST[]. The IGNORED argument makes recursion +# easier, and must be supplied rather than implicit. +# +# This version minimizes the number of times that $@ is evaluated by +# using m4_for to generate a boilerplate into _m4_f then passing $@ to +# that temporary macro. Thus, the recursion is done in m4_for without +# reparsing any user input, and is not quadratic. For an idea of how +# this works, note that m4_foreach(i,[1,2],[i]) calls +# _m4_foreach([m4_define([i],],[)i],[],[1],[2]) +# which defines _m4_f: +# $1[$4]$2[]$1[$5]$2[]_m4_popdef([_m4_f]) +# then calls _m4_f([m4_define([i],],[)i],[],[1],[2]) for a net result: +# m4_define([i],[1])i[]m4_define([i],[2])i[]_m4_popdef([_m4_f]). +m4_define([_m4_foreach], +[m4_if([$#], [3], [], + [m4_pushdef([_m4_f], _m4_for([4], [$#], [1], + [$0_([1], [2],], [)])[_m4_popdef([_m4_f])])_m4_f($@)])]) + +m4_define([_m4_foreach_], +[[$$1[$$3]$$2[]]]) + +# m4_case(SWITCH, VAL1, IF-VAL1, VAL2, IF-VAL2, ..., DEFAULT) +# ----------------------------------------------------------- +# Find the first VAL that SWITCH matches, and expand the corresponding +# IF-VAL. If there are no matches, expand DEFAULT. +# +# Use m4_for to create a temporary macro in terms of a boilerplate +# m4_if with final cleanup. If $# is even, we have DEFAULT; if it is +# odd, then rounding the last $# up in the temporary macro is +# harmless. For example, both m4_case(1,2,3,4,5) and +# m4_case(1,2,3,4,5,6) result in the intermediate _m4_case being +# m4_if([$1],[$2],[$3],[$1],[$4],[$5],_m4_popdef([_m4_case])[$6]) +m4_define([m4_case], +[m4_if(m4_eval([$# <= 2]), [1], [$2], +[m4_pushdef([_$0], [m4_if(]_m4_for([2], m4_eval([($# - 1) / 2 * 2]), [2], + [_$0_(], [)])[_m4_popdef( + [_$0])]m4_dquote($m4_eval([($# + 1) & ~1]))[)])_$0($@)])]) + +m4_define([_m4_case_], +[$0_([1], [$1], m4_incr([$1]))]) + +m4_define([_m4_case__], +[[[$$1],[$$2],[$$3],]]) + +# m4_bmatch(SWITCH, RE1, VAL1, RE2, VAL2, ..., DEFAULT) +# ----------------------------------------------------- +# m4 equivalent of +# +# if (SWITCH =~ RE1) +# VAL1; +# elif (SWITCH =~ RE2) +# VAL2; +# elif ... +# ... +# else +# DEFAULT +# +# We build the temporary macro _m4_b: +# m4_define([_m4_b], _m4_defn([_m4_bmatch]))_m4_b([$1], [$2], [$3])... +# _m4_b([$1], [$m-1], [$m])_m4_b([], [], [$m+1]_m4_popdef([_m4_b])) +# then invoke m4_unquote(_m4_b($@)), for concatenation with later text. +m4_define([m4_bmatch], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [$2], + [m4_pushdef([_m4_b], [m4_define([_m4_b], + _m4_defn([_$0]))]_m4_for([3], m4_eval([($# + 1) / 2 * 2 - 1]), + [2], [_$0_(], [)])[_m4_b([], [],]m4_dquote([$]m4_eval( + [($# + 1) / 2 * 2]))[_m4_popdef([_m4_b]))])m4_unquote(_m4_b($@))])]) + +m4_define([_m4_bmatch], +[m4_if(m4_bregexp([$1], [$2]), [-1], [], [[$3]m4_define([$0])])]) + +m4_define([_m4_bmatch_], +[$0_([1], m4_decr([$1]), [$1])]) + +m4_define([_m4_bmatch__], +[[_m4_b([$$1], [$$2], [$$3])]]) + + +# m4_cond(TEST1, VAL1, IF-VAL1, TEST2, VAL2, IF-VAL2, ..., [DEFAULT]) +# ------------------------------------------------------------------- +# Similar to m4_if, except that each TEST is expanded when encountered. +# If the expansion of TESTn matches the string VALn, the result is IF-VALn. +# The result is DEFAULT if no tests passed. This macro allows +# short-circuiting of expensive tests, where it pays to arrange quick +# filter tests to run first. +# +# m4_cond already guarantees either 3*n or 3*n + 1 arguments, 1 <= n. +# We only have to speed up _m4_cond, by building the temporary _m4_c: +# m4_define([_m4_c], _m4_defn([m4_unquote]))_m4_c([m4_if(($1), [($2)], +# [[$3]m4_define([_m4_c])])])_m4_c([m4_if(($4), [($5)], +# [[$6]m4_define([_m4_c])])])..._m4_c([m4_if(($m-2), [($m-1)], +# [[$m]m4_define([_m4_c])])])_m4_c([[$m+1]]_m4_popdef([_m4_c])) +# We invoke m4_unquote(_m4_c($@)), for concatenation with later text. +m4_define([_m4_cond], +[m4_pushdef([_m4_c], [m4_define([_m4_c], + _m4_defn([m4_unquote]))]_m4_for([2], m4_eval([$# / 3 * 3 - 1]), [3], + [$0_(], [)])[_m4_c(]m4_dquote(m4_dquote( + [$]m4_eval([$# / 3 * 3 + 1])))[_m4_popdef([_m4_c]))])m4_unquote(_m4_c($@))]) + +m4_define([_m4_cond_], +[$0_(m4_decr([$1]), [$1], m4_incr([$1]))]) + +m4_define([_m4_cond__], +[[_m4_c([m4_if(($$1), [($$2)], [[$$3]m4_define([_m4_c])])])]]) + +# m4_bpatsubsts(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# m4_bpatsubsts already validated an odd number of arguments; we only +# need to speed up _m4_bpatsubsts. To avoid nesting, we build the +# temporary _m4_p: +# m4_define([_m4_p], [$1])m4_define([_m4_p], +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$2], [$3]))m4_define([_m4_p], +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$4], [$5]))m4_define([_m4_p],... +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$m-1], [$m]))m4_unquote( +# _m4_defn([_m4_p])_m4_popdef([_m4_p])) +m4_define([_m4_bpatsubsts], +[m4_pushdef([_m4_p], [m4_define([_m4_p], + ]m4_dquote([$]1)[)]_m4_for([3], [$#], [2], [$0_(], + [)])[m4_unquote(_m4_defn([_m4_p])_m4_popdef([_m4_p]))])_m4_p($@)]) + +m4_define([_m4_bpatsubsts_], +[$0_(m4_decr([$1]), [$1])]) + +m4_define([_m4_bpatsubsts__], +[[m4_define([_m4_p], +m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$$1], [$$2]))]]) + +# m4_shiftn(N, ...) +# ----------------- +# Returns ... shifted N times. Useful for recursive "varargs" constructs. +# +# m4_shiftn already validated arguments; we only need to speed up +# _m4_shiftn. If N is 3, then we build the temporary _m4_s, defined as +# ,[$5],[$6],...,[$m]_m4_popdef([_m4_s]) +# before calling m4_shift(_m4_s($@)). +m4_define([_m4_shiftn], +[m4_if(m4_incr([$1]), [$#], [], [m4_pushdef([_m4_s], + _m4_for(m4_eval([$1 + 2]), [$#], [1], + [[,]m4_dquote($], [)])[_m4_popdef([_m4_s])])m4_shift(_m4_s($@))])]) + +# m4_do(STRING, ...) +# ------------------ +# This macro invokes all its arguments (in sequence, of course). It is +# useful for making your macros more structured and readable by dropping +# unnecessary dnl's and have the macros indented properly. +# +# Here, we use the temporary macro _m4_do, defined as +# $1[]$2[]...[]$n[]_m4_popdef([_m4_do]) +m4_define([m4_do], +[m4_if([$#], [0], [], + [m4_pushdef([_$0], _m4_for([1], [$#], [1], + [$], [[[]]])[_m4_popdef([_$0])])_$0($@)])]) + +# m4_dquote_elt(ARGS) +# ------------------- +# Return ARGS as an unquoted list of double-quoted arguments. +# +# _m4_foreach to the rescue. +m4_define([m4_dquote_elt], +[m4_if([$#], [0], [], [[[$1]]_m4_foreach([,m4_dquote(], [)], $@)])]) + +# m4_reverse(ARGS) +# ---------------- +# Output ARGS in reverse order. +# +# Invoke _m4_r($@) with the temporary _m4_r built as +# [$m], [$m-1], ..., [$2], [$1]_m4_popdef([_m4_r]) +m4_define([m4_reverse], +[m4_if([$#], [0], [], [$#], [1], [[$1]], +[m4_pushdef([_m4_r], [[$$#]]_m4_for(m4_decr([$#]), [1], [-1], + [[, ]m4_dquote($], [)])[_m4_popdef([_m4_r])])_m4_r($@)])]) + + +# m4_map_args_pair(EXPRESSION, [END-EXPR = EXPRESSION], ARG...) +# ------------------------------------------------------------- +# Perform a pairwise grouping of consecutive ARGs, by expanding +# EXPRESSION([ARG1], [ARG2]). If there are an odd number of ARGs, the +# final argument is expanded with END-EXPR([ARGn]). +# +# Build the temporary macro _m4_map_args_pair, with the $2([$m+1]) +# only output if $# is odd: +# $1([$3], [$4])[]$1([$5], [$6])[]...$1([$m-1], +# [$m])[]m4_default([$2], [$1])([$m+1])[]_m4_popdef([_m4_map_args_pair]) +m4_define([m4_map_args_pair], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [m4_fatal([$0: too few arguments: $#: $1])], + [$#], [2], [], + [$#], [3], [m4_default([$2], [$1])([$3])[]], + [m4_pushdef([_$0], _m4_for([3], + m4_eval([$# / 2 * 2 - 1]), [2], [_$0_(], [)])_$0_end( + [1], [2], [$#])[_m4_popdef([_$0])])_$0($@)])]) + +m4_define([_m4_map_args_pair_], +[$0_([1], [$1], m4_incr([$1]))]) + +m4_define([_m4_map_args_pair__], +[[$$1([$$2], [$$3])[]]]) + +m4_define([_m4_map_args_pair_end], +[m4_if(m4_eval([$3 & 1]), [1], [[m4_default([$$2], [$$1])([$$3])[]]])]) + +# m4_join(SEP, ARG1, ARG2...) +# --------------------------- +# Produce ARG1SEPARG2...SEPARGn. Avoid back-to-back SEP when a given ARG +# is the empty string. No expansion is performed on SEP or ARGs. +# +# Use a self-modifying separator, since we don't know how many +# arguments might be skipped before a separator is first printed, but +# be careful if the separator contains $. _m4_foreach to the rescue. +m4_define([m4_join], +[m4_pushdef([_m4_sep], [m4_define([_m4_sep], _m4_defn([m4_echo]))])]dnl +[_m4_foreach([_$0([$1],], [)], $@)_m4_popdef([_m4_sep])]) + +m4_define([_m4_join], +[m4_if([$2], [], [], [_m4_sep([$1])[$2]])]) + +# m4_joinall(SEP, ARG1, ARG2...) +# ------------------------------ +# Produce ARG1SEPARG2...SEPARGn. An empty ARG results in back-to-back SEP. +# No expansion is performed on SEP or ARGs. +# +# A bit easier than m4_join. _m4_foreach to the rescue. +m4_define([m4_joinall], +[[$2]m4_if(m4_eval([$# <= 2]), [1], [], + [_m4_foreach([$1], [], m4_shift($@))])]) + +# m4_list_cmp(A, B) +# ----------------- +# Compare the two lists of integer expressions A and B. +# +# m4_list_cmp takes care of any side effects; we only override +# _m4_list_cmp_raw, where we can safely expand lists multiple times. +# First, insert padding so that both lists are the same length; the +# trailing +0 is necessary to handle a missing list. Next, create a +# temporary macro to perform pairwise comparisons until an inequality +# is found. For example, m4_list_cmp([1], [1,2]) creates _m4_cmp as +# m4_if(m4_eval([($1) != ($3)]), [1], [m4_cmp([$1], [$3])], +# m4_eval([($2) != ($4)]), [1], [m4_cmp([$2], [$4])], +# [0]_m4_popdef([_m4_cmp])) +# then calls _m4_cmp([1+0], [0*2], [1], [2+0]) +m4_define([_m4_list_cmp_raw], +[m4_if([$1], [$2], 0, + [_m4_list_cmp($1+0_m4_list_pad(m4_count($1), m4_count($2)), + $2+0_m4_list_pad(m4_count($2), m4_count($1)))])]) + +m4_define([_m4_list_pad], +[m4_if(m4_eval($1 < $2), [1], + [_m4_for(m4_incr([$1]), [$2], [1], [,0*])])]) + +m4_define([_m4_list_cmp], +[m4_pushdef([_m4_cmp], [m4_if(]_m4_for( + [1], m4_eval([$# >> 1]), [1], [$0_(], [,]m4_eval([$# >> 1])[)])[ + [0]_m4_popdef([_m4_cmp]))])_m4_cmp($@)]) + +m4_define([_m4_list_cmp_], +[$0_([$1], m4_eval([$1 + $2]))]) + +m4_define([_m4_list_cmp__], +[[m4_eval([($$1) != ($$2)]), [1], [m4_cmp([$$1], [$$2])], +]]) + +# m4_max(EXPR, ...) +# m4_min(EXPR, ...) +# ----------------- +# Return the decimal value of the maximum (or minimum) in a series of +# integer expressions. +# +# _m4_foreach to the rescue; we only need to replace _m4_minmax. Here, +# we need a temporary macro to track the best answer so far, so that +# the foreach expression is tractable. +m4_define([_m4_minmax], +[m4_pushdef([_m4_best], m4_eval([$2]))_m4_foreach( + [m4_define([_m4_best], $1(_m4_best,], [))], m4_shift($@))]dnl +[_m4_best[]_m4_popdef([_m4_best])]) + +# m4_set_add_all(SET, VALUE...) +# ----------------------------- +# Add each VALUE into SET. This is O(n) in the number of VALUEs, and +# can be faster than calling m4_set_add for each VALUE. +# +# _m4_foreach to the rescue. If no deletions have occurred, then +# avoid the speed penalty of m4_set_add. +m4_define([m4_set_add_all], +[m4_if([$#], [0], [], [$#], [1], [], + [m4_define([_m4_set_size($1)], m4_eval(m4_set_size([$1]) + + m4_len(_m4_foreach(m4_ifdef([_m4_set_cleanup($1)], + [[m4_set_add]], [[_$0]])[([$1],], [)], $@))))])]) + +m4_define([_m4_set_add_all], +[m4_ifdef([_m4_set([$1],$2)], [], + [m4_define([_m4_set([$1],$2)], + [1])m4_pushdef([_m4_set([$1])], [$2])-])]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/m4sugar/m4sugar.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/m4sugar/m4sugar.m4 new file mode 100644 index 0000000..b42fc1a --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/m4sugar/m4sugar.m4 @@ -0,0 +1,3329 @@ +divert(-1)# -*- Autoconf -*- +# This file is part of Autoconf. +# Base M4 layer. +# Requires GNU M4. +# +# Copyright (C) 1999-2017, 2020 Free Software Foundation, Inc. + +# This file is part of Autoconf. This program is free +# software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# Under Section 7 of GPL version 3, you are granted additional +# permissions described in the Autoconf Configure Script Exception, +# version 3.0, as published by the Free Software Foundation. +# +# You should have received a copy of the GNU General Public License +# and a copy of the Autoconf Configure Script Exception along with +# this program; see the files COPYINGv3 and COPYING.EXCEPTION +# respectively. If not, see . + +# Written by Akim Demaille. + +# Set the quotes, whatever the current quoting system. +changequote() +changequote([, ]) + +# Some old m4's don't support m4exit. But they provide +# equivalent functionality by core dumping because of the +# long macros we define. +ifdef([__gnu__], , +[errprint(M4sugar requires GNU M4. Install it before installing M4sugar or +set the M4 environment variable to its absolute file name.) +m4exit(2)]) + + +## ------------------------------- ## +## 1. Simulate --prefix-builtins. ## +## ------------------------------- ## + +# m4_define +# m4_defn +# m4_undefine +define([m4_define], defn([define])) +define([m4_defn], defn([defn])) +define([m4_undefine], defn([undefine])) + +m4_undefine([define]) +m4_undefine([defn]) +m4_undefine([undefine]) + + +# m4_copy(SRC, DST) +# ----------------- +# Define DST as the definition of SRC. +# What's the difference between: +# 1. m4_copy([from], [to]) +# 2. m4_define([to], [from($@)]) +# Well, obviously 1 is more expensive in space. Maybe 2 is more expensive +# in time, but because of the space cost of 1, it's not that obvious. +# Nevertheless, one huge difference is the handling of `$0'. If `from' +# uses `$0', then with 1, `to''s `$0' is `to', while it is `from' in 2. +# The user would certainly prefer to see `to'. +# +# This definition is in effect during m4sugar initialization, when +# there are no pushdef stacks; later on, we redefine it to something +# more powerful for all other clients to use. +m4_define([m4_copy], +[m4_define([$2], m4_defn([$1]))]) + + +# m4_rename(SRC, DST) +# ------------------- +# Rename the macro SRC to DST. +m4_define([m4_rename], +[m4_copy([$1], [$2])m4_undefine([$1])]) + + +# m4_rename_m4(MACRO-NAME) +# ------------------------ +# Rename MACRO-NAME to m4_MACRO-NAME. +m4_define([m4_rename_m4], +[m4_rename([$1], [m4_$1])]) + + +# m4_copy_unm4(m4_MACRO-NAME) +# --------------------------- +# Copy m4_MACRO-NAME to MACRO-NAME. +m4_define([m4_copy_unm4], +[m4_copy([$1], m4_bpatsubst([$1], [^m4_\(.*\)], [[\1]]))]) + + +# Some m4 internals have names colliding with tokens we might use. +# Rename them a` la `m4 --prefix-builtins'. Conditionals first, since +# some subsequent renames are conditional. +m4_rename_m4([ifdef]) +m4_rename([ifelse], [m4_if]) + +m4_rename_m4([builtin]) +m4_rename_m4([changecom]) +m4_rename_m4([changequote]) +m4_ifdef([changeword],dnl conditionally available in 1.4.x +[m4_undefine([changeword])]) +m4_rename_m4([debugfile]) +m4_rename_m4([debugmode]) +m4_rename_m4([decr]) +m4_rename_m4([divnum]) +m4_rename_m4([dumpdef]) +m4_rename_m4([errprint]) +m4_rename_m4([esyscmd]) +m4_rename_m4([eval]) +m4_rename_m4([format]) +m4_undefine([include]) +m4_rename_m4([incr]) +m4_rename_m4([index]) +m4_rename_m4([indir]) +m4_rename_m4([len]) +m4_rename([m4exit], [m4_exit]) +m4_undefine([m4wrap]) +m4_ifdef([mkstemp],dnl added in M4 1.4.8 +[m4_rename_m4([mkstemp]) +m4_copy([m4_mkstemp], [m4_maketemp]) +m4_undefine([maketemp])], +[m4_rename_m4([maketemp]) +m4_copy([m4_maketemp], [m4_mkstemp])]) +m4_rename([patsubst], [m4_bpatsubst]) +m4_rename_m4([popdef]) +m4_rename_m4([pushdef]) +m4_rename([regexp], [m4_bregexp]) +m4_rename_m4([shift]) +m4_undefine([sinclude]) +m4_rename_m4([substr]) +m4_ifdef([symbols],dnl present only in alpha-quality 1.4o +[m4_rename_m4([symbols])]) +m4_rename_m4([syscmd]) +m4_rename_m4([sysval]) +m4_rename_m4([traceoff]) +m4_rename_m4([traceon]) +m4_rename_m4([translit]) + +# _m4_defn(ARG) +# ------------- +# _m4_defn is for internal use only - it bypasses the wrapper, so it +# must only be used on one argument at a time, and only on macros +# known to be defined. Make sure this still works if the user renames +# m4_defn but not _m4_defn. +m4_copy([m4_defn], [_m4_defn]) + +# _m4_divert_raw(NUM) +# ------------------- +# _m4_divert_raw is for internal use only. Use this instead of +# m4_builtin([divert], NUM), so that tracing diversion flow is easier. +m4_rename([divert], [_m4_divert_raw]) + +# _m4_popdef(ARG...) +# ------------------ +# _m4_popdef is for internal use only - it bypasses the wrapper, so it +# must only be used on macros known to be defined. Make sure this +# still works if the user renames m4_popdef but not _m4_popdef. +m4_copy([m4_popdef], [_m4_popdef]) + +# _m4_undefine(ARG...) +# -------------------- +# _m4_undefine is for internal use only - it bypasses the wrapper, so +# it must only be used on macros known to be defined. Make sure this +# still works if the user renames m4_undefine but not _m4_undefine. +m4_copy([m4_undefine], [_m4_undefine]) + +# _m4_undivert(NUM...) +# -------------------- +# _m4_undivert is for internal use only, and should always be given +# arguments. Use this instead of m4_builtin([undivert], NUM...), so +# that tracing diversion flow is easier. +m4_rename([undivert], [_m4_undivert]) + + +## ------------------- ## +## 2. Error messages. ## +## ------------------- ## + + +# m4_location +# ----------- +# Output the current file, colon, and the current line number. +m4_define([m4_location], +[__file__:__line__]) + + +# m4_errprintn(MSG) +# ----------------- +# Same as `errprint', but with the missing end of line. +m4_define([m4_errprintn], +[m4_errprint([$1 +])]) + + +# m4_warning(MSG) +# --------------- +# Warn the user. +m4_define([m4_warning], +[m4_errprintn(m4_location[: warning: $1])]) + + +# m4_fatal(MSG, [EXIT-STATUS]) +# ---------------------------- +# Fatal the user. :) +m4_define([m4_fatal], +[m4_errprintn(m4_location[: error: $1] +m4_expansion_stack)m4_exit(m4_if([$2],, 1, [$2]))]) + + +# m4_assert(EXPRESSION, [EXIT-STATUS = 1]) +# ---------------------------------------- +# This macro ensures that EXPRESSION evaluates to true, and exits if +# EXPRESSION evaluates to false. +m4_define([m4_assert], +[m4_if(m4_eval([$1]), 0, + [m4_fatal([assert failed: $1], [$2])])]) + + + +## ------------- ## +## 3. Warnings. ## +## ------------- ## + + +# _m4_warn(CATEGORY, MESSAGE, [STACK-TRACE]) +# ------------------------------------------ +# Report a MESSAGE to the user if the CATEGORY of warnings is enabled. +# This is for traces only. +# If present, STACK-TRACE is a \n-separated list of "LOCATION: MESSAGE", +# where the last line (and no other) ends with "the top level". +# +# Within m4, the macro is a no-op. This macro really matters +# when autom4te post-processes the trace output. +m4_define([_m4_warn], []) + + +# m4_warn(CATEGORY, MESSAGE) +# -------------------------- +# Report a MESSAGE to the user if the CATEGORY of warnings is enabled. +m4_define([m4_warn], +[_m4_warn([$1], [$2], +m4_ifdef([_m4_expansion_stack], [m4_expansion_stack]))]) + + + +## ------------------- ## +## 4. File inclusion. ## +## ------------------- ## + + +# We also want to neutralize include (and sinclude for symmetry), +# but we want to extend them slightly: warn when a file is included +# several times. This is, in general, a dangerous operation, because +# too many people forget to quote the first argument of m4_define. +# +# For instance in the following case: +# m4_define(foo, [bar]) +# then a second reading will turn into +# m4_define(bar, [bar]) +# which is certainly not what was meant. + +# m4_include_unique(FILE) +# ----------------------- +# Declare that the FILE was loading; and warn if it has already +# been included. +m4_define([m4_include_unique], +[m4_ifdef([m4_include($1)], + [m4_warn([syntax], [file `$1' included several times])])dnl +m4_define([m4_include($1)])]) + + +# m4_include(FILE) +# ---------------- +# Like the builtin include, but warns against multiple inclusions. +m4_define([m4_include], +[m4_include_unique([$1])dnl +m4_builtin([include], [$1])]) + + +# m4_sinclude(FILE) +# ----------------- +# Like the builtin sinclude, but warns against multiple inclusions. +m4_define([m4_sinclude], +[m4_include_unique([$1])dnl +m4_builtin([sinclude], [$1])]) + + + +## ------------------------------------ ## +## 5. Additional branching constructs. ## +## ------------------------------------ ## + +# Both `m4_ifval' and `m4_ifset' tests against the empty string. The +# difference is that `m4_ifset' is specialized on macros. +# +# In case of arguments of macros, eg. $1, it makes little difference. +# In the case of a macro `FOO', you don't want to check `m4_ifval(FOO, +# TRUE)', because if `FOO' expands with commas, there is a shifting of +# the arguments. So you want to run `m4_ifval([FOO])', but then you just +# compare the *string* `FOO' against `', which, of course fails. +# +# So you want the variation `m4_ifset' that expects a macro name as $1. +# If this macro is both defined and defined to a non empty value, then +# it runs TRUE, etc. + + +# m4_ifblank(COND, [IF-BLANK], [IF-TEXT]) +# m4_ifnblank(COND, [IF-TEXT], [IF-BLANK]) +# ---------------------------------------- +# If COND is empty, or consists only of blanks (space, tab, newline), +# then expand IF-BLANK, otherwise expand IF-TEXT. This differs from +# m4_ifval only if COND has just whitespace, but it helps optimize in +# spite of users who mistakenly leave trailing space after what they +# thought was an empty argument: +# macro( +# [] +# ) +# +# Writing one macro in terms of the other causes extra overhead, so +# we inline both definitions. +m4_define([m4_ifblank], +[m4_if(m4_translit([[$1]], [ ][ ][ +]), [], [$2], [$3])]) + +m4_define([m4_ifnblank], +[m4_if(m4_translit([[$1]], [ ][ ][ +]), [], [$3], [$2])]) + + +# m4_ifval(COND, [IF-TRUE], [IF-FALSE]) +# ------------------------------------- +# If COND is not the empty string, expand IF-TRUE, otherwise IF-FALSE. +# Comparable to m4_ifdef. +m4_define([m4_ifval], +[m4_if([$1], [], [$3], [$2])]) + + +# m4_n(TEXT) +# ---------- +# If TEXT is not empty, return TEXT and a new line, otherwise nothing. +m4_define([m4_n], +[m4_if([$1], + [], [], + [$1 +])]) + + +# m4_ifvaln(COND, [IF-TRUE], [IF-FALSE]) +# -------------------------------------- +# Same as `m4_ifval', but add an extra newline to IF-TRUE or IF-FALSE +# unless that argument is empty. +m4_define([m4_ifvaln], +[m4_if([$1], + [], [m4_n([$3])], + [m4_n([$2])])]) + + +# m4_ifset(MACRO, [IF-TRUE], [IF-FALSE]) +# -------------------------------------- +# If MACRO has no definition, or of its definition is the empty string, +# expand IF-FALSE, otherwise IF-TRUE. +m4_define([m4_ifset], +[m4_ifdef([$1], + [m4_ifval(_m4_defn([$1]), [$2], [$3])], + [$3])]) + + +# m4_ifndef(NAME, [IF-NOT-DEFINED], [IF-DEFINED]) +# ----------------------------------------------- +m4_define([m4_ifndef], +[m4_ifdef([$1], [$3], [$2])]) + + +# m4_case(SWITCH, VAL1, IF-VAL1, VAL2, IF-VAL2, ..., DEFAULT) +# ----------------------------------------------------------- +# m4 equivalent of +# switch (SWITCH) +# { +# case VAL1: +# IF-VAL1; +# break; +# case VAL2: +# IF-VAL2; +# break; +# ... +# default: +# DEFAULT; +# break; +# }. +# All the values are optional, and the macro is robust to active +# symbols properly quoted. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_case], +[m4_if([$#], 0, [], + [$#], 1, [], + [$#], 2, [$2], + [$1], [$2], [$3], + [$0([$1], m4_shift3($@))])]) + + +# m4_bmatch(SWITCH, RE1, VAL1, RE2, VAL2, ..., DEFAULT) +# ----------------------------------------------------- +# m4 equivalent of +# +# if (SWITCH =~ RE1) +# VAL1; +# elif (SWITCH =~ RE2) +# VAL2; +# elif ... +# ... +# else +# DEFAULT +# +# All the values are optional, and the macro is robust to active symbols +# properly quoted. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_bmatch], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [$2], + [m4_if(m4_bregexp([$1], [$2]), -1, [$0([$1], m4_shift3($@))], + [$3])])]) + +# m4_argn(N, ARGS...) +# ------------------- +# Extract argument N (greater than 0) from ARGS. Example: +# m4_define([b], [B]) +# m4_argn([2], [a], [b], [c]) => b +# +# Rather than using m4_car(m4_shiftn([$1], $@)), we exploit the fact that +# GNU m4 can directly reference any argument, through an indirect macro. +m4_define([m4_argn], +[m4_assert([0 < $1])]dnl +[m4_pushdef([_$0], [_m4_popdef([_$0])]m4_dquote([$]m4_incr([$1])))_$0($@)]) + + +# m4_car(ARGS...) +# m4_cdr(ARGS...) +# --------------- +# Manipulate m4 lists. m4_car returns the first argument. m4_cdr +# bundles all but the first argument into a quoted list. These two +# macros are generally used with list arguments, with quoting removed +# to break the list into multiple m4 ARGS. +m4_define([m4_car], [[$1]]) +m4_define([m4_cdr], +[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], + [$#], 1, [], + [m4_dquote(m4_shift($@))])]) + +# _m4_cdr(ARGS...) +# ---------------- +# Like m4_cdr, except include a leading comma unless only one argument +# remains. Why? Because comparing a large list against [] is more +# expensive in expansion time than comparing the number of arguments; so +# _m4_cdr can be used to reduce the number of arguments when it is time +# to end recursion. +m4_define([_m4_cdr], +[m4_if([$#], 1, [], + [, m4_dquote(m4_shift($@))])]) + + + +# m4_cond(TEST1, VAL1, IF-VAL1, TEST2, VAL2, IF-VAL2, ..., [DEFAULT]) +# ------------------------------------------------------------------- +# Similar to m4_if, except that each TEST is expanded when encountered. +# If the expansion of TESTn matches the string VALn, the result is IF-VALn. +# The result is DEFAULT if no tests passed. This macro allows +# short-circuiting of expensive tests, where it pays to arrange quick +# filter tests to run first. +# +# For an example, consider a previous implementation of _AS_QUOTE_IFELSE: +# +# m4_if(m4_index([$1], [\]), [-1], [$2], +# m4_eval(m4_index([$1], [\\]) >= 0), [1], [$2], +# m4_eval(m4_index([$1], [\$]) >= 0), [1], [$2], +# m4_eval(m4_index([$1], [\`]) >= 0), [1], [$3], +# m4_eval(m4_index([$1], [\"]) >= 0), [1], [$3], +# [$2]) +# +# Here, m4_index is computed 5 times, and m4_eval 4, even if $1 contains +# no backslash. It is more efficient to do: +# +# m4_cond([m4_index([$1], [\])], [-1], [$2], +# [m4_eval(m4_index([$1], [\\]) >= 0)], [1], [$2], +# [m4_eval(m4_index([$1], [\$]) >= 0)], [1], [$2], +# [m4_eval(m4_index([$1], [\`]) >= 0)], [1], [$3], +# [m4_eval(m4_index([$1], [\"]) >= 0)], [1], [$3], +# [$2]) +# +# In the common case of $1 with no backslash, only one m4_index expansion +# occurs, and m4_eval is avoided altogether. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_cond], +[m4_if([$#], [0], [m4_fatal([$0: cannot be called without arguments])], + [$#], [1], [$1], + m4_eval([$# % 3]), [2], [m4_fatal([$0: missing an argument])], + [_$0($@)])]) + +m4_define([_m4_cond], +[m4_if(($1), [($2)], [$3], + [$#], [3], [], + [$#], [4], [$4], + [$0(m4_shift3($@))])]) + + +## ---------------------------------------- ## +## 6. Enhanced version of some primitives. ## +## ---------------------------------------- ## + +# m4_bpatsubsts(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# All the values are optional, and the macro is robust to active symbols +# properly quoted. +# +# I would have liked to name this macro `m4_bpatsubst', unfortunately, +# due to quotation problems, I need to double quote $1 below, therefore +# the anchors are broken :( I can't let users be trapped by that. +# +# Recall that m4_shift3 always results in an argument. Hence, we need +# to distinguish between a final deletion vs. ending recursion. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_bpatsubsts], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [m4_unquote(m4_builtin([patsubst], [[$1]], [$2]))], + [$#], 3, [m4_unquote(m4_builtin([patsubst], [[$1]], [$2], [$3]))], + [_$0($@m4_if(m4_eval($# & 1), 0, [,]))])]) +m4_define([_m4_bpatsubsts], +[m4_if([$#], 2, [$1], + [$0(m4_builtin([patsubst], [[$1]], [$2], [$3]), + m4_shift3($@))])]) + + +# m4_copy(SRC, DST) +# ----------------- +# Define the pushdef stack DST as a copy of the pushdef stack SRC; +# give an error if DST is already defined. This is particularly nice +# for copying self-modifying pushdef stacks, where the top definition +# includes one-shot initialization that is later popped to the normal +# definition. This version intentionally does nothing if SRC is +# undefined. +# +# Some macros simply can't be renamed with this method: namely, anything +# involved in the implementation of m4_stack_foreach_sep. +m4_define([m4_copy], +[m4_ifdef([$2], [m4_fatal([$0: won't overwrite defined macro: $2])], + [m4_stack_foreach_sep([$1], [m4_pushdef([$2],], [)])])]dnl +[m4_ifdef([m4_location($1)], [m4_define([m4_location($2)], m4_location)])]) + + +# m4_copy_force(SRC, DST) +# m4_rename_force(SRC, DST) +# ------------------------- +# Like m4_copy/m4_rename, except blindly overwrite any existing DST. +# Note that m4_copy_force tolerates undefined SRC, while m4_rename_force +# does not. +m4_define([m4_copy_force], +[m4_ifdef([$2], [_m4_undefine([$2])])m4_copy($@)]) + +m4_define([m4_rename_force], +[m4_ifdef([$2], [_m4_undefine([$2])])m4_rename($@)]) + + +# m4_define_default(MACRO, VALUE) +# ------------------------------- +# If MACRO is undefined, set it to VALUE. +m4_define([m4_define_default], +[m4_ifndef([$1], [m4_define($@)])]) + + +# m4_default(EXP1, EXP2) +# m4_default_nblank(EXP1, EXP2) +# ----------------------------- +# Returns EXP1 if not empty/blank, otherwise EXP2. Expand the result. +# +# m4_default is called on hot paths, so inline the contents of m4_ifval, +# for one less round of expansion. +m4_define([m4_default], +[m4_if([$1], [], [$2], [$1])]) + +m4_define([m4_default_nblank], +[m4_ifblank([$1], [$2], [$1])]) + + +# m4_default_quoted(EXP1, EXP2) +# m4_default_nblank_quoted(EXP1, EXP2) +# ------------------------------------ +# Returns EXP1 if non empty/blank, otherwise EXP2. Leave the result quoted. +# +# For comparison: +# m4_define([active], [ACTIVE]) +# m4_default([active], [default]) => ACTIVE +# m4_default([], [active]) => ACTIVE +# -m4_default([ ], [active])- => - - +# -m4_default_nblank([ ], [active])- => -ACTIVE- +# m4_default_quoted([active], [default]) => active +# m4_default_quoted([], [active]) => active +# -m4_default_quoted([ ], [active])- => - - +# -m4_default_nblank_quoted([ ], [active])- => -active- +# +# m4_default macro is called on hot paths, so inline the contents of m4_ifval, +# for one less round of expansion. +m4_define([m4_default_quoted], +[m4_if([$1], [], [[$2]], [[$1]])]) + +m4_define([m4_default_nblank_quoted], +[m4_ifblank([$1], [[$2]], [[$1]])]) + + +# m4_defn(NAME) +# ------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). This replacement is not a full-featured +# replacement: if any of the defined macros contain unbalanced quoting, but +# when pasted together result in a well-quoted string, then only native m4 +# support is able to get it correct. But that's where quadrigraphs come in +# handy, if you really need unbalanced quotes inside your macros. +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_defn], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_defn([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + + +# m4_dumpdef(NAME...) +# ------------------- +# In m4 1.4.x, dumpdef writes to the current debugfile, rather than +# stderr. This in turn royally confuses autom4te; so we follow the +# lead of newer m4 and always dump to stderr. Unlike the original, +# this version requires an argument, since there is no convenient way +# in m4 1.4.x to grab the names of all defined macros. Newer m4 +# always dumps to stderr, regardless of the current debugfile; it also +# provides m4symbols as a way to grab all current macro names. But +# dumpdefs is not frequently called, so we don't need to worry about +# conditionally using these newer features. Also, this version +# doesn't sort multiple arguments. +# +# If we detect m4 1.6 or newer, then provide an alternate definition, +# installed during m4_init, that allows builtins through. +# Unfortunately, there is no nice way in m4 1.4.x to dump builtins. +m4_define([m4_dumpdef], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_ifdef([$1], [m4_errprintn( + [$1: ]m4_dquote(_m4_defn([$1])))], [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + +m4_define([_m4_dumpdef], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_builtin([dumpdef], [$1])], + [m4_map_args_sep([m4_builtin([dumpdef],], [)], [], $@)])]) + + +# m4_dumpdefs(NAME...) +# -------------------- +# Similar to `m4_dumpdef(NAME)', but if NAME was m4_pushdef'ed, display its +# value stack (most recent displayed first). Also, this version silently +# ignores undefined macros, rather than erroring out. +# +# This macro cheats, because it relies on the current definition of NAME +# while the second argument of m4_stack_foreach_lifo is evaluated (which +# would be undefined according to the API). +m4_define([m4_dumpdefs], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_stack_foreach_lifo([$1], [m4_dumpdef([$1])m4_ignore])], + [m4_map_args([$0], $@)])]) + +# m4_esyscmd_s(COMMAND) +# --------------------- +# Like m4_esyscmd, except strip any trailing newlines, thus behaving +# more like shell command substitution. +m4_define([m4_esyscmd_s], +[m4_chomp_all(m4_esyscmd([$1]))]) + + +# m4_popdef(NAME) +# --------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_popdef], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_popdef([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + + +# m4_shiftn(N, ...) +# ----------------- +# Returns ... shifted N times. Useful for recursive "varargs" constructs. +# +# Autoconf does not use this macro, because it is inherently slower than +# calling the common cases of m4_shift2 or m4_shift3 directly. But it +# might as well be fast for other clients, such as Libtool. One way to +# do this is to expand $@ only once in _m4_shiftn (otherwise, for long +# lists, the expansion of m4_if takes twice as much memory as what the +# list itself occupies, only to throw away the unused branch). The end +# result is strictly equivalent to +# m4_if([$1], 1, [m4_shift(,m4_shift(m4_shift($@)))], +# [_m4_shiftn(m4_decr([$1]), m4_shift(m4_shift($@)))]) +# but with the final `m4_shift(m4_shift($@)))' shared between the two +# paths. The first leg uses a no-op m4_shift(,$@) to balance out the (). +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_shiftn], +[m4_assert(0 < $1 && $1 < $#)_$0($@)]) + +m4_define([_m4_shiftn], +[m4_if([$1], 1, [m4_shift(], + [$0(m4_decr([$1])]), m4_shift(m4_shift($@)))]) + +# m4_shift2(...) +# m4_shift3(...) +# -------------- +# Returns ... shifted twice, and three times. Faster than m4_shiftn. +m4_define([m4_shift2], [m4_shift(m4_shift($@))]) +m4_define([m4_shift3], [m4_shift(m4_shift(m4_shift($@)))]) + +# _m4_shift2(...) +# _m4_shift3(...) +# --------------- +# Like m4_shift2 or m4_shift3, except include a leading comma unless shifting +# consumes all arguments. Why? Because in recursion, it is nice to +# distinguish between 1 element left and 0 elements left, based on how many +# arguments this shift expands to. +m4_define([_m4_shift2], +[m4_if([$#], [2], [], + [, m4_shift(m4_shift($@))])]) +m4_define([_m4_shift3], +[m4_if([$#], [3], [], + [, m4_shift(m4_shift(m4_shift($@)))])]) + + +# m4_undefine(NAME) +# ----------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_undefine], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_undefine([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + +# _m4_wrap(PRE, POST) +# ------------------- +# Helper macro for m4_wrap and m4_wrap_lifo. Allows nested calls to +# m4_wrap within wrapped text. Use _m4_defn and _m4_popdef for speed. +m4_define([_m4_wrap], +[m4_ifdef([$0_text], + [m4_define([$0_text], [$1]_m4_defn([$0_text])[$2])], + [m4_builtin([m4wrap], [m4_unquote( + _m4_defn([$0_text])_m4_popdef([$0_text]))])m4_define([$0_text], [$1$2])])]) + +# m4_wrap(TEXT) +# ------------- +# Append TEXT to the list of hooks to be executed at the end of input. +# Whereas the order of the original may be LIFO in the underlying m4, +# this version is always FIFO. +m4_define([m4_wrap], +[_m4_wrap([], [$1[]])]) + +# m4_wrap_lifo(TEXT) +# ------------------ +# Prepend TEXT to the list of hooks to be executed at the end of input. +# Whereas the order of m4_wrap may be FIFO in the underlying m4, this +# version is always LIFO. +m4_define([m4_wrap_lifo], +[_m4_wrap([$1[]])]) + +## ------------------------- ## +## 7. Quoting manipulation. ## +## ------------------------- ## + + +# m4_apply(MACRO, LIST) +# --------------------- +# Invoke MACRO, with arguments provided from the quoted list of +# comma-separated quoted arguments. If LIST is empty, invoke MACRO +# without arguments. The expansion will not be concatenated with +# subsequent text. +m4_define([m4_apply], +[m4_if([$2], [], [$1], [$1($2)])[]]) + +# _m4_apply(MACRO, LIST) +# ---------------------- +# Like m4_apply, except do nothing if LIST is empty. +m4_define([_m4_apply], +[m4_if([$2], [], [], [$1($2)[]])]) + + +# m4_count(ARGS) +# -------------- +# Return a count of how many ARGS are present. +m4_define([m4_count], [$#]) + + +# m4_curry(MACRO, ARG...) +# ----------------------- +# Perform argument currying. The expansion of this macro is another +# macro that takes exactly one argument, appends it to the end of the +# original ARG list, then invokes MACRO. For example: +# m4_curry([m4_curry], [m4_reverse], [1])([2])([3]) => 3, 2, 1 +# Not quite as practical as m4_incr, but you could also do: +# m4_define([add], [m4_eval(([$1]) + ([$2]))]) +# m4_define([add_one], [m4_curry([add], [1])]) +# add_one()([2]) => 3 +m4_define([m4_curry], [$1(m4_shift($@,)_$0]) +m4_define([_m4_curry], [[$1])]) + + +# m4_do(STRING, ...) +# ------------------ +# This macro invokes all its arguments (in sequence, of course). It is +# useful for making your macros more structured and readable by dropping +# unnecessary dnl's and have the macros indented properly. No concatenation +# occurs after a STRING; use m4_unquote(m4_join(,STRING)) for that. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_do], +[m4_if([$#], 0, [], + [$#], 1, [$1[]], + [$1[]$0(m4_shift($@))])]) + + +# m4_dquote(ARGS) +# --------------- +# Return ARGS as a quoted list of quoted arguments. +m4_define([m4_dquote], [[$@]]) + + +# m4_dquote_elt(ARGS) +# ------------------- +# Return ARGS as an unquoted list of double-quoted arguments. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_dquote_elt], +[m4_if([$#], [0], [], + [$#], [1], [[[$1]]], + [[[$1]],$0(m4_shift($@))])]) + + +# m4_echo(ARGS) +# ------------- +# Return the ARGS, with the same level of quoting. Whitespace after +# unquoted commas are consumed. +m4_define([m4_echo], [$@]) + + +# m4_expand(ARG) +# _m4_expand(ARG) +# --------------- +# Return the expansion of ARG as a single string. Unlike +# m4_quote($1), this preserves whitespace following single-quoted +# commas that appear within ARG. It also deals with shell case +# statements. +# +# m4_define([active], [ACT, IVE]) +# m4_define([active2], [[ACT, IVE]]) +# m4_quote(active, active2) +# => ACT,IVE,ACT, IVE +# m4_expand([active, active2]) +# => ACT, IVE, ACT, IVE +# +# Unfortunately, due to limitations in m4, ARG must expand to +# something with balanced quotes (use quadrigraphs to get around +# this), and should not contain the unlikely delimiters -=<{( or +# )}>=-. It is possible to have unbalanced quoted `(' or `)', as well +# as unbalanced unquoted `)'. m4_expand can handle unterminated +# comments or dnl on the final line, at the expense of speed; it also +# aids in detecting attempts to incorrectly change the current +# diversion inside ARG. Meanwhile, _m4_expand is faster but must be +# given a terminated expansion, and has no safety checks for +# mis-diverted text. +# +# Exploit that extra unquoted () will group unquoted commas and the +# following whitespace. m4_bpatsubst can't handle newlines inside $1, +# and m4_substr strips quoting. So we (ab)use m4_changequote, using +# temporary quotes to remove the delimiters that conveniently included +# the unquoted () that were added prior to the changequote. +# +# Thanks to shell case statements, too many people are prone to pass +# underquoted `)', so we try to detect that by passing a marker as a +# fourth argument; if the marker is not present, then we assume that +# we encountered an early `)', and re-expand the first argument, but +# this time with one more `(' in the second argument and in the +# open-quote delimiter. We must also ignore the slop from the +# previous try. The final macro is thus half line-noise, half art. +m4_define([m4_expand], +[m4_pushdef([m4_divert], _m4_defn([_m4_divert_unsafe]))]dnl +[m4_pushdef([m4_divert_push], _m4_defn([_m4_divert_unsafe]))]dnl +[m4_chomp(_$0([$1 +]))_m4_popdef([m4_divert], [m4_divert_push])]) + +m4_define([_m4_expand], [$0_([$1], [(], -=<{($1)}>=-, [}>=-])]) + +m4_define([_m4_expand_], +[m4_if([$4], [}>=-], + [m4_changequote([-=<{$2], [)}>=-])$3m4_changequote([, ])], + [$0([$1], [($2], -=<{($2$1)}>=-, [}>=-])m4_ignore$2])]) + + +# m4_ignore(ARGS) +# --------------- +# Expands to nothing. Useful for conditionally ignoring an arbitrary +# number of arguments (see _m4_list_cmp for an example). +m4_define([m4_ignore]) + + +# m4_make_list(ARGS) +# ------------------ +# Similar to m4_dquote, this creates a quoted list of quoted ARGS. This +# version is less efficient than m4_dquote, but separates each argument +# with a comma and newline, rather than just comma, for readability. +# When developing an m4sugar algorithm, you could temporarily use +# m4_pushdef([m4_dquote],m4_defn([m4_make_list])) +# around your code to make debugging easier. +m4_define([m4_make_list], [m4_join([, +], m4_dquote_elt($@))]) + + +# m4_noquote(STRING) +# ------------------ +# Return the result of ignoring all quotes in STRING and invoking the +# macros it contains. Among other things, this is useful for enabling +# macro invocations inside strings with [] blocks (for instance regexps +# and help-strings). On the other hand, since all quotes are disabled, +# any macro expanded during this time that relies on nested [] quoting +# will likely crash and burn. This macro is seldom useful; consider +# m4_unquote or m4_expand instead. +m4_define([m4_noquote], +[m4_changequote([-=<{(],[)}>=-])$1-=<{()}>=-m4_changequote([,])]) + + +# m4_quote(ARGS) +# -------------- +# Return ARGS as a single argument. Any whitespace after unquoted commas +# is stripped. There is always output, even when there were no arguments. +# +# It is important to realize the difference between `m4_quote(exp)' and +# `[exp]': in the first case you obtain the quoted *result* of the +# expansion of EXP, while in the latter you just obtain the string +# `exp'. +m4_define([m4_quote], [[$*]]) + + +# _m4_quote(ARGS) +# --------------- +# Like m4_quote, except that when there are no arguments, there is no +# output. For conditional scenarios (such as passing _m4_quote as the +# macro name in m4_mapall), this feature can be used to distinguish between +# one argument of the empty string vs. no arguments. However, in the +# normal case with arguments present, this is less efficient than m4_quote. +m4_define([_m4_quote], +[m4_if([$#], [0], [], [[$*]])]) + + +# m4_reverse(ARGS) +# ---------------- +# Output ARGS in reverse order. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_reverse], +[m4_if([$#], [0], [], [$#], [1], [[$1]], + [$0(m4_shift($@)), [$1]])]) + + +# m4_unquote(ARGS) +# ---------------- +# Remove one layer of quotes from each ARG, performing one level of +# expansion. For one argument, m4_unquote([arg]) is more efficient than +# m4_do([arg]), but for multiple arguments, the difference is that +# m4_unquote separates arguments with commas while m4_do concatenates. +# Follow this macro with [] if concatenation with subsequent text is +# undesired. +m4_define([m4_unquote], [$*]) + + +## -------------------------- ## +## 8. Implementing m4 loops. ## +## -------------------------- ## + + +# m4_for(VARIABLE, FIRST, LAST, [STEP = +/-1], EXPRESSION) +# -------------------------------------------------------- +# Expand EXPRESSION defining VARIABLE to FROM, FROM + 1, ..., TO with +# increments of STEP. Both limits are included, and bounds are +# checked for consistency. The algorithm is robust to indirect +# VARIABLE names. Changing VARIABLE inside EXPRESSION will not impact +# the number of iterations. +# +# Uses _m4_defn for speed, and avoid dnl in the macro body. Factor +# the _m4_for call so that EXPRESSION is only parsed once. +m4_define([m4_for], +[m4_pushdef([$1], m4_eval([$2]))]dnl +[m4_cond([m4_eval(([$3]) > ([$2]))], 1, + [m4_pushdef([_m4_step], m4_eval(m4_default_quoted([$4], + 1)))m4_assert(_m4_step > 0)_$0(_m4_defn([$1]), + m4_eval((([$3]) - ([$2])) / _m4_step * _m4_step + ([$2])), _m4_step,], + [m4_eval(([$3]) < ([$2]))], 1, + [m4_pushdef([_m4_step], m4_eval(m4_default_quoted([$4], + -1)))m4_assert(_m4_step < 0)_$0(_m4_defn([$1]), + m4_eval((([$2]) - ([$3])) / -(_m4_step) * _m4_step + ([$2])), _m4_step,], + [m4_pushdef([_m4_step])_$0(_m4_defn([$1]), _m4_defn([$1]), 0,])]dnl +[[m4_define([$1],], [)$5])m4_popdef([_m4_step], [$1])]) + +# _m4_for(COUNT, LAST, STEP, PRE, POST) +# ------------------------------------- +# Core of the loop, no consistency checks, all arguments are plain +# numbers. Expand PRE[COUNT]POST, then alter COUNT by STEP and +# iterate if COUNT is not LAST. +m4_define([_m4_for], +[$4[$1]$5[]m4_if([$1], [$2], [], + [$0(m4_eval([$1 + $3]), [$2], [$3], [$4], [$5])])]) + + +# Implementing `foreach' loops in m4 is much more tricky than it may +# seem. For example, the old M4 1.4.4 manual had an incorrect example, +# which looked like this (when translated to m4sugar): +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], +# | [m4_pushdef([$1])_foreach([$1], [$2], [$3])m4_popdef([$1])]) +# | m4_define([_arg1], [$1]) +# | m4_define([_foreach], +# | [m4_if([$2], [()], , +# | [m4_define([$1], _arg1$2)$3[]_foreach([$1], (m4_shift$2), [$3])])]) +# +# But then if you run +# +# | m4_define(a, 1) +# | m4_define(b, 2) +# | m4_define(c, 3) +# | foreach([f], [([a], [(b], [c)])], [echo f +# | ]) +# +# it gives +# +# => echo 1 +# => echo (2,3) +# +# which is not what is expected. +# +# Of course the problem is that many quotes are missing. So you add +# plenty of quotes at random places, until you reach the expected +# result. Alternatively, if you are a quoting wizard, you directly +# reach the following implementation (but if you really did, then +# apply to the maintenance of m4sugar!). +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], [m4_pushdef([$1])_foreach($@)m4_popdef([$1])]) +# | m4_define([_arg1], [[$1]]) +# | m4_define([_foreach], +# | [m4_if($2, [()], , +# | [m4_define([$1], [_arg1$2])$3[]_foreach([$1], [(m4_shift$2)], [$3])])]) +# +# which this time answers +# +# => echo a +# => echo (b +# => echo c) +# +# Bingo! +# +# Well, not quite. +# +# With a better look, you realize that the parens are more a pain than +# a help: since anyway you need to quote properly the list, you end up +# with always using an outermost pair of parens and an outermost pair +# of quotes. Rejecting the parens both eases the implementation, and +# simplifies the use: +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], [m4_pushdef([$1])_foreach($@)m4_popdef([$1])]) +# | m4_define([_arg1], [$1]) +# | m4_define([_foreach], +# | [m4_if($2, [], , +# | [m4_define([$1], [_arg1($2)])$3[]_foreach([$1], [m4_shift($2)], [$3])])]) +# +# +# Now, just replace the `$2' with `m4_quote($2)' in the outer `m4_if' +# to improve robustness, and you come up with a nice implementation +# that doesn't require extra parentheses in the user's LIST. +# +# But wait - now the algorithm is quadratic, because every recursion of +# the algorithm keeps the entire LIST and merely adds another m4_shift to +# the quoted text. If the user has a lot of elements in LIST, you can +# bring the system to its knees with the memory m4 then requires, or trip +# the m4 --nesting-limit recursion factor. The only way to avoid +# quadratic growth is ensure m4_shift is expanded prior to the recursion. +# Hence the design below. +# +# The M4 manual now includes a chapter devoted to this issue, with +# the lessons learned from m4sugar. And still, this design is only +# optimal for M4 1.6; see foreach.m4 for yet more comments on why +# M4 1.4.x uses yet another implementation. + + +# m4_foreach(VARIABLE, LIST, EXPRESSION) +# -------------------------------------- +# +# Expand EXPRESSION assigning each value of the LIST to VARIABLE. +# LIST should have the form `item_1, item_2, ..., item_n', i.e. the +# whole list must *quoted*. Quote members too if you don't want them +# to be expanded. +# +# This macro is robust to active symbols: +# | m4_define(active, [ACT, IVE]) +# | m4_foreach(Var, [active, active], [-Var-]) +# => -ACT--IVE--ACT--IVE- +# +# | m4_foreach(Var, [[active], [active]], [-Var-]) +# => -ACT, IVE--ACT, IVE- +# +# | m4_foreach(Var, [[[active]], [[active]]], [-Var-]) +# => -active--active- +# +# This macro is called frequently, so avoid extra expansions such as +# m4_ifval and dnl. Also, since $2 might be quite large, try to use it +# as little as possible in _m4_foreach; each extra use requires that much +# more memory for expansion. So, rather than directly compare $2 against +# [] and use m4_car/m4_cdr for recursion, we instead unbox the list (which +# requires swapping the argument order in the helper), insert an ignored +# third argument, and use m4_shift3 to detect when recursion is complete, +# at which point this looks very much like m4_map_args. +m4_define([m4_foreach], +[m4_if([$2], [], [], + [m4_pushdef([$1])_$0([m4_define([$1],], [)$3], [], + $2)m4_popdef([$1])])]) + +# _m4_foreach(PRE, POST, IGNORED, ARG...) +# --------------------------------------- +# Form the common basis of the m4_foreach and m4_map macros. For each +# ARG, expand PRE[ARG]POST[]. The IGNORED argument makes recursion +# easier, and must be supplied rather than implicit. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([_m4_foreach], +[m4_if([$#], [3], [], + [$1[$4]$2[]$0([$1], [$2], m4_shift3($@))])]) + + +# m4_foreach_w(VARIABLE, LIST, EXPRESSION) +# ---------------------------------------- +# Like m4_foreach, but the list is whitespace separated. Depending on +# EXPRESSION, it may be more efficient to use m4_map_args_w. +# +# This macro is robust to active symbols: +# m4_foreach_w([Var], [ active +# b act\ +# ive ], [-Var-])end +# => -active--b--active-end +# +# This used to use a slower implementation based on m4_foreach: +# m4_foreach([$1], m4_split(m4_normalize([$2]), [ ]), [$3]) +m4_define([m4_foreach_w], +[m4_pushdef([$1])m4_map_args_w([$2], + [m4_define([$1],], [)$3])m4_popdef([$1])]) + + +# m4_map(MACRO, LIST) +# m4_mapall(MACRO, LIST) +# ---------------------- +# Invoke MACRO($1), MACRO($2) etc. where $1, $2... are the elements of +# LIST. $1, $2... must in turn be lists, appropriate for m4_apply. +# If LIST contains an empty sublist, m4_map skips the expansion of +# MACRO, while m4_mapall expands MACRO with no arguments. +# +# Since LIST may be quite large, we want to minimize how often it +# appears in the expansion. Rather than use m4_car/m4_cdr iteration, +# we unbox the list, and use _m4_foreach for iteration. For m4_map, +# an empty list behaves like an empty sublist and gets ignored; for +# m4_mapall, we must special-case the empty list. +m4_define([m4_map], +[_m4_foreach([_m4_apply([$1],], [)], [], $2)]) + +m4_define([m4_mapall], +[m4_if([$2], [], [], + [_m4_foreach([m4_apply([$1],], [)], [], $2)])]) + + +# m4_map_sep(MACRO, [SEPARATOR], LIST) +# m4_mapall_sep(MACRO, [SEPARATOR], LIST) +# --------------------------------------- +# Invoke MACRO($1), SEPARATOR, MACRO($2), ..., MACRO($N) where $1, +# $2... $N are the elements of LIST, and are in turn lists appropriate +# for m4_apply. SEPARATOR is expanded, in order to allow the creation +# of a list of arguments by using a single-quoted comma as the +# separator. For each empty sublist, m4_map_sep skips the expansion +# of MACRO and SEPARATOR, while m4_mapall_sep expands MACRO with no +# arguments. +# +# For m4_mapall_sep, merely expand the first iteration without the +# separator, then include separator as part of subsequent recursion; +# but avoid extra expansion of LIST's side-effects via a helper macro. +# For m4_map_sep, things are trickier - we don't know if the first +# list element is an empty sublist, so we must define a self-modifying +# helper macro and use that as the separator instead. +m4_define([m4_map_sep], +[m4_pushdef([m4_Sep], [m4_define([m4_Sep], _m4_defn([m4_unquote]))])]dnl +[_m4_foreach([_m4_apply([m4_Sep([$2])[]$1],], [)], [], $3)m4_popdef([m4_Sep])]) + +m4_define([m4_mapall_sep], +[m4_if([$3], [], [], [_$0([$1], [$2], $3)])]) + +m4_define([_m4_mapall_sep], +[m4_apply([$1], [$3])_m4_foreach([m4_apply([$2[]$1],], [)], m4_shift2($@))]) + +# m4_map_args(EXPRESSION, ARG...) +# ------------------------------- +# Expand EXPRESSION([ARG]) for each argument. More efficient than +# m4_foreach([var], [ARG...], [EXPRESSION(m4_defn([var]))]) +# Shorthand for m4_map_args_sep([EXPRESSION(], [)], [], ARG...). +m4_define([m4_map_args], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [], + [$#], [2], [$1([$2])[]], + [_m4_foreach([$1(], [)], $@)])]) + + +# m4_map_args_pair(EXPRESSION, [END-EXPR = EXPRESSION], ARG...) +# ------------------------------------------------------------- +# Perform a pairwise grouping of consecutive ARGs, by expanding +# EXPRESSION([ARG1], [ARG2]). If there are an odd number of ARGs, the +# final argument is expanded with END-EXPR([ARGn]). +# +# For example: +# m4_define([show], [($*)m4_newline])dnl +# m4_map_args_pair([show], [], [a], [b], [c], [d], [e])dnl +# => (a,b) +# => (c,d) +# => (e) +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_map_args_pair], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [m4_fatal([$0: too few arguments: $#: $1])], + [$#], [2], [], + [$#], [3], [m4_default([$2], [$1])([$3])[]], + [$#], [4], [$1([$3], [$4])[]], + [$1([$3], [$4])[]$0([$1], [$2], m4_shift(m4_shift3($@)))])]) + + +# m4_map_args_sep([PRE], [POST], [SEP], ARG...) +# --------------------------------------------- +# Expand PRE[ARG]POST for each argument, with SEP between arguments. +m4_define([m4_map_args_sep], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [], + [$#], [2], [], + [$#], [3], [], + [$#], [4], [$1[$4]$2[]], + [$1[$4]$2[]_m4_foreach([$3[]$1], [$2], m4_shift3($@))])]) + + +# m4_map_args_w(STRING, [PRE], [POST], [SEP]) +# ------------------------------------------- +# Perform the expansion of PRE[word]POST[] for each word in STRING +# separated by whitespace. More efficient than: +# m4_foreach_w([var], [STRING], [PRE[]m4_defn([var])POST]) +# Additionally, expand SEP between words. +# +# As long as we have to use m4_bpatsubst to split the string, we might +# as well make it also apply PRE and POST; this avoids iteration +# altogether. But we must be careful of any \ in PRE or POST. +# _m4_strip returns a quoted string, but that's okay, since it also +# supplies an empty leading and trailing argument due to our +# intentional whitespace around STRING. We use m4_substr to strip the +# empty elements and remove the extra layer of quoting. +m4_define([m4_map_args_w], +[_$0(_m4_split([ ]m4_flatten([$1])[ ], [[ ]+], + m4_if(m4_index([$2$3$4], [\]), [-1], [[$3[]$4[]$2]], + [m4_bpatsubst([[$3[]$4[]$2]], [\\], [\\\\])])), + m4_len([[]$3[]$4]), m4_len([$4[]$2[]]))]) + +m4_define([_m4_map_args_w], +[m4_substr([$1], [$2], m4_eval(m4_len([$1]) - [$2] - [$3]))]) + + +# m4_stack_foreach(MACRO, FUNC) +# m4_stack_foreach_lifo(MACRO, FUNC) +# ---------------------------------- +# Pass each stacked definition of MACRO to the one-argument macro FUNC. +# m4_stack_foreach proceeds in FIFO order, while m4_stack_foreach_lifo +# processes the topmost definitions first. In addition, FUNC should +# not push or pop definitions of MACRO, and should not expect anything about +# the active definition of MACRO (it will not be the topmost, and may not +# be the one passed to FUNC either). +# +# Some macros simply can't be examined with this method: namely, +# anything involved in the implementation of _m4_stack_reverse. +m4_define([m4_stack_foreach], +[_m4_stack_reverse([$1], [m4_tmp-$1])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1], [$2(_m4_defn([m4_tmp-$1]))])]) + +m4_define([m4_stack_foreach_lifo], +[_m4_stack_reverse([$1], [m4_tmp-$1], [$2(_m4_defn([m4_tmp-$1]))])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1])]) + +# m4_stack_foreach_sep(MACRO, [PRE], [POST], [SEP]) +# m4_stack_foreach_sep_lifo(MACRO, [PRE], [POST], [SEP]) +# ------------------------------------------------------ +# Similar to m4_stack_foreach and m4_stack_foreach_lifo, in that every +# definition of a pushdef stack will be visited. But rather than +# passing the definition as a single argument to a macro, this variant +# expands the concatenation of PRE[]definition[]POST, and expands SEP +# between consecutive expansions. Note that m4_stack_foreach([a], [b]) +# is equivalent to m4_stack_foreach_sep([a], [b(], [)]). +m4_define([m4_stack_foreach_sep], +[_m4_stack_reverse([$1], [m4_tmp-$1])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1], [$2[]_m4_defn([m4_tmp-$1])$3], [$4[]])]) + +m4_define([m4_stack_foreach_sep_lifo], +[_m4_stack_reverse([$1], [m4_tmp-$1], [$2[]_m4_defn([m4_tmp-$1])$3], [$4[]])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1])]) + + +# _m4_stack_reverse(OLD, NEW, [ACTION], [SEP]) +# -------------------------------------------- +# A recursive worker for pushdef stack manipulation. Destructively +# copy the OLD stack into the NEW, and expanding ACTION for each +# iteration. After the first iteration, SEP is promoted to the front +# of ACTION (note that SEP should include a trailing [] if it is to +# avoid interfering with ACTION). The current definition is examined +# after the NEW has been pushed but before OLD has been popped; this +# order is important, as ACTION is permitted to operate on either +# _m4_defn([OLD]) or _m4_defn([NEW]). Since the operation is +# destructive, this macro is generally used twice, with a temporary +# macro name holding the swapped copy. +m4_define([_m4_stack_reverse], +[m4_ifdef([$1], [m4_pushdef([$2], + _m4_defn([$1]))$3[]_m4_popdef([$1])$0([$1], [$2], [$4$3])])]) + + + +## --------------------------- ## +## 9. More diversion support. ## +## --------------------------- ## + + +# m4_cleardivert(DIVERSION-NAME...) +# --------------------------------- +# Discard any text in DIVERSION-NAME. +# +# This works even inside m4_expand. +m4_define([m4_cleardivert], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [_m4_divert_raw([-1])m4_undivert($@)_m4_divert_raw( + _m4_divert(_m4_defn([_m4_divert_diversion]), [-]))])]) + + +# _m4_divert(DIVERSION-NAME or NUMBER, [NOWARN]) +# ---------------------------------------------- +# If DIVERSION-NAME is the name of a diversion, return its number, +# otherwise if it is a NUMBER return it. Issue a warning about +# the use of a number instead of a name, unless NOWARN is provided. +m4_define([_m4_divert], +[m4_ifdef([_m4_divert($1)], + [m4_indir([_m4_divert($1)])], + [m4_if([$2], [], [m4_warn([syntax], + [prefer named diversions])])$1])]) + +# KILL is only used to suppress output. +m4_define([_m4_divert(KILL)], -1) + +# The empty diversion name is a synonym for 0. +m4_define([_m4_divert()], 0) + + +# m4_divert_stack +# --------------- +# Print the diversion stack, if it's nonempty. The caller is +# responsible for any leading or trailing newline. +m4_define([m4_divert_stack], +[m4_stack_foreach_sep_lifo([_m4_divert_stack], [], [], [ +])]) + + +# m4_divert_stack_push(MACRO-NAME, DIVERSION-NAME) +# ------------------------------------------------ +# Form an entry of the diversion stack from caller MACRO-NAME and +# entering DIVERSION-NAME and push it. +m4_define([m4_divert_stack_push], +[m4_pushdef([_m4_divert_stack], m4_location[: $1: $2])]) + + +# m4_divert(DIVERSION-NAME) +# ------------------------- +# Change the diversion stream to DIVERSION-NAME. +m4_define([m4_divert], +[m4_popdef([_m4_divert_stack])]dnl +[m4_define([_m4_divert_diversion], [$1])]dnl +[m4_divert_stack_push([$0], [$1])]dnl +[_m4_divert_raw(_m4_divert([$1]))]) + + +# m4_divert_push(DIVERSION-NAME, [NOWARN]) +# ---------------------------------------- +# Change the diversion stream to DIVERSION-NAME, while stacking old values. +# For internal use only: if NOWARN is not empty, DIVERSION-NAME can be a +# number instead of a name. +m4_define([m4_divert_push], +[m4_divert_stack_push([$0], [$1])]dnl +[m4_pushdef([_m4_divert_diversion], [$1])]dnl +[_m4_divert_raw(_m4_divert([$1], [$2]))]) + + +# m4_divert_pop([DIVERSION-NAME]) +# ------------------------------- +# Change the diversion stream to its previous value, unstacking it. +# If specified, verify we left DIVERSION-NAME. +# When we pop the last value from the stack, we divert to -1. +m4_define([m4_divert_pop], +[m4_if([$1], [], [], + [$1], _m4_defn([_m4_divert_diversion]), [], + [m4_fatal([$0($1): diversion mismatch: +]m4_divert_stack)])]dnl +[_m4_popdef([_m4_divert_stack], [_m4_divert_diversion])]dnl +[m4_ifdef([_m4_divert_diversion], [], + [m4_fatal([too many m4_divert_pop])])]dnl +[_m4_divert_raw(_m4_divert(_m4_defn([_m4_divert_diversion]), [-]))]) + + +# m4_divert_text(DIVERSION-NAME, CONTENT) +# --------------------------------------- +# Output CONTENT into DIVERSION-NAME (which may be a number actually). +# An end of line is appended for free to CONTENT. +m4_define([m4_divert_text], +[m4_divert_push([$1])$2 +m4_divert_pop([$1])]) + + +# m4_divert_once(DIVERSION-NAME, CONTENT) +# --------------------------------------- +# Output CONTENT into DIVERSION-NAME once, if not already there. +# An end of line is appended for free to CONTENT. +m4_define([m4_divert_once], +[m4_expand_once([m4_divert_text([$1], [$2])])]) + + +# _m4_divert_unsafe(DIVERSION-NAME) +# --------------------------------- +# Issue a warning that the attempt to change the current diversion to +# DIVERSION-NAME is unsafe, because this macro is being expanded +# during argument collection of m4_expand. +m4_define([_m4_divert_unsafe], +[m4_fatal([$0: cannot change diversion to `$1' inside m4_expand])]) + + +# m4_undivert(DIVERSION-NAME...) +# ------------------------------ +# Undivert DIVERSION-NAME. Unlike the M4 version, this requires at +# least one DIVERSION-NAME; also, due to support for named diversions, +# this should not be used to undivert files. +m4_define([m4_undivert], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [_m4_undivert(_m4_divert([$1]))], + [m4_map_args([$0], $@)])]) + + +## --------------------------------------------- ## +## 10. Defining macros with bells and whistles. ## +## --------------------------------------------- ## + +# `m4_defun' is basically `m4_define' but it equips the macro with the +# needed machinery for `m4_require'. A macro must be m4_defun'd if +# either it is m4_require'd, or it m4_require's. +# +# Two things deserve attention and are detailed below: +# 1. Implementation of m4_require +# 2. Keeping track of the expansion stack +# +# 1. Implementation of m4_require +# =============================== +# +# Of course m4_defun calls m4_provide, so that a macro which has +# been expanded is not expanded again when m4_require'd, but the +# difficult part is the proper expansion of macros when they are +# m4_require'd. +# +# The implementation is based on three ideas, (i) using diversions to +# prepare the expansion of the macro and its dependencies (by Franc,ois +# Pinard), (ii) expand the most recently m4_require'd macros _after_ +# the previous macros (by Axel Thimm), and (iii) track instances of +# provide before require (by Eric Blake). +# +# +# The first idea: why use diversions? +# ----------------------------------- +# +# When a macro requires another, the other macro is expanded in new +# diversion, GROW. When the outer macro is fully expanded, we first +# undivert the most nested diversions (GROW - 1...), and finally +# undivert GROW. To understand why we need several diversions, +# consider the following example: +# +# | m4_defun([TEST1], [Test...m4_require([TEST2])1]) +# | m4_defun([TEST2], [Test...m4_require([TEST3])2]) +# | m4_defun([TEST3], [Test...3]) +# +# Because m4_require is not required to be first in the outer macros, we +# must keep the expansions of the various levels of m4_require separated. +# Right before executing the epilogue of TEST1, we have: +# +# GROW - 2: Test...3 +# GROW - 1: Test...2 +# GROW: Test...1 +# BODY: +# +# Finally the epilogue of TEST1 undiverts GROW - 2, GROW - 1, and +# GROW into the regular flow, BODY. +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: Test...3; Test...2; Test...1 +# +# (The semicolons are here for clarification, but of course are not +# emitted.) This is what Autoconf 2.0 (I think) to 2.13 (I'm sure) +# implement. +# +# +# The second idea: first required first out +# ----------------------------------------- +# +# The natural implementation of the idea above is buggy and produces +# very surprising results in some situations. Let's consider the +# following example to explain the bug: +# +# | m4_defun([TEST1], [m4_require([TEST2a])m4_require([TEST2b])]) +# | m4_defun([TEST2a], []) +# | m4_defun([TEST2b], [m4_require([TEST3])]) +# | m4_defun([TEST3], [m4_require([TEST2a])]) +# | +# | AC_INIT +# | TEST1 +# +# The dependencies between the macros are: +# +# 3 --- 2b +# / \ is m4_require'd by +# / \ left -------------------- right +# 2a ------------ 1 +# +# If you strictly apply the rules given in the previous section you get: +# +# GROW - 2: TEST3 +# GROW - 1: TEST2a; TEST2b +# GROW: TEST1 +# BODY: +# +# (TEST2a, although required by TEST3 is not expanded in GROW - 3 +# because is has already been expanded before in GROW - 1, so it has +# been AC_PROVIDE'd, so it is not expanded again) so when you undivert +# the stack of diversions, you get: +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: TEST3; TEST2a; TEST2b; TEST1 +# +# i.e., TEST2a is expanded after TEST3 although the latter required the +# former. +# +# Starting from 2.50, we use an implementation provided by Axel Thimm. +# The idea is simple: the order in which macros are emitted must be the +# same as the one in which macros are expanded. (The bug above can +# indeed be described as: a macro has been m4_provide'd before its +# dependent, but it is emitted after: the lack of correlation between +# emission and expansion order is guilty). +# +# How to do that? You keep the stack of diversions to elaborate the +# macros, but each time a macro is fully expanded, emit it immediately. +# +# In the example above, when TEST2a is expanded, but it's epilogue is +# not run yet, you have: +# +# GROW - 2: +# GROW - 1: TEST2a +# GROW: Elaboration of TEST1 +# BODY: +# +# The epilogue of TEST2a emits it immediately: +# +# GROW - 2: +# GROW - 1: +# GROW: Elaboration of TEST1 +# BODY: TEST2a +# +# TEST2b then requires TEST3, so right before the epilogue of TEST3, you +# have: +# +# GROW - 2: TEST3 +# GROW - 1: Elaboration of TEST2b +# GROW: Elaboration of TEST1 +# BODY: TEST2a +# +# The epilogue of TEST3 emits it: +# +# GROW - 2: +# GROW - 1: Elaboration of TEST2b +# GROW: Elaboration of TEST1 +# BODY: TEST2a; TEST3 +# +# TEST2b is now completely expanded, and emitted: +# +# GROW - 2: +# GROW - 1: +# GROW: Elaboration of TEST1 +# BODY: TEST2a; TEST3; TEST2b +# +# and finally, TEST1 is finished and emitted: +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: TEST2a; TEST3; TEST2b: TEST1 +# +# The idea is simple, but the implementation is a bit involved. If +# you are like me, you will want to see the actual functioning of this +# implementation to be convinced. The next section gives the full +# details. +# +# +# The Axel Thimm implementation at work +# ------------------------------------- +# +# We consider the macros above, and this configure.ac: +# +# AC_INIT +# TEST1 +# +# You should keep the definitions of _m4_defun_pro, _m4_defun_epi, and +# m4_require at hand to follow the steps. +# +# This implementation tries not to assume that the current diversion is +# BODY, so as soon as a macro (m4_defun'd) is expanded, we first +# record the current diversion under the name _m4_divert_dump (denoted +# DUMP below for short). This introduces an important difference with +# the previous versions of Autoconf: you cannot use m4_require if you +# are not inside an m4_defun'd macro, and especially, you cannot +# m4_require directly from the top level. +# +# We have not tried to simulate the old behavior (better yet, we +# diagnose it), because it is too dangerous: a macro m4_require'd from +# the top level is expanded before the body of `configure', i.e., before +# any other test was run. I let you imagine the result of requiring +# AC_STDC_HEADERS for instance, before AC_PROG_CC was actually run.... +# +# After AC_INIT was run, the current diversion is BODY. +# * AC_INIT was run +# DUMP: undefined +# diversion stack: BODY |- +# +# * TEST1 is expanded +# The prologue of TEST1 sets _m4_divert_dump, which is the diversion +# where the current elaboration will be dumped, to the current +# diversion. It also m4_divert_push to GROW, where the full +# expansion of TEST1 and its dependencies will be elaborated. +# DUMP: BODY +# BODY: empty +# diversions: GROW, BODY |- +# +# * TEST1 requires TEST2a +# _m4_require_call m4_divert_pushes another temporary diversion, +# GROW - 1, and expands TEST2a in there. +# DUMP: BODY +# BODY: empty +# GROW - 1: TEST2a +# diversions: GROW - 1, GROW, BODY |- +# Then the content of the temporary diversion is moved to DUMP and the +# temporary diversion is popped. +# DUMP: BODY +# BODY: TEST2a +# diversions: GROW, BODY |- +# +# * TEST1 requires TEST2b +# Again, _m4_require_call pushes GROW - 1 and heads to expand TEST2b. +# DUMP: BODY +# BODY: TEST2a +# diversions: GROW - 1, GROW, BODY |- +# +# * TEST2b requires TEST3 +# _m4_require_call pushes GROW - 2 and expands TEST3 here. +# (TEST3 requires TEST2a, but TEST2a has already been m4_provide'd, so +# nothing happens.) +# DUMP: BODY +# BODY: TEST2a +# GROW - 2: TEST3 +# diversions: GROW - 2, GROW - 1, GROW, BODY |- +# Then the diversion is appended to DUMP, and popped. +# DUMP: BODY +# BODY: TEST2a; TEST3 +# diversions: GROW - 1, GROW, BODY |- +# +# * TEST1 requires TEST2b (contd.) +# The content of TEST2b is expanded... +# DUMP: BODY +# BODY: TEST2a; TEST3 +# GROW - 1: TEST2b, +# diversions: GROW - 1, GROW, BODY |- +# ... and moved to DUMP. +# DUMP: BODY +# BODY: TEST2a; TEST3; TEST2b +# diversions: GROW, BODY |- +# +# * TEST1 is expanded: epilogue +# TEST1's own content is in GROW... +# DUMP: BODY +# BODY: TEST2a; TEST3; TEST2b +# GROW: TEST1 +# diversions: BODY |- +# ... and it's epilogue moves it to DUMP and then undefines DUMP. +# DUMP: undefined +# BODY: TEST2a; TEST3; TEST2b; TEST1 +# diversions: BODY |- +# +# +# The third idea: track macros provided before they were required +# --------------------------------------------------------------- +# +# Using just the first two ideas, Autoconf 2.50 through 2.63 still had +# a subtle bug for more than seven years. Let's consider the +# following example to explain the bug: +# +# | m4_defun([TEST1], [1]) +# | m4_defun([TEST2], [2[]m4_require([TEST1])]) +# | m4_defun([TEST3], [3 TEST1 m4_require([TEST2])]) +# | TEST3 +# +# After the prologue of TEST3, we are collecting text in GROW with the +# intent of dumping it in BODY during the epilogue. Next, we +# encounter the direct invocation of TEST1, which provides the macro +# in place in GROW. From there, we encounter a requirement for TEST2, +# which must be collected in a new diversion. While expanding TEST2, +# we encounter a requirement for TEST1, but since it has already been +# expanded, the Axel Thimm algorithm states that we can treat it as a +# no-op. But that would lead to an end result of `2 3 1', meaning +# that we have once again output a macro (TEST2) prior to its +# requirements (TEST1). +# +# The problem can only occur if a single defun'd macro first provides, +# then later indirectly requires, the same macro. Note that directly +# expanding then requiring a macro is okay: because the dependency was +# met, the require phase can be a no-op. For that matter, the outer +# macro can even require two helpers, where the first helper expands +# the macro, and the second helper indirectly requires the macro. +# Out-of-order expansion is only present if the inner macro is +# required by something that will be hoisted in front of where the +# direct expansion occurred. In other words, we must be careful not +# to warn on: +# +# | m4_defun([TEST4], [4]) +# | m4_defun([TEST5], [5 TEST4 m4_require([TEST4])]) +# | TEST5 => 5 4 +# +# or even the more complex: +# +# | m4_defun([TEST6], [6]) +# | m4_defun([TEST7], [7 TEST6]) +# | m4_defun([TEST8], [8 m4_require([TEST6])]) +# | m4_defun([TEST9], [9 m4_require([TEST8])]) +# | m4_defun([TEST10], [10 m4_require([TEST7]) m4_require([TEST9])]) +# | TEST10 => 7 6 8 9 10 +# +# So, to detect whether a require was direct or indirect, m4_defun and +# m4_require track the name of the macro that caused a diversion to be +# created (using the stack _m4_diverting, coupled with an O(1) lookup +# _m4_diverting([NAME])), and m4_provide stores the name associated +# with the diversion at which a macro was provided. A require call is +# direct if it occurs within the same diversion where the macro was +# provided, or if the diversion associated with the providing context +# has been collected. +# +# The implementation of the warning involves tracking the set of +# macros which have been provided since the start of the outermost +# defun'd macro (the set is named _m4_provide). When starting an +# outermost macro, the set is emptied; when a macro is provided, it is +# added to the set; when require expands the body of a macro, it is +# removed from the set; and when a macro is indirectly required, the +# set is checked. If a macro is in the set, then it has been provided +# before it was required, and we satisfy dependencies by expanding the +# macro as if it had never been provided; in the example given above, +# this means we now output `1 2 3 1'. Meanwhile, a warning is issued +# to inform the user that her macros trigger the bug in older autoconf +# versions, and that her output file now contains redundant contents +# (and possibly new problems, if the repeated macro was not +# idempotent). Meanwhile, macros defined by m4_defun_once instead of +# m4_defun are idempotent, avoiding any warning or duplicate output. +# +# +# 2. Keeping track of the expansion stack +# ======================================= +# +# When M4 expansion goes wrong it is often extremely hard to find the +# path amongst macros that drove to the failure. What is needed is +# the stack of macro `calls'. One could imagine that GNU M4 would +# maintain a stack of macro expansions, unfortunately it doesn't, so +# we do it by hand. This is of course extremely costly, but the help +# this stack provides is worth it. Nevertheless to limit the +# performance penalty this is implemented only for m4_defun'd macros, +# not for define'd macros. +# +# Each time we enter an m4_defun'd macros, we add a definition in +# _m4_expansion_stack, and when we exit the macro, we remove it (thanks +# to pushdef/popdef). m4_stack_foreach is used to print the expansion +# stack in the rare cases when it's needed. +# +# In addition, we want to detect circular m4_require dependencies. +# Each time we expand a macro FOO we define _m4_expanding(FOO); and +# m4_require(BAR) simply checks whether _m4_expanding(BAR) is defined. + + +# m4_expansion_stack +# ------------------ +# Expands to the entire contents of the expansion stack. The caller +# must supply a trailing newline. This macro always prints a +# location; check whether _m4_expansion_stack is defined to filter out +# the case when no defun'd macro is in force. +m4_define([m4_expansion_stack], +[m4_stack_foreach_sep_lifo([_$0], [_$0_entry(], [) +])m4_location[: the top level]]) + +# _m4_expansion_stack_entry(MACRO) +# -------------------------------- +# Format an entry for MACRO found on the expansion stack. +m4_define([_m4_expansion_stack_entry], +[_m4_defn([m4_location($1)])[: $1 is expanded from...]]) + +# m4_expansion_stack_push(MACRO) +# ------------------------------ +# Form an entry of the expansion stack on entry to MACRO and push it. +m4_define([m4_expansion_stack_push], +[m4_pushdef([_m4_expansion_stack], [$1])]) + + +# _m4_divert(GROW) +# ---------------- +# This diversion is used by the m4_defun/m4_require machinery. It is +# important to keep room before GROW because for each nested +# AC_REQUIRE we use an additional diversion (i.e., two m4_require's +# will use GROW - 2. More than 3 levels has never seemed to be +# needed.) +# +# ... +# - GROW - 2 +# m4_require'd code, 2 level deep +# - GROW - 1 +# m4_require'd code, 1 level deep +# - GROW +# m4_defun'd macros are elaborated here. + +m4_define([_m4_divert(GROW)], 10000) + + +# _m4_defun_pro(MACRO-NAME) +# ------------------------- +# The prologue for Autoconf macros. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and m4_defn overhead. +m4_define([_m4_defun_pro], +[m4_ifdef([_m4_expansion_stack], [], [_m4_defun_pro_outer([$1])])]dnl +[m4_expansion_stack_push([$1])m4_pushdef([_m4_expanding($1)])]) + +m4_define([_m4_defun_pro_outer], +[m4_set_delete([_m4_provide])]dnl +[m4_pushdef([_m4_diverting([$1])])m4_pushdef([_m4_diverting], [$1])]dnl +[m4_pushdef([_m4_divert_dump], m4_divnum)m4_divert_push([GROW])]) + +# _m4_defun_epi(MACRO-NAME) +# ------------------------- +# The Epilogue for Autoconf macros. MACRO-NAME only helps tracing +# the PRO/EPI pairs. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and m4_popdef overhead. +m4_define([_m4_defun_epi], +[_m4_popdef([_m4_expanding($1)], [_m4_expansion_stack])]dnl +[m4_ifdef([_m4_expansion_stack], [], [_m4_defun_epi_outer([$1])])]dnl +[m4_provide([$1])]) + +m4_define([_m4_defun_epi_outer], +[_m4_popdef([_m4_divert_dump], [_m4_diverting([$1])], [_m4_diverting])]dnl +[m4_divert_pop([GROW])m4_undivert([GROW])]) + + +# _m4_divert_dump +# --------------- +# If blank, we are outside of any defun'd macro. Otherwise, expands +# to the diversion number (not name) where require'd macros should be +# moved once completed. +m4_define([_m4_divert_dump]) + + +# m4_divert_require(DIVERSION, NAME-TO-CHECK, [BODY-TO-EXPAND]) +# ------------------------------------------------------------- +# Same as m4_require, but BODY-TO-EXPAND goes into the named DIVERSION; +# requirements still go in the current diversion though. +# +m4_define([m4_divert_require], +[m4_ifdef([_m4_expanding($2)], + [m4_fatal([$0: circular dependency of $2])])]dnl +[m4_if(_m4_divert_dump, [], + [m4_fatal([$0($2): cannot be used outside of an m4_defun'd macro])])]dnl +[m4_provide_if([$2], [], + [_m4_require_call([$2], [$3], _m4_divert([$1], [-]))])]) + + +# m4_defun(NAME, EXPANSION, [MACRO = m4_define]) +# ---------------------------------------------- +# Define a macro NAME which automatically provides itself. Add +# machinery so the macro automatically switches expansion to the +# diversion stack if it is not already using it, prior to EXPANSION. +# In this case, once finished, it will bring back all the code +# accumulated in the diversion stack. This, combined with m4_require, +# achieves the topological ordering of macros. We don't use this +# macro to define some frequently called macros that are not involved +# in ordering constraints, to save m4 processing. +# +# MACRO is an undocumented argument; when set to m4_pushdef, and NAME +# is already defined, the new definition is added to the pushdef +# stack, rather than overwriting the current definition. It can thus +# be used to write self-modifying macros, which pop themselves to a +# previously m4_define'd definition so that subsequent use of the +# macro is faster. +m4_define([m4_defun], +[m4_define([m4_location($1)], m4_location)]dnl +[m4_default([$3], [m4_define])([$1], + [_m4_defun_pro(]m4_dquote($[0])[)$2[]_m4_defun_epi(]m4_dquote($[0])[)])]) + + +# m4_defun_init(NAME, INIT, COMMON) +# --------------------------------- +# Like m4_defun, but split EXPANSION into two portions: INIT which is +# done only the first time NAME is invoked, and COMMON which is +# expanded every time. +# +# For now, the COMMON definition is always m4_define'd, giving an even +# lighter-weight definition. m4_defun allows self-providing, but once +# a macro is provided, m4_require no longer cares if it is m4_define'd +# or m4_defun'd. m4_defun also provides location tracking to identify +# dependency bugs, but once the INIT has been expanded, we know there +# are no dependency bugs. However, if a future use needs COMMON to be +# m4_defun'd, we can add a parameter, similar to the third parameter +# to m4_defun. +m4_define([m4_defun_init], +[m4_define([$1], [$3[]])m4_defun([$1], + [$2[]_m4_popdef(]m4_dquote($[0])[)m4_indir(]m4_dquote($[0])dnl +[m4_if(]m4_dquote($[#])[, [0], [], ]m4_dquote([,$]@)[))], [m4_pushdef])]) + + +# m4_defun_once(NAME, EXPANSION) +# ------------------------------ +# Like m4_defun, but guarantee that EXPANSION only happens once +# (thereafter, using NAME is a no-op). +# +# If _m4_divert_dump is empty, we are called at the top level; +# otherwise, we must ensure that we are required in front of the +# current defun'd macro. Use a helper macro so that EXPANSION need +# only occur once in the definition of NAME, since it might be large. +m4_define([m4_defun_once], +[m4_define([m4_location($1)], m4_location)]dnl +[m4_define([$1], [_m4_defun_once([$1], [$2], m4_if(_m4_divert_dump, [], + [[_m4_defun_pro([$1])m4_unquote(], [)_m4_defun_epi([$1])]], +m4_ifdef([_m4_diverting([$1])], [-]), [-], [[m4_unquote(], [)]], + [[_m4_require_call([$1],], [, _m4_divert_dump)]]))])]) + +m4_define([_m4_defun_once], +[m4_pushdef([$1])$3[$2[]m4_provide([$1])]$4]) + + +# m4_pattern_forbid(ERE, [WHY]) +# ----------------------------- +# Declare that no token matching the forbidden perl extended regular +# expression ERE should be seen in the output unless... +m4_define([m4_pattern_forbid], []) + + +# m4_pattern_allow(ERE) +# --------------------- +# ... that token also matches the allowed extended regular expression ERE. +# Both used via traces, by autom4te post-processing. +m4_define([m4_pattern_allow], []) + + +## --------------------------------- ## +## 11. Dependencies between macros. ## +## --------------------------------- ## + + +# m4_before(THIS-MACRO-NAME, CALLED-MACRO-NAME) +# --------------------------------------------- +# Issue a warning if CALLED-MACRO-NAME was called before THIS-MACRO-NAME. +m4_define([m4_before], +[m4_provide_if([$2], + [m4_warn([syntax], [$2 was called before $1])])]) + + +# m4_require(NAME-TO-CHECK, [BODY-TO-EXPAND = NAME-TO-CHECK]) +# ----------------------------------------------------------- +# If NAME-TO-CHECK has never been expanded (actually, if it is not +# m4_provide'd), expand BODY-TO-EXPAND *before* the current macro +# expansion; follow the expansion with a newline. Once expanded, emit +# it in _m4_divert_dump. Keep track of the m4_require chain in +# _m4_expansion_stack. +# +# The normal cases are: +# +# - NAME-TO-CHECK == BODY-TO-EXPAND +# Which you can use for regular macros with or without arguments, e.g., +# m4_require([AC_PROG_CC], [AC_PROG_CC]) +# m4_require([AC_CHECK_HEADERS(threads.h)], [AC_CHECK_HEADERS(threads.h)]) +# which is just the same as +# m4_require([AC_PROG_CC]) +# m4_require([AC_CHECK_HEADERS(threads.h)]) +# +# - BODY-TO-EXPAND == m4_indir([NAME-TO-CHECK]) +# In the case of macros with irregular names. For instance: +# m4_require([AC_LANG_COMPILER(C)], [indir([AC_LANG_COMPILER(C)])]) +# which means `if the macro named `AC_LANG_COMPILER(C)' (the parens are +# part of the name, it is not an argument) has not been run, then +# call it.' +# Had you used +# m4_require([AC_LANG_COMPILER(C)], [AC_LANG_COMPILER(C)]) +# then m4_require would have tried to expand `AC_LANG_COMPILER(C)', i.e., +# call the macro `AC_LANG_COMPILER' with `C' as argument. +# +# You could argue that `AC_LANG_COMPILER', when it receives an argument +# such as `C' should dispatch the call to `AC_LANG_COMPILER(C)'. But this +# `extension' prevents `AC_LANG_COMPILER' from having actual arguments that +# it passes to `AC_LANG_COMPILER(C)'. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and other overhead on the common path. +m4_define([m4_require], +[m4_ifdef([_m4_expanding($1)], + [m4_fatal([$0: circular dependency of $1])])]dnl +[m4_if(_m4_divert_dump, [], + [m4_fatal([$0($1): cannot be used outside of an ]dnl +m4_if([$0], [m4_require], [[m4_defun]], [[AC_DEFUN]])['d macro])])]dnl +[m4_provide_if([$1], [m4_set_contains([_m4_provide], [$1], + [_m4_require_check([$1], _m4_defn([m4_provide($1)]), [$0])], [m4_ignore])], + [_m4_require_call])([$1], [$2], _m4_divert_dump)]) + + +# _m4_require_call(NAME-TO-CHECK, [BODY-TO-EXPAND = NAME-TO-CHECK], +# DIVERSION-NUMBER) +# ----------------------------------------------------------------- +# If m4_require decides to expand the body, it calls this macro. The +# expansion is placed in DIVERSION-NUMBER. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and other overhead on the common path. +# The use of a witness macro protecting the warning allows aclocal +# to silence any warnings when probing for what macros are required +# and must therefore be located, when using the Autoconf-without-aclocal-m4 +# autom4te language. For more background, see: +# https://lists.gnu.org/archive/html/automake-patches/2012-11/msg00035.html +m4_define([_m4_require_call], +[m4_pushdef([_m4_divert_grow], m4_decr(_m4_divert_grow))]dnl +[m4_pushdef([_m4_diverting([$1])])m4_pushdef([_m4_diverting], [$1])]dnl +[m4_divert_push(_m4_divert_grow, [-])]dnl +[m4_if([$2], [], [$1], [$2]) +m4_provide_if([$1], [m4_set_remove([_m4_provide], [$1])], + [m4_ifndef([m4_require_silent_probe], + [m4_warn([syntax], [$1 is m4_require'd but not m4_defun'd])])])]dnl +[_m4_divert_raw($3)_m4_undivert(_m4_divert_grow)]dnl +[m4_divert_pop(_m4_divert_grow)_m4_popdef([_m4_divert_grow], +[_m4_diverting([$1])], [_m4_diverting])]) + + +# _m4_require_check(NAME-TO-CHECK, OWNER, CALLER) +# ----------------------------------------------- +# NAME-TO-CHECK has been identified as previously expanded in the +# diversion owned by OWNER. If this is a problem, warn on behalf of +# CALLER and return _m4_require_call; otherwise return m4_ignore. +m4_define([_m4_require_check], +[m4_if(_m4_defn([_m4_diverting]), [$2], [m4_ignore], + m4_ifdef([_m4_diverting([$2])], [-]), [-], [m4_warn([syntax], + [$3: `$1' was expanded before it was required +https://www.gnu.org/software/autoconf/manual/autoconf.html#Expanded-Before-Required])_m4_require_call], + [m4_ignore])]) + + +# _m4_divert_grow +# --------------- +# The counter for _m4_require_call. +m4_define([_m4_divert_grow], _m4_divert([GROW])) + + +# m4_expand_once(TEXT, [WITNESS = TEXT]) +# -------------------------------------- +# If TEXT has never been expanded, expand it *here*. Use WITNESS as +# as a memory that TEXT has already been expanded. +m4_define([m4_expand_once], +[m4_provide_if(m4_default_quoted([$2], [$1]), + [], + [m4_provide(m4_default_quoted([$2], [$1]))[]$1])]) + + +# m4_provide(MACRO-NAME) +# ---------------------- +m4_define([m4_provide], +[m4_ifdef([m4_provide($1)], [], +[m4_set_add([_m4_provide], [$1], [m4_define([m4_provide($1)], + m4_ifdef([_m4_diverting], [_m4_defn([_m4_diverting])]))])])]) + + +# m4_provide_if(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) +# ------------------------------------------------------- +# If MACRO-NAME is provided do IF-PROVIDED, else IF-NOT-PROVIDED. +# The purpose of this macro is to provide the user with a means to +# check macros which are provided without letting her know how the +# information is coded. +m4_define([m4_provide_if], +[m4_ifdef([m4_provide($1)], + [$2], [$3])]) + + +## --------------------- ## +## 12. Text processing. ## +## --------------------- ## + + +# m4_cr_letters +# m4_cr_LETTERS +# m4_cr_Letters +# ------------- +m4_define([m4_cr_letters], [abcdefghijklmnopqrstuvwxyz]) +m4_define([m4_cr_LETTERS], [ABCDEFGHIJKLMNOPQRSTUVWXYZ]) +m4_define([m4_cr_Letters], +m4_defn([m4_cr_letters])dnl +m4_defn([m4_cr_LETTERS])dnl +) + + +# m4_cr_digits +# ------------ +m4_define([m4_cr_digits], [0123456789]) + + +# m4_cr_alnum +# ----------- +m4_define([m4_cr_alnum], +m4_defn([m4_cr_Letters])dnl +m4_defn([m4_cr_digits])dnl +) + + +# m4_cr_symbols1 +# m4_cr_symbols2 +# -------------- +m4_define([m4_cr_symbols1], +m4_defn([m4_cr_Letters])dnl +_) + +m4_define([m4_cr_symbols2], +m4_defn([m4_cr_symbols1])dnl +m4_defn([m4_cr_digits])dnl +) + +# m4_cr_all +# --------- +# The character range representing everything, with `-' as the last +# character, since it is special to m4_translit. Use with care, because +# it contains characters special to M4 (fortunately, both ASCII and EBCDIC +# have [] in order, so m4_defn([m4_cr_all]) remains a valid string). It +# also contains characters special to terminals, so it should never be +# displayed in an error message. Also, attempts to map [ and ] to other +# characters via m4_translit must deal with the fact that m4_translit does +# not add quotes to the output. +# +# In EBCDIC, $ is immediately followed by *, which leads to problems +# if m4_cr_all is inlined into a macro definition; so swap them. +# +# It is mainly useful in generating inverted character range maps, for use +# in places where m4_translit is faster than an equivalent m4_bpatsubst; +# the regex `[^a-z]' is equivalent to: +# m4_translit(m4_dquote(m4_defn([m4_cr_all])), [a-z]) +m4_define([m4_cr_all], +m4_translit(m4_dquote(m4_format(m4_dquote(m4_for( + ,1,255,,[[%c]]))m4_for([i],1,255,,[,i]))), [$*-], [*$])-) + + +# _m4_define_cr_not(CATEGORY) +# --------------------------- +# Define m4_cr_not_CATEGORY as the inverse of m4_cr_CATEGORY. +m4_define([_m4_define_cr_not], +[m4_define([m4_cr_not_$1], + m4_translit(m4_dquote(m4_defn([m4_cr_all])), + m4_defn([m4_cr_$1])))]) + + +# m4_cr_not_letters +# m4_cr_not_LETTERS +# m4_cr_not_Letters +# m4_cr_not_digits +# m4_cr_not_alnum +# m4_cr_not_symbols1 +# m4_cr_not_symbols2 +# ------------------ +# Inverse character sets +_m4_define_cr_not([letters]) +_m4_define_cr_not([LETTERS]) +_m4_define_cr_not([Letters]) +_m4_define_cr_not([digits]) +_m4_define_cr_not([alnum]) +_m4_define_cr_not([symbols1]) +_m4_define_cr_not([symbols2]) + + +# m4_newline([STRING]) +# -------------------- +# Expands to a newline, possibly followed by STRING. Exists mostly for +# formatting reasons. +m4_define([m4_newline], [ +$1]) + + +# m4_re_escape(STRING) +# -------------------- +# Escape RE active characters in STRING. +m4_define([m4_re_escape], +[m4_bpatsubst([$1], + [[][*+.?\^$]], [\\\&])]) + + +# m4_re_string +# ------------ +# Regexp for `[a-zA-Z_0-9]*' +# m4_dquote provides literal [] for the character class. +m4_define([m4_re_string], +m4_dquote(m4_defn([m4_cr_symbols2]))dnl +[*]dnl +) + + +# m4_re_word +# ---------- +# Regexp for `[a-zA-Z_][a-zA-Z_0-9]*' +m4_define([m4_re_word], +m4_dquote(m4_defn([m4_cr_symbols1]))dnl +m4_defn([m4_re_string])dnl +) + + +# m4_tolower(STRING) +# m4_toupper(STRING) +# ------------------ +# These macros convert STRING to lowercase or uppercase. +# +# Rather than expand the m4_defn each time, we inline them up front. +m4_define([m4_tolower], +[m4_translit([[$1]], ]m4_dquote(m4_defn([m4_cr_LETTERS]))[, + ]m4_dquote(m4_defn([m4_cr_letters]))[)]) +m4_define([m4_toupper], +[m4_translit([[$1]], ]m4_dquote(m4_defn([m4_cr_letters]))[, + ]m4_dquote(m4_defn([m4_cr_LETTERS]))[)]) + + +# m4_split(STRING, [REGEXP]) +# -------------------------- +# Split STRING into an m4 list of quoted elements. The elements are +# quoted with [ and ]. Beginning spaces and end spaces *are kept*. +# Use m4_strip to remove them. +# +# REGEXP specifies where to split. Default is [\t ]+. +# +# If STRING is empty, the result is an empty list. +# +# Pay attention to the m4_changequotes. When m4 reads the definition of +# m4_split, it still has quotes set to [ and ]. Luckily, these are matched +# in the macro body, so the definition is stored correctly. Use the same +# alternate quotes as m4_noquote; it must be unlikely to appear in $1. +# +# Also, notice that $1 is quoted twice, since we want the result to +# be quoted. Then you should understand that the argument of +# patsubst is -=<{(STRING)}>=- (i.e., with additional -=<{( and )}>=-). +# +# This macro is safe on active symbols, i.e.: +# m4_define(active, ACTIVE) +# m4_split([active active ])end +# => [active], [active], []end +# +# Optimize on regex of ` ' (space), since m4_foreach_w already guarantees +# that the list contains single space separators, and a common case is +# splitting a single-element list. This macro is called frequently, +# so avoid unnecessary dnl inside the definition. +m4_define([m4_split], +[m4_if([$1], [], [], + [$2], [ ], [m4_if(m4_index([$1], [ ]), [-1], [[[$1]]], + [_$0([$1], [$2], [, ])])], + [$2], [], [_$0([$1], [[ ]+], [, ])], + [_$0([$1], [$2], [, ])])]) + +m4_define([_m4_split], +[m4_changequote([-=<{(],[)}>=-])]dnl +[[m4_bpatsubst(-=<{(-=<{($1)}>=-)}>=-, -=<{($2)}>=-, + -=<{(]$3[)}>=-)]m4_changequote([, ])]) + + +# m4_chomp(STRING) +# m4_chomp_all(STRING) +# -------------------- +# Return STRING quoted, but without a trailing newline. m4_chomp +# removes at most one newline, while m4_chomp_all removes all +# consecutive trailing newlines. Embedded newlines are not touched, +# and a trailing backslash-newline leaves just a trailing backslash. +# +# m4_bregexp is slower than m4_index, and we don't always want to +# remove all newlines; hence the two variants. We massage characters +# to give a nicer pattern to match, particularly since m4_bregexp is +# line-oriented. Both versions must guarantee a match, to avoid bugs +# with precision -1 in m4_format in older m4. +m4_define([m4_chomp], +[m4_format([[%.*s]], m4_index(m4_translit([[$1]], [ +/.], [/ ])[./.], [/.]), [$1])]) + +m4_define([m4_chomp_all], +[m4_format([[%.*s]], m4_bregexp(m4_translit([[$1]], [ +/], [/ ]), [/*$]), [$1])]) + + +# m4_flatten(STRING) +# ------------------ +# If STRING contains end of lines, replace them with spaces. If there +# are backslashed end of lines, remove them. This macro is safe with +# active symbols. +# m4_define(active, ACTIVE) +# m4_flatten([active +# act\ +# ive])end +# => active activeend +# +# In m4, m4_bpatsubst is expensive, so first check for a newline. +m4_define([m4_flatten], +[m4_if(m4_index([$1], [ +]), [-1], [[$1]], + [m4_translit(m4_bpatsubst([[[$1]]], [\\ +]), [ +], [ ])])]) + + +# m4_strip(STRING) +# ---------------- +# Expands into STRING with tabs and spaces singled out into a single +# space, and removing leading and trailing spaces. +# +# This macro is robust to active symbols. +# m4_define(active, ACTIVE) +# m4_strip([ active active ])end +# => active activeend +# +# First, notice that we guarantee trailing space. Why? Because regular +# expressions are greedy, and `.* ?' would always group the space into the +# .* portion. The algorithm is simpler by avoiding `?' at the end. The +# algorithm correctly strips everything if STRING is just ` '. +# +# Then notice the second pattern: it is in charge of removing the +# leading/trailing spaces. Why not just `[^ ]'? Because they are +# applied to over-quoted strings, i.e. more or less [STRING], due +# to the limitations of m4_bpatsubsts. So the leading space in STRING +# is the *second* character; equally for the trailing space. +m4_define([m4_strip], +[m4_bpatsubsts([$1 ], + [[ ]+], [ ], + [^. ?\(.*\) .$], [[[\1]]])]) + + +# m4_normalize(STRING) +# -------------------- +# Apply m4_flatten and m4_strip to STRING. +# +# The argument is quoted, so that the macro is robust to active symbols: +# +# m4_define(active, ACTIVE) +# m4_normalize([ act\ +# ive +# active ])end +# => active activeend + +m4_define([m4_normalize], +[m4_strip(m4_flatten([$1]))]) + + +# m4_validate_w(STRING) +# --------------------- +# Expands into m4_normalize(m4_expand([STRING])), but if that is not +# the same as just m4_normalize([STRING]), issue a warning. +# +# This is used in several Autoconf macros that take a +# whitespace-separated list of symbols as an argument. Ideally that +# list would not be expanded before use, but several packages used +# `dnl' to put comments inside those lists, so they must be expanded +# for compatibility's sake. +m4_define([m4_validate_w], +[_m4_validate_w(m4_normalize([$1]), m4_normalize(m4_expand([$1])))]) + +m4_define([_m4_validate_w], +[m4_if([$1], [$2], [], + [m4_warn([obsolete], [whitespace-separated list contains macros; +in a future version of Autoconf they will not be expanded]dnl +m4_if(m4_bregexp([$1], [\bdn[l]\b]), -1, [], [ +note: `dn@&t@l' is a macro]))])dnl +[$2]]) + + +# m4_join(SEP, ARG1, ARG2...) +# --------------------------- +# Produce ARG1SEPARG2...SEPARGn. Avoid back-to-back SEP when a given ARG +# is the empty string. No expansion is performed on SEP or ARGs. +# +# Since the number of arguments to join can be arbitrarily long, we +# want to avoid having more than one $@ in the macro definition; +# otherwise, the expansion would require twice the memory of the already +# long list. Hence, m4_join merely looks for the first non-empty element, +# and outputs just that element; while _m4_join looks for all non-empty +# elements, and outputs them following a separator. The final trick to +# note is that we decide between recursing with $0 or _$0 based on the +# nested m4_if ending with `_'. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_join], +[m4_if([$#], [1], [], + [$#], [2], [[$2]], + [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift2($@))])]) +m4_define([_m4_join], +[m4_if([$#$2], [2], [], + [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift2($@))])]) + +# m4_joinall(SEP, ARG1, ARG2...) +# ------------------------------ +# Produce ARG1SEPARG2...SEPARGn. An empty ARG results in back-to-back SEP. +# No expansion is performed on SEP or ARGs. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_joinall], [[$2]_$0([$1], m4_shift($@))]) +m4_define([_m4_joinall], +[m4_if([$#], [2], [], [[$1$3]$0([$1], m4_shift2($@))])]) + +# m4_combine([SEPARATOR], PREFIX-LIST, [INFIX], SUFFIX...) +# -------------------------------------------------------- +# Produce the pairwise combination of every element in the quoted, +# comma-separated PREFIX-LIST with every element from the SUFFIX arguments. +# Each pair is joined with INFIX, and pairs are separated by SEPARATOR. +# No expansion occurs on SEPARATOR, INFIX, or elements of either list. +# +# For example: +# m4_combine([, ], [[a], [b], [c]], [-], [1], [2], [3]) +# => a-1, a-2, a-3, b-1, b-2, b-3, c-1, c-2, c-3 +# +# This definition is a bit hairy; the thing to realize is that we want +# to construct m4_map_args_sep([[prefix$3]], [], [[$1]], m4_shift3($@)) +# as the inner loop, using each prefix generated by the outer loop, +# and without recalculating m4_shift3 every outer iteration. +m4_define([m4_combine], +[m4_if([$2], [], [], m4_eval([$# > 3]), [1], +[m4_map_args_sep([m4_map_args_sep(m4_dquote(], [)[[$3]], [], [[$1]],]]]dnl +[m4_dquote(m4_dquote(m4_shift3($@)))[[)], [[$1]], $2)])]) + + +# m4_append(MACRO-NAME, STRING, [SEPARATOR]) +# ------------------------------------------ +# Redefine MACRO-NAME to hold its former content plus `SEPARATOR`'STRING' +# at the end. It is valid to use this macro with MACRO-NAME undefined, +# in which case no SEPARATOR is added. Be aware that the criterion is +# `not being defined', and not `not being empty'. +# +# Note that neither STRING nor SEPARATOR are expanded here; rather, when +# you expand MACRO-NAME, they will be expanded at that point in time. +# +# This macro is robust to active symbols. It can be used to grow +# strings. +# +# | m4_define(active, ACTIVE)dnl +# | m4_append([sentence], [This is an])dnl +# | m4_append([sentence], [ active ])dnl +# | m4_append([sentence], [symbol.])dnl +# | sentence +# | m4_undefine([active])dnl +# | sentence +# => This is an ACTIVE symbol. +# => This is an active symbol. +# +# It can be used to define hooks. +# +# | m4_define(active, ACTIVE)dnl +# | m4_append([hooks], [m4_define([act1], [act2])])dnl +# | m4_append([hooks], [m4_define([act2], [active])])dnl +# | m4_undefine([active])dnl +# | act1 +# | hooks +# | act1 +# => act1 +# => +# => active +# +# It can also be used to create lists, although this particular usage was +# broken prior to autoconf 2.62. +# | m4_append([list], [one], [, ])dnl +# | m4_append([list], [two], [, ])dnl +# | m4_append([list], [three], [, ])dnl +# | list +# | m4_dquote(list) +# => one, two, three +# => [one],[two],[three] +# +# Note that m4_append can benefit from amortized O(n) m4 behavior, if +# the underlying m4 implementation is smart enough to avoid copying existing +# contents when enlarging a macro's definition into any pre-allocated storage +# (m4 1.4.x unfortunately does not implement this optimization). We do +# not implement m4_prepend, since it is inherently O(n^2) (pre-allocated +# storage only occurs at the end of a macro, so the existing contents must +# always be moved). +# +# Use _m4_defn for speed. +m4_define([m4_append], +[m4_define([$1], m4_ifdef([$1], [_m4_defn([$1])[$3]])[$2])]) + + +# m4_append_uniq(MACRO-NAME, STRING, [SEPARATOR], [IF-UNIQ], [IF-DUP]) +# -------------------------------------------------------------------- +# Like `m4_append', but append only if not yet present. Additionally, +# expand IF-UNIQ if STRING was appended, or IF-DUP if STRING was already +# present. Also, warn if SEPARATOR is not empty and occurs within STRING, +# as the algorithm no longer guarantees uniqueness. +# +# Note that while m4_append can be O(n) (depending on the quality of the +# underlying M4 implementation), m4_append_uniq is inherently O(n^2) +# because each append operation searches the entire string. +m4_define([m4_append_uniq], +[m4_ifval([$3], [m4_if(m4_index([$2], [$3]), [-1], [], + [m4_warn([syntax], + [$0: `$2' contains `$3'])])])_$0($@)]) +m4_define([_m4_append_uniq], +[m4_ifdef([$1], + [m4_if(m4_index([$3]_m4_defn([$1])[$3], [$3$2$3]), [-1], + [m4_append([$1], [$2], [$3])$4], [$5])], + [m4_define([$1], [$2])$4])]) + +# m4_append_uniq_w(MACRO-NAME, STRINGS) +# ------------------------------------- +# For each of the words in the whitespace separated list STRINGS, append +# only the unique strings to the definition of MACRO-NAME. +# +# Use _m4_defn for speed. +m4_define([m4_append_uniq_w], +[m4_map_args_w([$2], [_m4_append_uniq([$1],], [, [ ])])]) + + +# m4_escape(STRING) +# ----------------- +# Output quoted STRING, but with embedded #, $, [ and ] turned into +# quadrigraphs. +# +# It is faster to check if STRING is already good using m4_translit +# than to blindly perform four m4_bpatsubst. +# +# Because the translit is stripping quotes, it must also neutralize +# anything that might be in a macro name, as well as comments, commas, +# and parentheses. All the problem characters are unified so that a +# single m4_index can scan the result. +# +# Rather than expand m4_defn every time m4_escape is expanded, we +# inline its expansion up front. +m4_define([m4_escape], +[m4_if(m4_index(m4_translit([$1], + [[]#,()]]m4_dquote(m4_defn([m4_cr_symbols2]))[, [$$$]), [$]), + [-1], [m4_echo], [_$0])([$1])]) + +m4_define([_m4_escape], +[m4_changequote([-=<{(],[)}>=-])]dnl +[m4_bpatsubst(m4_bpatsubst(m4_bpatsubst(m4_bpatsubst( + -=<{(-=<{(-=<{(-=<{(-=<{($1)}>=-)}>=-)}>=-)}>=-)}>=-, + -=<{(#)}>=-, -=<{(@%:@)}>=-), + -=<{(\[)}>=-, -=<{(@<:@)}>=-), + -=<{(\])}>=-, -=<{(@:>@)}>=-), + -=<{(\$)}>=-, -=<{(@S|@)}>=-)m4_changequote([,])]) + + +# m4_text_wrap(STRING, [PREFIX], [FIRST-PREFIX], [WIDTH]) +# ------------------------------------------------------- +# Expands into STRING wrapped to hold in WIDTH columns (default = 79). +# If PREFIX is given, each line is prefixed with it. If FIRST-PREFIX is +# specified, then the first line is prefixed with it. As a special case, +# if the length of FIRST-PREFIX is greater than that of PREFIX, then +# FIRST-PREFIX will be left alone on the first line. +# +# No expansion occurs on the contents STRING, PREFIX, or FIRST-PREFIX, +# although quadrigraphs are correctly recognized. More precisely, +# you may redefine m4_qlen to recognize whatever escape sequences that +# you will post-process. +# +# Typical outputs are: +# +# m4_text_wrap([Short string */], [ ], [/* ], 20) +# => /* Short string */ +# +# m4_text_wrap([Much longer string */], [ ], [/* ], 20) +# => /* Much longer +# => string */ +# +# m4_text_wrap([Short doc.], [ ], [ --short ], 30) +# => --short Short doc. +# +# m4_text_wrap([Short doc.], [ ], [ --too-wide ], 30) +# => --too-wide +# => Short doc. +# +# m4_text_wrap([Super long documentation.], [ ], [ --too-wide ], 30) +# => --too-wide +# => Super long +# => documentation. +# +# FIXME: there is no checking of a longer PREFIX than WIDTH, but do +# we really want to bother with people trying each single corner +# of a software? +# +# This macro does not leave a trailing space behind the last word of a line, +# which complicates it a bit. The algorithm is otherwise stupid and simple: +# all the words are preceded by m4_Separator which is defined to empty for +# the first word, and then ` ' (single space) for all the others. +# +# The algorithm uses a helper that uses $2 through $4 directly, rather than +# using local variables, to avoid m4_defn overhead, or expansion swallowing +# any $. It also bypasses m4_popdef overhead with _m4_popdef since no user +# macro expansion occurs in the meantime. Also, the definition is written +# with m4_do, to avoid time wasted on dnl during expansion (since this is +# already a time-consuming macro). +m4_define([m4_text_wrap], +[_$0(m4_escape([$1]), [$2], m4_default_quoted([$3], [$2]), + m4_default_quoted([$4], [79]))]) + +m4_define([_m4_text_wrap], +m4_do(dnl set up local variables, to avoid repeated calculations +[[m4_pushdef([m4_Indent], m4_qlen([$2]))]], +[[m4_pushdef([m4_Cursor], m4_qlen([$3]))]], +[[m4_pushdef([m4_Separator], [m4_define([m4_Separator], [ ])])]], +dnl expand the first prefix, then check its length vs. regular prefix +dnl same length: nothing special +dnl prefix1 longer: output on line by itself, and reset cursor +dnl prefix1 shorter: pad to length of prefix, and reset cursor +[[[$3]m4_cond([m4_Cursor], m4_Indent, [], + [m4_eval(m4_Cursor > m4_Indent)], [1], [ +[$2]m4_define([m4_Cursor], m4_Indent)], + [m4_format([%*s], m4_max([0], + m4_eval(m4_Indent - m4_Cursor)), [])m4_define([m4_Cursor], m4_Indent)])]], +dnl now, for each word, compute the cursor after the word is output, then +dnl check if the cursor would exceed the wrap column +dnl if so, reset cursor, and insert newline and prefix +dnl if not, insert the separator (usually a space) +dnl either way, insert the word +[[m4_map_args_w([$1], [$0_word(], [, [$2], [$4])])]], +dnl finally, clean up the local variables +[[_m4_popdef([m4_Separator], [m4_Cursor], [m4_Indent])]])) + +m4_define([_m4_text_wrap_word], +[m4_define([m4_Cursor], m4_eval(m4_Cursor + m4_qlen([$1]) + 1))]dnl +[m4_if(m4_eval(m4_Cursor > ([$3])), + [1], [m4_define([m4_Cursor], m4_eval(m4_Indent + m4_qlen([$1]) + 1)) +[$2]], + [m4_Separator[]])[$1]]) + +# m4_text_box(MESSAGE, [FRAME-CHARACTER = `-']) +# --------------------------------------------- +# Turn MESSAGE into: +# ## ------- ## +# ## MESSAGE ## +# ## ------- ## +# using FRAME-CHARACTER in the border. +# +# Quadrigraphs are correctly recognized. More precisely, you may +# redefine m4_qlen to recognize whatever escape sequences that you +# will post-process. +m4_define([m4_text_box], +[m4_pushdef([m4_Border], + m4_translit(m4_format([[[%*s]]], m4_decr(m4_qlen(_m4_expand([$1 +]))), []), [ ], m4_default_quoted([$2], [-])))]dnl +[[##] _m4_defn([m4_Border]) [##] +[##] $1 [##] +[##] _m4_defn([m4_Border]) [##]_m4_popdef([m4_Border])]) + + +# m4_qlen(STRING) +# --------------- +# Expands to the length of STRING after autom4te converts all quadrigraphs. +# +# If you use some other means of post-processing m4 output rather than +# autom4te, then you may redefine this macro to recognize whatever +# escape sequences your post-processor will handle. For that matter, +# m4_define([m4_qlen], m4_defn([m4_len])) is sufficient if you don't +# do any post-processing. +# +# Avoid bpatsubsts for the common case of no quadrigraphs. Cache +# results, as configure scripts tend to ask about lengths of common +# strings like `/*' and `*/' rather frequently. Minimize the number +# of times that $1 occurs in m4_qlen, so there is less text to parse +# on a cache hit. +m4_define([m4_qlen], +[m4_ifdef([$0-$1], [_m4_defn([$0-]], [_$0(])[$1])]) +m4_define([_m4_qlen], +[m4_define([m4_qlen-$1], +m4_if(m4_index([$1], [@]), [-1], [m4_len([$1])], + [m4_len(m4_bpatsubst([[$1]], + [@\(\(<:\|:>\|S|\|%:\|\{:\|:\}\)\(@\)\|&t@\)], + [\3]))]))_m4_defn([m4_qlen-$1])]) + +# m4_copyright_condense(TEXT) +# --------------------------- +# Condense the copyright notice in TEXT to only display the final +# year, wrapping the results to fit in 80 columns. +m4_define([m4_copyright_condense], +[m4_text_wrap(m4_bpatsubst(m4_flatten([[$1]]), +[(C)[- ,0-9]*\([1-9][0-9][0-9][0-9]\)], [(C) \1]))]) + +## ----------------------- ## +## 13. Number processing. ## +## ----------------------- ## + +# m4_cmp(A, B) +# ------------ +# Compare two integer expressions. +# A < B -> -1 +# A = B -> 0 +# A > B -> 1 +m4_define([m4_cmp], +[m4_eval((([$1]) > ([$2])) - (([$1]) < ([$2])))]) + + +# m4_list_cmp(A, B) +# ----------------- +# +# Compare the two lists of integer expressions A and B. For instance: +# m4_list_cmp([1, 0], [1]) -> 0 +# m4_list_cmp([1, 0], [1, 0]) -> 0 +# m4_list_cmp([1, 2], [1, 0]) -> 1 +# m4_list_cmp([1, 2, 3], [1, 2]) -> 1 +# m4_list_cmp([1, 2, -3], [1, 2]) -> -1 +# m4_list_cmp([1, 0], [1, 2]) -> -1 +# m4_list_cmp([1], [1, 2]) -> -1 +# m4_define([xa], [oops])dnl +# m4_list_cmp([[0xa]], [5+5]) -> 0 +# +# Rather than face the overhead of m4_case, we use a helper function whose +# expansion includes the name of the macro to invoke on the tail, either +# m4_ignore or m4_unquote. This is particularly useful when comparing +# long lists, since less text is being expanded for deciding when to end +# recursion. The recursion is between a pair of macros that alternate +# which list is trimmed by one element; this is more efficient than +# calling m4_cdr on both lists from a single macro. Guarantee exactly +# one expansion of both lists' side effects. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_list_cmp], +[_$0_raw(m4_dquote($1), m4_dquote($2))]) + +m4_define([_m4_list_cmp_raw], +[m4_if([$1], [$2], [0], [_m4_list_cmp_1([$1], $2)])]) + +m4_define([_m4_list_cmp], +[m4_if([$1], [], [0m4_ignore], [$2], [0], [m4_unquote], [$2m4_ignore])]) + +m4_define([_m4_list_cmp_1], +[_m4_list_cmp_2([$2], [m4_shift2($@)], $1)]) + +m4_define([_m4_list_cmp_2], +[_m4_list_cmp([$1$3], m4_cmp([$3+0], [$1+0]))( + [_m4_list_cmp_1(m4_dquote(m4_shift3($@)), $2)])]) + +# m4_max(EXPR, ...) +# m4_min(EXPR, ...) +# ----------------- +# Return the decimal value of the maximum (or minimum) in a series of +# integer expressions. +# +# M4 1.4.x doesn't provide ?:. Hence this huge m4_eval. Avoid m4_eval +# if both arguments are identical, but be aware of m4_max(0xa, 10) (hence +# the use of <=, not just <, in the second multiply). +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_max], +[m4_if([$#], [0], [m4_fatal([too few arguments to $0])], + [$#], [1], [m4_eval([$1])], + [$#$1], [2$2], [m4_eval([$1])], + [$#], [2], [_$0($@)], + [_m4_minmax([_$0], $@)])]) + +m4_define([_m4_max], +[m4_eval((([$1]) > ([$2])) * ([$1]) + (([$1]) <= ([$2])) * ([$2]))]) + +m4_define([m4_min], +[m4_if([$#], [0], [m4_fatal([too few arguments to $0])], + [$#], [1], [m4_eval([$1])], + [$#$1], [2$2], [m4_eval([$1])], + [$#], [2], [_$0($@)], + [_m4_minmax([_$0], $@)])]) + +m4_define([_m4_min], +[m4_eval((([$1]) < ([$2])) * ([$1]) + (([$1]) >= ([$2])) * ([$2]))]) + +# _m4_minmax(METHOD, ARG1, ARG2...) +# --------------------------------- +# Common recursion code for m4_max and m4_min. METHOD must be _m4_max +# or _m4_min, and there must be at least two arguments to combine. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([_m4_minmax], +[m4_if([$#], [3], [$1([$2], [$3])], + [$0([$1], $1([$2], [$3]), m4_shift3($@))])]) + + +# m4_sign(A) +# ---------- +# The sign of the integer expression A. +m4_define([m4_sign], +[m4_eval((([$1]) > 0) - (([$1]) < 0))]) + + + +## ------------------------ ## +## 14. Version processing. ## +## ------------------------ ## + + +# m4_version_unletter(VERSION) +# ---------------------------- +# Normalize beta version numbers with letters to numeric expressions, which +# can then be handed to m4_eval for the purpose of comparison. +# +# Nl -> (N+1).-1.(l#) +# +# for example: +# [2.14a] -> [0,2,14+1,-1,[0r36:a]] -> 2.15.-1.10 +# [2.14b] -> [0,2,15+1,-1,[0r36:b]] -> 2.15.-1.11 +# [2.61aa.b] -> [0,2.61,1,-1,[0r36:aa],+1,-1,[0r36:b]] -> 2.62.-1.370.1.-1.11 +# [08] -> [0,[0r10:0]8] -> 8 +# +# This macro expects reasonable version numbers, but can handle double +# letters and does not expand any macros. Original version strings can +# use both `.' and `-' separators. +# +# Inline constant expansions, to avoid m4_defn overhead. +# _m4_version_unletter is the real workhorse used by m4_version_compare, +# but since [0r36:a] and commas are less readable than 10 and dots, we +# provide a wrapper for human use. +m4_define([m4_version_unletter], +[m4_substr(m4_map_args([.m4_eval], m4_unquote(_$0([$1]))), [3])]) +m4_define([_m4_version_unletter], +[m4_bpatsubst(m4_bpatsubst(m4_translit([[[[0,$1]]]], [.-], [,,]),]dnl +m4_dquote(m4_dquote(m4_defn([m4_cr_Letters])))[[+], + [+1,-1,[0r36:\&]]), [,0], [,[0r10:0]])]) + + +# m4_version_compare(VERSION-1, VERSION-2) +# ---------------------------------------- +# Compare the two version numbers and expand into +# -1 if VERSION-1 < VERSION-2 +# 0 if = +# 1 if > +# +# Since _m4_version_unletter does not output side effects, we can +# safely bypass the overhead of m4_version_cmp. +m4_define([m4_version_compare], +[_m4_list_cmp_raw(_m4_version_unletter([$1]), _m4_version_unletter([$2]))]) + + +# m4_PACKAGE_NAME +# m4_PACKAGE_TARNAME +# m4_PACKAGE_VERSION +# m4_PACKAGE_STRING +# m4_PACKAGE_BUGREPORT +# -------------------- +# If m4sugar/version.m4 is present, then define version strings. This +# file is optional, provided by Autoconf but absent in Bison. +m4_sinclude([m4sugar/version.m4]) + + +# m4_version_prereq(VERSION, [IF-OK], [IF-NOT = FAIL]) +# ---------------------------------------------------- +# Check this Autoconf version against VERSION. +m4_define([m4_version_prereq], +m4_ifdef([m4_PACKAGE_VERSION], +[[m4_if(m4_version_compare(]m4_dquote(m4_defn([m4_PACKAGE_VERSION]))[, [$1]), + [-1], + [m4_default([$3], + [m4_fatal([Autoconf version $1 or higher is required], + [63])])], + [$2])]], +[[m4_fatal([m4sugar/version.m4 not found])]])) + + +## ------------------ ## +## 15. Set handling. ## +## ------------------ ## + +# Autoconf likes to create arbitrarily large sets; for example, as of +# this writing, the configure.ac for coreutils tracks a set of more +# than 400 AC_SUBST. How do we track all of these set members, +# without introducing duplicates? We could use m4_append_uniq, with +# the set NAME residing in the contents of the macro NAME. +# Unfortunately, m4_append_uniq is quadratic for set creation, because +# it costs O(n) to search the string for each of O(n) insertions; not +# to mention that with m4 1.4.x, even using m4_append is slow, costing +# O(n) rather than O(1) per insertion. Other set operations, not used +# by Autoconf but still possible by manipulation of the definition +# tracked in macro NAME, include O(n) deletion of one element and O(n) +# computation of set size. Because the set is exposed to the user via +# the definition of a single macro, we cannot cache any data about the +# set without risking the cache being invalidated by the user +# redefining NAME. +# +# Can we do better? Yes, because m4 gives us an O(1) search function +# for free: ifdef. Additionally, even m4 1.4.x gives us an O(1) +# insert operation for free: pushdef. But to use these, we must +# represent the set via a group of macros; to keep the set consistent, +# we must hide the set so that the user can only manipulate it through +# accessor macros. The contents of the set are maintained through two +# access points; _m4_set([name]) is a pushdef stack of values in the +# set, useful for O(n) traversal of the set contents; while the +# existence of _m4_set([name],value) with no particular value is +# useful for O(1) querying of set membership. And since the user +# cannot externally manipulate the set, we are free to add additional +# caching macros for other performance improvements. Deletion can be +# O(1) per element rather than O(n), by reworking the definition of +# _m4_set([name],value) to be 0 or 1 based on current membership, and +# adding _m4_set_cleanup(name) to defer the O(n) cleanup of +# _m4_set([name]) until we have another reason to do an O(n) +# traversal. The existence of _m4_set_cleanup(name) can then be used +# elsewhere to determine if we must dereference _m4_set([name],value), +# or assume that definition implies set membership. Finally, size can +# be tracked in an O(1) fashion with _m4_set_size(name). +# +# The quoting in _m4_set([name],value) is chosen so that there is no +# ambiguity with a set whose name contains a comma, and so that we can +# supply the value via _m4_defn([_m4_set([name])]) without needing any +# quote manipulation. + +# m4_set_add(SET, VALUE, [IF-UNIQ], [IF-DUP]) +# ------------------------------------------- +# Add VALUE as an element of SET. Expand IF-UNIQ on the first +# addition, and IF-DUP if it is already in the set. Addition of one +# element is O(1), such that overall set creation is O(n). +# +# We do not want to add a duplicate for a previously deleted but +# unpruned element, but it is just as easy to check existence directly +# as it is to query _m4_set_cleanup($1). +m4_define([m4_set_add], +[m4_ifdef([_m4_set([$1],$2)], + [m4_if(m4_indir([_m4_set([$1],$2)]), [0], + [m4_define([_m4_set([$1],$2)], + [1])_m4_set_size([$1], [m4_incr])$3], [$4])], + [m4_define([_m4_set([$1],$2)], + [1])m4_pushdef([_m4_set([$1])], + [$2])_m4_set_size([$1], [m4_incr])$3])]) + +# m4_set_add_all(SET, VALUE...) +# ----------------------------- +# Add each VALUE into SET. This is O(n) in the number of VALUEs, and +# can be faster than calling m4_set_add for each VALUE. +# +# Implement two recursion helpers; the check variant is slower but +# handles the case where an element has previously been removed but +# not pruned. The recursion helpers ignore their second argument, so +# that we can use the faster m4_shift2 and 2 arguments, rather than +# _m4_shift2 and one argument, as the signal to end recursion. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_set_add_all], +[m4_define([_m4_set_size($1)], m4_eval(m4_set_size([$1]) + + m4_len(m4_ifdef([_m4_set_cleanup($1)], [_$0_check], [_$0])([$1], $@))))]) + +m4_define([_m4_set_add_all], +[m4_if([$#], [2], [], + [m4_ifdef([_m4_set([$1],$3)], [], + [m4_define([_m4_set([$1],$3)], [1])m4_pushdef([_m4_set([$1])], + [$3])-])$0([$1], m4_shift2($@))])]) + +m4_define([_m4_set_add_all_check], +[m4_if([$#], [2], [], + [m4_set_add([$1], [$3])$0([$1], m4_shift2($@))])]) + +# m4_set_contains(SET, VALUE, [IF-PRESENT], [IF-ABSENT]) +# ------------------------------------------------------ +# Expand IF-PRESENT if SET contains VALUE, otherwise expand IF-ABSENT. +# This is always O(1). +m4_define([m4_set_contains], +[m4_ifdef([_m4_set_cleanup($1)], + [m4_if(m4_ifdef([_m4_set([$1],$2)], + [m4_indir([_m4_set([$1],$2)])], [0]), [1], [$3], [$4])], + [m4_ifdef([_m4_set([$1],$2)], [$3], [$4])])]) + +# m4_set_contents(SET, [SEP]) +# --------------------------- +# Expand to a single string containing all the elements in SET, +# separated by SEP, without modifying SET. No provision is made for +# disambiguating set elements that contain non-empty SEP as a +# sub-string, or for recognizing a set that contains only the empty +# string. Order of the output is not guaranteed. If any elements +# have been previously removed from the set, this action will prune +# the unused memory. This is O(n) in the size of the set before +# pruning. +# +# Use _m4_popdef for speed. The existence of _m4_set_cleanup($1) +# determines which version of _1 helper we use. +m4_define([m4_set_contents], +[m4_set_map_sep([$1], [], [], [[$2]])]) + +# _m4_set_contents_1(SET) +# _m4_set_contents_1c(SET) +# _m4_set_contents_2(SET, [PRE], [POST], [SEP]) +# --------------------------------------------- +# Expand to a list of quoted elements currently in the set, each +# surrounded by PRE and POST, and moving SEP in front of PRE on +# recursion. To avoid nesting limit restrictions, the algorithm must +# be broken into two parts; _1 destructively copies the stack in +# reverse into _m4_set_($1), producing no output; then _2 +# destructively copies _m4_set_($1) back into the stack in reverse. +# If no elements were deleted, then this visits the set in the order +# that elements were inserted. Behavior is undefined if PRE/POST/SEP +# tries to recursively list or modify SET in any way other than +# calling m4_set_remove on the current element. Use _1 if all entries +# in the stack are guaranteed to be in the set, and _1c to prune +# removed entries. Uses _m4_defn and _m4_popdef for speed. +m4_define([_m4_set_contents_1], +[_m4_stack_reverse([_m4_set([$1])], [_m4_set_($1)])]) + +m4_define([_m4_set_contents_1c], +[m4_ifdef([_m4_set([$1])], + [m4_set_contains([$1], _m4_defn([_m4_set([$1])]), + [m4_pushdef([_m4_set_($1)], _m4_defn([_m4_set([$1])]))], + [_m4_popdef([_m4_set([$1],]_m4_defn( + [_m4_set([$1])])[)])])_m4_popdef([_m4_set([$1])])$0([$1])], + [_m4_popdef([_m4_set_cleanup($1)])])]) + +m4_define([_m4_set_contents_2], +[_m4_stack_reverse([_m4_set_($1)], [_m4_set([$1])], + [$2[]_m4_defn([_m4_set_($1)])$3], [$4[]])]) + +# m4_set_delete(SET) +# ------------------ +# Delete all elements in SET, and reclaim any memory occupied by the +# set. This is O(n) in the set size. +# +# Use _m4_defn and _m4_popdef for speed. +m4_define([m4_set_delete], +[m4_ifdef([_m4_set([$1])], + [_m4_popdef([_m4_set([$1],]_m4_defn([_m4_set([$1])])[)], + [_m4_set([$1])])$0([$1])], + [m4_ifdef([_m4_set_cleanup($1)], + [_m4_popdef([_m4_set_cleanup($1)])])m4_ifdef( + [_m4_set_size($1)], + [_m4_popdef([_m4_set_size($1)])])])]) + +# m4_set_difference(SET1, SET2) +# ----------------------------- +# Produce a LIST of quoted elements that occur in SET1 but not SET2. +# Output a comma prior to any elements, to distinguish the empty +# string from no elements. This can be directly used as a series of +# arguments, such as for m4_join, or wrapped inside quotes for use in +# m4_foreach. Order of the output is not guaranteed. +# +# Short-circuit the idempotence relation. +m4_define([m4_set_difference], +[m4_if([$1], [$2], [], [m4_set_map_sep([$1], [_$0([$2],], [)])])]) + +m4_define([_m4_set_difference], +[m4_set_contains([$1], [$2], [], [,[$2]])]) + +# m4_set_dump(SET, [SEP]) +# ----------------------- +# Expand to a single string containing all the elements in SET, +# separated by SEP, then delete SET. In general, if you only need to +# list the contents once, this is faster than m4_set_contents. No +# provision is made for disambiguating set elements that contain +# non-empty SEP as a sub-string. Order of the output is not +# guaranteed. This is O(n) in the size of the set before pruning. +# +# Use _m4_popdef for speed. Use existence of _m4_set_cleanup($1) to +# decide if more expensive recursion is needed. +m4_define([m4_set_dump], +[m4_ifdef([_m4_set_size($1)], + [_m4_popdef([_m4_set_size($1)])])m4_ifdef([_m4_set_cleanup($1)], + [_$0_check], [_$0])([$1], [], [$2])]) + +# _m4_set_dump(SET, [SEP], [PREP]) +# _m4_set_dump_check(SET, [SEP], [PREP]) +# -------------------------------------- +# Print SEP and the current element, then delete the element and +# recurse with empty SEP changed to PREP. The check variant checks +# whether the element has been previously removed. Use _m4_defn and +# _m4_popdef for speed. +m4_define([_m4_set_dump], +[m4_ifdef([_m4_set([$1])], + [[$2]_m4_defn([_m4_set([$1])])_m4_popdef([_m4_set([$1],]_m4_defn( + [_m4_set([$1])])[)], [_m4_set([$1])])$0([$1], [$2$3])])]) + +m4_define([_m4_set_dump_check], +[m4_ifdef([_m4_set([$1])], + [m4_set_contains([$1], _m4_defn([_m4_set([$1])]), + [[$2]_m4_defn([_m4_set([$1])])])_m4_popdef( + [_m4_set([$1],]_m4_defn([_m4_set([$1])])[)], + [_m4_set([$1])])$0([$1], [$2$3])], + [_m4_popdef([_m4_set_cleanup($1)])])]) + +# m4_set_empty(SET, [IF-EMPTY], [IF-ELEMENTS]) +# -------------------------------------------- +# Expand IF-EMPTY if SET has no elements, otherwise IF-ELEMENTS. +m4_define([m4_set_empty], +[m4_ifdef([_m4_set_size($1)], + [m4_if(m4_indir([_m4_set_size($1)]), [0], [$2], [$3])], [$2])]) + +# m4_set_foreach(SET, VAR, ACTION) +# -------------------------------- +# For each element of SET, define VAR to the element and expand +# ACTION. ACTION should not recursively list SET's contents, add +# elements to SET, nor delete any element from SET except the one +# currently in VAR. The order that the elements are visited in is not +# guaranteed. This is faster than the corresponding m4_foreach([VAR], +# m4_indir([m4_dquote]m4_set_listc([SET])), [ACTION]) +m4_define([m4_set_foreach], +[m4_pushdef([$2])m4_set_map_sep([$1], +[m4_define([$2],], [)$3])m4_popdef([$2])]) + +# m4_set_intersection(SET1, SET2) +# ------------------------------- +# Produce a LIST of quoted elements that occur in both SET1 or SET2. +# Output a comma prior to any elements, to distinguish the empty +# string from no elements. This can be directly used as a series of +# arguments, such as for m4_join, or wrapped inside quotes for use in +# m4_foreach. Order of the output is not guaranteed. +# +# Iterate over the smaller set, and short-circuit the idempotence +# relation. +m4_define([m4_set_intersection], +[m4_if([$1], [$2], [m4_set_listc([$1])], + m4_eval(m4_set_size([$2]) < m4_set_size([$1])), [1], [$0([$2], [$1])], + [m4_set_map_sep([$1], [_$0([$2],], [)])])]) + +m4_define([_m4_set_intersection], +[m4_set_contains([$1], [$2], [,[$2]])]) + +# m4_set_list(SET) +# m4_set_listc(SET) +# ----------------- +# Produce a LIST of quoted elements of SET. This can be directly used +# as a series of arguments, such as for m4_join or m4_set_add_all, or +# wrapped inside quotes for use in m4_foreach or m4_map. With +# m4_set_list, there is no way to distinguish an empty set from a set +# containing only the empty string; with m4_set_listc, a leading comma +# is output if there are any elements. +m4_define([m4_set_list], +[m4_set_map_sep([$1], [], [], [,])]) + +m4_define([m4_set_listc], +[m4_set_map_sep([$1], [,])]) + +# m4_set_map(SET, ACTION) +# ----------------------- +# For each element of SET, expand ACTION with a single argument of the +# current element. ACTION should not recursively list SET's contents, +# add elements to SET, nor delete any element from SET except the one +# passed as an argument. The order that the elements are visited in +# is not guaranteed. This is faster than either of the corresponding +# m4_map_args([ACTION]m4_set_listc([SET])) +# m4_set_foreach([SET], [VAR], [ACTION(m4_defn([VAR]))]) +m4_define([m4_set_map], +[m4_set_map_sep([$1], [$2(], [)])]) + +# m4_set_map_sep(SET, [PRE], [POST], [SEP]) +# ----------------------------------------- +# For each element of SET, expand PRE[value]POST[], and expand SEP +# between elements. +m4_define([m4_set_map_sep], +[m4_ifdef([_m4_set_cleanup($1)], [_m4_set_contents_1c], + [_m4_set_contents_1])([$1])_m4_set_contents_2($@)]) + +# m4_set_remove(SET, VALUE, [IF-PRESENT], [IF-ABSENT]) +# ---------------------------------------------------- +# If VALUE is an element of SET, delete it and expand IF-PRESENT. +# Otherwise expand IF-ABSENT. Deleting a single value is O(1), +# although it leaves memory occupied until the next O(n) traversal of +# the set which will compact the set. +# +# Optimize if the element being removed is the most recently added, +# since defining _m4_set_cleanup($1) slows down so many other macros. +# In particular, this plays well with m4_set_foreach and m4_set_map. +m4_define([m4_set_remove], +[m4_set_contains([$1], [$2], [_m4_set_size([$1], + [m4_decr])m4_if(_m4_defn([_m4_set([$1])]), [$2], + [_m4_popdef([_m4_set([$1],$2)], [_m4_set([$1])])], + [m4_define([_m4_set_cleanup($1)])m4_define( + [_m4_set([$1],$2)], [0])])$3], [$4])]) + +# m4_set_size(SET) +# ---------------- +# Expand to the number of elements currently in SET. This operation +# is O(1), and thus more efficient than m4_count(m4_set_list([SET])). +m4_define([m4_set_size], +[m4_ifdef([_m4_set_size($1)], [m4_indir([_m4_set_size($1)])], [0])]) + +# _m4_set_size(SET, ACTION) +# ------------------------- +# ACTION must be either m4_incr or m4_decr, and the size of SET is +# changed accordingly. If the set is empty, ACTION must not be +# m4_decr. +m4_define([_m4_set_size], +[m4_define([_m4_set_size($1)], + m4_ifdef([_m4_set_size($1)], [$2(m4_indir([_m4_set_size($1)]))], + [1]))]) + +# m4_set_union(SET1, SET2) +# ------------------------ +# Produce a LIST of double quoted elements that occur in either SET1 +# or SET2, without duplicates. Output a comma prior to any elements, +# to distinguish the empty string from no elements. This can be +# directly used as a series of arguments, such as for m4_join, or +# wrapped inside quotes for use in m4_foreach. Order of the output is +# not guaranteed. +# +# We can rely on the fact that m4_set_listc prunes SET1, so we don't +# need to check _m4_set([$1],element) for 0. Short-circuit the +# idempotence relation. +m4_define([m4_set_union], +[m4_set_listc([$1])m4_if([$1], [$2], [], + [m4_set_map_sep([$2], [_$0([$1],], [)])])]) + +m4_define([_m4_set_union], +[m4_ifdef([_m4_set([$1],$2)], [], [,[$2]])]) + + +## ------------------- ## +## 16. File handling. ## +## ------------------- ## + + +# It is a real pity that M4 comes with no macros to bind a diversion +# to a file. So we have to deal without, which makes us a lot more +# fragile than we should. + + +# m4_file_append(FILE-NAME, CONTENT) +# ---------------------------------- +m4_define([m4_file_append], +[m4_syscmd([cat >>$1 <<_m4eof +$2 +_m4eof +]) +m4_if(m4_sysval, [0], [], + [m4_fatal([$0: cannot write: $1])])]) + + + +## ------------------------ ## +## 17. Setting M4sugar up. ## +## ------------------------ ## + +# _m4_divert_diversion should be defined. +m4_divert_push([KILL]) + +# m4_init +# ------- +# Initialize the m4sugar language. +m4_define([m4_init], +[# All the M4sugar macros start with `m4_', except `dnl' kept as is +# for sake of simplicity. +m4_pattern_forbid([^_?m4_]) +m4_pattern_forbid([^dnl$]) + +# If __m4_version__ is defined, we assume that we are being run by M4 +# 1.6 or newer, thus $@ recursion is linear, and debugmode(+do) +# is available for faster checks of dereferencing undefined macros +# and forcing dumpdef to print to stderr regardless of debugfile. +# But if it is missing, we assume we are being run by M4 1.4.x, that +# $@ recursion is quadratic, and that we need foreach-based +# replacement macros. Also, m4 prior to 1.4.8 loses track of location +# during m4wrap text; __line__ should never be 0. +# +# Use the raw builtin to avoid tripping up include tracing. +# Meanwhile, avoid m4_copy, since it temporarily undefines m4_defn. +m4_ifdef([__m4_version__], +[m4_debugmode([+do]) +m4_define([m4_defn], _m4_defn([_m4_defn])) +m4_define([m4_dumpdef], _m4_defn([_m4_dumpdef])) +m4_define([m4_popdef], _m4_defn([_m4_popdef])) +m4_define([m4_undefine], _m4_defn([_m4_undefine]))], +[m4_builtin([include], [m4sugar/foreach.m4]) +m4_wrap_lifo([m4_if(__line__, [0], [m4_pushdef([m4_location], +]]m4_dquote(m4_dquote(m4_dquote(__file__:__line__)))[[)])])]) + +# Rewrite the first entry of the diversion stack. +m4_divert([KILL]) + +# Check the divert push/pop perfect balance. +# Some users are prone to also use m4_wrap to register last-minute +# m4_divert_text; so after our diversion cleanups, we restore +# KILL as the bottom of the diversion stack. +m4_wrap([m4_popdef([_m4_divert_diversion])m4_ifdef( + [_m4_divert_diversion], [m4_fatal([$0: unbalanced m4_divert_push: +]m4_divert_stack)])_m4_popdef([_m4_divert_stack])m4_divert_push([KILL])]) +]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/bison.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/bison.m4 new file mode 100644 index 0000000..b7bf5c5 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/bison.m4 @@ -0,0 +1,1241 @@ + -*- Autoconf -*- + +# Language-independent M4 Macros for Bison. + +# Copyright (C) 2002, 2004-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + + +# m4_gsub(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# Really similar to m4_bpatsubsts, but behaves properly with quotes. +# See m4.at's "Generating Comments". Super inelegant, but so far, I +# did not find any better solution. +m4_define([b4_gsub], +[m4_bpatsubst(m4_bpatsubst(m4_bpatsubst([[[[$1]]]], + [$2], [$3]), + [$4], [$5]), + [$6], [$7])]) + +# m4_shift2 and m4_shift3 are provided by m4sugar. +m4_define([m4_shift4], [m4_shift(m4_shift(m4_shift(m4_shift($@))))]) + + +## ---------------- ## +## Identification. ## +## ---------------- ## + +# b4_generated_by +# --------------- +m4_define([b4_generated_by], +[b4_comment([A Bison parser, made by GNU Bison b4_version_string.]) +]) + +# b4_copyright(TITLE, [YEARS]) +# ---------------------------- +# If YEARS are not defined, use b4_copyright_years. +m4_define([b4_copyright], +[b4_generated_by +b4_comment([$1 + +]m4_dquote(m4_text_wrap([Copyright (C) +]m4_ifval([$2], [[$2]], [m4_defn([b4_copyright_years])])[ +Free Software Foundation, Inc.]))[ + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see .]) + +b4_comment([As a special exception, you may create a larger work that contains +part or all of the Bison parser skeleton and distribute that work +under terms of your choice, so long as that work isn't itself a +parser generator using the skeleton or a modified version thereof +as a parser skeleton. Alternatively, if you modify or redistribute +the parser skeleton itself, you may (at your option) remove this +special exception, which will cause the skeleton and the resulting +Bison output files to be licensed under the GNU General Public +License without this special exception. + +This special exception was added by the Free Software Foundation in +version 2.2 of Bison.]) +]) + + +# b4_disclaimer +# ------------- +# Issue a warning about private implementation details. +m4_define([b4_disclaimer], +[b4_comment([DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual, +especially those whose name start with YY_ or yy_. They are +private implementation details that can be changed or removed.]) +]) + + + +# b4_required_version_if(VERSION, IF_NEWER, IF_OLDER) +# --------------------------------------------------- +# If the version %require'd by the user is VERSION (or newer) expand +# IF_NEWER, otherwise IF_OLDER. VERSION should be an integer, e.g., +# 302 for 3.2. +m4_define([b4_required_version_if], +[m4_if(m4_eval($1 <= b4_required_version), + [1], [$2], [$3])]) + + +## -------- ## +## Output. ## +## -------- ## + +# b4_output_begin(FILE1, FILE2) +# ----------------------------- +# Enable output, i.e., send to diversion 0, expand after "#", and +# generate the tag to output into FILE. Must be followed by EOL. +# FILE is FILE1 concatenated to FILE2. FILE2 can be empty, or be +# absolute: do the right thing. +m4_define([b4_output_begin], +[m4_changecom() +m4_divert_push(0)dnl +@output(m4_unquote([$1])@,m4_unquote([$2])@)@dnl +]) + + +# b4_output_end +# ------------- +# Output nothing, restore # as comment character (no expansions after #). +m4_define([b4_output_end], +[m4_divert_pop(0) +m4_changecom([#]) +]) + + +# b4_divert_kill(CODE) +# -------------------- +# Expand CODE for its side effects, discard its output. +m4_define([b4_divert_kill], +[m4_divert_text([KILL], [$1])]) + + +# b4_define_silent(MACRO, CODE) +# ----------------------------- +# Same as m4_define, but throw away the expansion of CODE. +m4_define([b4_define_silent], +[m4_define([$1], [b4_divert_kill([$2])])]) + + +## ---------------- ## +## Error handling. ## +## ---------------- ## + +# The following error handling macros print error directives that should not +# become arguments of other macro invocations since they would likely then be +# mangled. Thus, they print to stdout directly. + +# b4_cat(TEXT) +# ------------ +# Write TEXT to stdout. Precede the final newline with an @ so that it's +# escaped. For example: +# +# b4_cat([[@complain(invalid input@)]]) +m4_define([b4_cat], +[m4_syscmd([cat <<'_m4eof' +]m4_bpatsubst(m4_dquote($1), [_m4eof], [_m4@`eof])[@ +_m4eof +])dnl +m4_if(m4_sysval, [0], [], [m4_fatal([$0: cannot write to stdout])])]) + +# b4_error(KIND, START, END, FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------------------------- +# Write @KIND(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_error([[complain]], [[input.y:2.3]], [[input.y:5.4]], +# [[invalid %s]], [[foo]]) +m4_define([b4_error], +[b4_cat([[@complain][(]$1[@,]$2[@,]$3[@,]$4[]]dnl +[m4_if([$#], [4], [], + [m4_foreach([b4_arg], + m4_dquote(m4_shift4($@)), + [[@,]b4_arg])])[@)]])]) + +# b4_warn(FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------ +# Write @warn(FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_warn([[invalid value for '%s': %s]], [[foo]], [[3]]) +# +# As a simple test suite, this: +# +# m4_divert(-1) +# m4_define([asdf], [ASDF]) +# m4_define([fsa], [FSA]) +# m4_define([fdsa], [FDSA]) +# b4_warn_at([[[asdf), asdf]]], [[[fsa), fsa]]], [[[fdsa), fdsa]]]) +# b4_warn_at([[asdf), asdf]], [[fsa), fsa]], [[fdsa), fdsa]]) +# b4_warn_at() +# b4_warn_at(1) +# b4_warn_at(1, 2) +# +# Should produce this without newlines: +# +# @warn_at([asdf), asdf]@,@,@,[fsa), fsa]@,[fdsa), fdsa]@) +# @warn(asdf), asdf@,@,@,fsa), fsa@,fdsa), fdsa@) +# @warn(@) +# @warn(1@) +# @warn(1@,2@) +m4_define([b4_warn], +[b4_warn_at([], [], $@)]) + +# b4_warn_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# --------------------------------------------------- +# Write @warn(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_warn_at([[input.y:2.3]], [[input.y:5.4]], [[invalid %s]], [[foo]]) +m4_define([b4_warn_at], +[b4_error([[warn]], $@)]) + +# b4_complain(FORMAT, [ARG1], [ARG2], ...) +# ---------------------------------------- +# Bounce to b4_complain_at. +# +# See b4_warn example. +m4_define([b4_complain], +[b4_complain_at([], [], $@)]) + +# b4_complain_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------------------------- +# Write @complain(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# See b4_warn_at example. +m4_define([b4_complain_at], +[b4_error([[complain]], $@)]) + +# b4_fatal(FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------- +# Bounce to b4_fatal_at. +# +# See b4_warn example. +m4_define([b4_fatal], +[b4_fatal_at([], [], $@)]) + +# b4_fatal_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# ---------------------------------------------------- +# Write @fatal(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout and exit. +# +# See b4_warn_at example. +m4_define([b4_fatal_at], +[b4_error([[fatal]], $@)dnl +m4_exit(1)]) + +# b4_canary(MSG) +# -------------- +# Issue a warning on stderr and in the output. Used in the test suite +# to catch spurious m4 evaluations. +m4_define([b4_canary], +[m4_errprintn([dead canary: $1])DEAD CANARY($1)]) + + +## ------------ ## +## Data Types. ## +## ------------ ## + +# b4_ints_in(INT1, INT2, LOW, HIGH) +# --------------------------------- +# Return 1 iff both INT1 and INT2 are in [LOW, HIGH], 0 otherwise. +m4_define([b4_ints_in], +[m4_eval([$3 <= $1 && $1 <= $4 && $3 <= $2 && $2 <= $4])]) + + +# b4_subtract(LHS, RHS) +# --------------------- +# Evaluate LHS - RHS if they are integer literals, otherwise expand +# to (LHS) - (RHS). +m4_define([b4_subtract], +[m4_bmatch([$1$2], [^[0123456789]*$], + [m4_eval([$1 - $2])], + [($1) - ($2)])]) + +# b4_join(ARG1, ...) +# _b4_join(ARG1, ...) +# ------------------- +# Join with comma, skipping empty arguments. +# b4_join calls itself recursively until it sees the first non-empty +# argument, then calls _b4_join (i.e., `_$0`) which prepends each +# non-empty argument with a comma. +m4_define([b4_join], +[m4_if([$#$1], + [1], [], + [m4_ifval([$1], + [$1[]_$0(m4_shift($@))], + [$0(m4_shift($@))])])]) + +# _b4_join(ARGS1, ...) +# -------------------- +m4_define([_b4_join], +[m4_if([$#$1], + [1], [], + [m4_ifval([$1], [, $1])[]$0(m4_shift($@))])]) + + + + +# b4_integral_parser_tables_map(MACRO) +# ------------------------------------- +# Map MACRO on all the integral tables. MACRO is expected to have +# the signature MACRO(TABLE-NAME, CONTENT, COMMENT). +m4_define([b4_integral_parser_tables_map], +[$1([pact], [b4_pact], + [[YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing +STATE-NUM.]]) + +$1([defact], [b4_defact], + [[YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. +Performed when YYTABLE does not specify something else to do. Zero +means the default is an error.]]) + +$1([pgoto], [b4_pgoto], [[YYPGOTO[NTERM-NUM].]]) + +$1([defgoto], [b4_defgoto], [[YYDEFGOTO[NTERM-NUM].]]) + +$1([table], [b4_table], + [[YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If +positive, shift that token. If negative, reduce the rule whose +number is the opposite. If YYTABLE_NINF, syntax error.]]) + +$1([check], [b4_check]) + +$1([stos], [b4_stos], + [[YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of +state STATE-NUM.]]) + +$1([r1], [b4_r1], + [[YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM.]]) + +$1([r2], [b4_r2], + [[YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM.]]) +]) + + +# b4_parser_tables_declare +# b4_parser_tables_define +# ------------------------ +# Define/declare the (deterministic) parser tables. +m4_define([b4_parser_tables_declare], +[b4_integral_parser_tables_map([b4_integral_parser_table_declare])]) + +m4_define([b4_parser_tables_define], +[b4_integral_parser_tables_map([b4_integral_parser_table_define])]) + + + +## ------------------ ## +## Decoding options. ## +## ------------------ ## + +# b4_flag_if(FLAG, IF-TRUE, IF-FALSE) +# ----------------------------------- +# Run IF-TRUE if b4_FLAG_flag is 1, IF-FALSE if FLAG is 0, otherwise fail. +m4_define([b4_flag_if], +[m4_case(b4_$1_flag, + [0], [$3], + [1], [$2], + [m4_fatal([invalid $1 value: ]b4_$1_flag)])]) + + +# b4_define_flag_if(FLAG) +# ----------------------- +# Define "b4_FLAG_if(IF-TRUE, IF-FALSE)" that depends on the +# value of the Boolean FLAG. +m4_define([b4_define_flag_if], +[_b4_define_flag_if($[1], $[2], [$1])]) + +# _b4_define_flag_if($1, $2, FLAG) +# -------------------------------- +# Work around the impossibility to define macros inside macros, +# because issuing '[$1]' is not possible in M4. GNU M4 should provide +# $$1 a la M5/TeX. +m4_define([_b4_define_flag_if], +[m4_if([$1$2], $[1]$[2], [], + [m4_fatal([$0: Invalid arguments: $@])])dnl +m4_define([b4_$3_if], + [b4_flag_if([$3], [$1], [$2])])]) + + +# b4_FLAG_if(IF-TRUE, IF-FALSE) +# ----------------------------- +# Expand IF-TRUE, if FLAG is true, IF-FALSE otherwise. +b4_define_flag_if([glr]) # Whether a GLR parser is requested. +b4_define_flag_if([has_translations]) # Whether some tokens are internationalized. +b4_define_flag_if([header]) # Whether a header is requested. +b4_define_flag_if([nondeterministic]) # Whether conflicts should be handled. +b4_define_flag_if([token_table]) # Whether yytoken_table is demanded. +b4_define_flag_if([yacc]) # Whether POSIX Yacc is emulated. + + +# b4_glr_cc_if([IF-TRUE], [IF-FALSE]) +# ----------------------------------- +m4_define([b4_glr_cc_if], + [m4_if(b4_skeleton, ["glr.cc"], $@)]) + +# b4_glr2_cc_if([IF-TRUE], [IF-FALSE]) +# ------------------------------------ +m4_define([b4_glr2_cc_if], + [m4_if(b4_skeleton, ["glr2.cc"], $@)]) + +## --------- ## +## Symbols. ## +## --------- ## + +# For a description of the Symbol handling, see README.md. +# +# The following macros provide access to symbol related values. + +# __b4_symbol(NUM, FIELD) +# ----------------------- +# Fetch FIELD of symbol #NUM. Fail if undefined. +m4_define([__b4_symbol], +[m4_indir([b4_symbol($1, $2)])]) + + +# _b4_symbol(NUM, FIELD) +# ---------------------- +# Fetch FIELD of symbol #NUM (or "orig NUM", see README.md). +# Fail if undefined. +m4_define([_b4_symbol], +[m4_ifdef([b4_symbol($1, number)], + [__b4_symbol(m4_indir([b4_symbol($1, number)]), $2)], + [__b4_symbol([$1], [$2])])]) + + +# b4_symbol_token_kind(NUM) +# ------------------------- +# The token kind of this symbol. +m4_define([b4_symbol_token_kind], +[b4_percent_define_get([api.token.prefix])dnl +_b4_symbol([$1], [id])]) + + +# b4_symbol_kind_base(NUM) +# ------------------------ +# Build the name of the kind of this symbol. It must always exist, +# otherwise some symbols might not be represented in the enum, which +# might be compiled into too small a type to contain all the symbol +# numbers. +m4_define([b4_symbol_prefix], [b4_percent_define_get([api.symbol.prefix])]) +m4_define([b4_symbol_kind_base], +[b4_percent_define_get([api.symbol.prefix])dnl +m4_case([$1], + [-2], [[YYEMPTY]], + [0], [[YYEOF]], + [1], [[YYerror]], + [2], [[YYUNDEF]], + [m4_case(b4_symbol([$1], [tag]), + [$accept], [[YYACCEPT]], + [b4_symbol_if([$1], [has_id], _b4_symbol([$1], [id]), + [m4_bpatsubst([$1-][]_b4_symbol([$1], [tag]), [[^a-zA-Z_0-9]+], [_])])])])]) + + +# b4_symbol_kind(NUM) +# ------------------- +# Same as b4_symbol_kind, but possibly with a prefix in some +# languages. E.g., EOF's kind_base and kind are YYSYMBOL_YYEOF in C, +# but are S_YYEMPTY and symbol_kind::S_YYEMPTY in C++. +m4_copy([b4_symbol_kind_base], [b4_symbol_kind]) + + +# b4_symbol_slot(NUM) +# ------------------- +# The name of union member that contains the value of these symbols. +# Currently, we are messy, this should actually be type_tag, but type_tag +# has several meanings. +m4_define([b4_symbol_slot], +[m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_symbol([$1], [type_tag])], + [variant], [b4_symbol([$1], [type_tag])], + [b4_symbol([$1], [type])])]) + + +# b4_symbol(NUM, FIELD) +# --------------------- +# Fetch FIELD of symbol #NUM (or "orig NUM", or "empty"). Fail if undefined. +# +# If FIELD = id, prepend the token prefix. +m4_define([b4_symbol], +[m4_if([$1], [empty], [b4_symbol([-2], [$2])], + [$1], [eof], [b4_symbol([0], [$2])], + [$1], [error], [b4_symbol([1], [$2])], + [$1], [undef], [b4_symbol([2], [$2])], + [m4_case([$2], + [id], [b4_symbol_token_kind([$1])], + [kind_base], [b4_symbol_kind_base([$1])], + [kind], [b4_symbol_kind([$1])], + [slot], [b4_symbol_slot([$1])], + [_b4_symbol($@)])])]) + + +# b4_symbol_if(NUM, FIELD, IF-TRUE, IF-FALSE) +# ------------------------------------------- +# If FIELD about symbol #NUM is 1 expand IF-TRUE, if is 0, expand IF-FALSE. +# Otherwise an error. +m4_define([b4_symbol_if], +[m4_case(b4_symbol([$1], [$2]), + [1], [$3], + [0], [$4], + [m4_fatal([$0: field $2 of $1 is not a Boolean:] b4_symbol([$1], [$2]))])]) + + +# b4_symbol_tag_comment(SYMBOL-NUM) +# --------------------------------- +# Issue a comment giving the tag of symbol NUM. +m4_define([b4_symbol_tag_comment], +[b4_comment([b4_symbol([$1], [tag])]) +]) + + +# b4_symbol_action(SYMBOL-NUM, ACTION) +# ------------------------------------ +# Run the action ACTION ("destructor" or "printer") for SYMBOL-NUM. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([(*yyvaluep)], + [$1], + [], + [(*yylocationp)])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl +b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_symbol_destructor(SYMBOL-NUM) +# b4_symbol_printer(SYMBOL-NUM) +# -------------------------------- +m4_define([b4_symbol_destructor], [b4_symbol_action([$1], [destructor])]) +m4_define([b4_symbol_printer], [b4_symbol_action([$1], [printer])]) + + +# b4_symbol_actions(ACTION, [KIND = yykind]) +# ------------------------------------------ +# Emit the symbol actions for ACTION ("destructor" or "printer"). +# Dispatch on KIND. +m4_define([b4_symbol_actions], +[m4_pushdef([b4_actions_], m4_expand([b4_symbol_foreach([b4_symbol_$1])]))dnl +m4_ifval(m4_defn([b4_actions_]), +[switch (m4_default([$2], [yykind])) + { +m4_defn([b4_actions_])[]dnl + default: + break; + }dnl +], +[b4_use(m4_default([$2], [yykind]));])dnl +m4_popdef([b4_actions_])dnl +]) + +# _b4_symbol_case(SYMBOL-NUM) +# --------------------------- +# Issue a "case NUM" for SYMBOL-NUM. Ends with its EOL to make it +# easier to use with m4_map, but then, use []dnl to suppress the last +# one. +m4_define([_b4_symbol_case], +[case b4_symbol([$1], [kind]): b4_symbol_tag_comment([$1])]) +]) + + +# b4_symbol_foreach(MACRO) +# ------------------------ +# Invoke MACRO(SYMBOL-NUM) for each SYMBOL-NUM. +m4_define([b4_symbol_foreach], + [m4_map([$1], m4_defn([b4_symbol_numbers]))]) + +# b4_symbol_map(MACRO) +# -------------------- +# Return a list (possibly empty elements) of MACRO invoked for each +# SYMBOL-NUM. +m4_define([b4_symbol_map], +[m4_map_args_sep([$1(], [)], [,], b4_symbol_numbers)]) + + +# b4_token_visible_if(NUM, IF-TRUE, IF-FALSE) +# ------------------------------------------- +# Whether NUM denotes a token kind that has an exported definition +# (i.e., shows in enum yytokentype). +m4_define([b4_token_visible_if], +[b4_symbol_if([$1], [is_token], + [b4_symbol_if([$1], [has_id], [$2], [$3])], + [$3])]) + + +# b4_token_has_definition(NUM) +# ---------------------------- +# 1 if NUM is visible, nothing otherwise. +m4_define([b4_token_has_definition], +[b4_token_visible_if([$1], [1])]) + +# b4_any_token_visible_if([IF-TRUE], [IF-FALSE]) +# ---------------------------------------------- +# Whether there is a token that needs to be defined. +m4_define([b4_any_token_visible_if], +[m4_ifval(b4_symbol_foreach([b4_token_has_definition]), + [$1], [$2])]) + + +# b4_token_format(FORMAT, NUM) +# ---------------------------- +# If token NUM has a visible ID, format FORMAT with ID, USER_NUMBER. +m4_define([b4_token_format], +[b4_token_visible_if([$2], +[m4_format([[$1]], + b4_symbol([$2], [id]), + b4_symbol([$2], b4_api_token_raw_if([[number]], [[code]])))])]) + + +# b4_last_enum_token +# ------------------ +# The code of the last token visible token. +m4_define([_b4_last_enum_token], +[b4_token_visible_if([$1], + [m4_define([b4_last_enum_token], [$1])])]) +b4_symbol_foreach([_b4_last_enum_token]) + +# b4_last_symbol +# -------------- +# The code of the last symbol. +m4_define([b4_last_symbol], m4_eval(b4_tokens_number + b4_nterms_number - 1)) + +## ------- ## +## Types. ## +## ------- ## + +# _b4_type_action(NUMS) +# --------------------- +# Run actions for the symbol NUMS that all have the same type-name. +# Skip NUMS that have no type-name. +# +# To specify the action to run, define b4_dollar_dollar(SYMBOL-NUM, +# TAG, TYPE). +m4_define([_b4_type_action], +[b4_symbol_if([$1], [has_type], +[m4_map([ _b4_symbol_case], [$@])[]dnl + b4_dollar_dollar([b4_symbol([$1], [number])], + [b4_symbol([$1], [tag])], + [b4_symbol([$1], [type])]); + break; + +])]) + +# b4_type_foreach(MACRO, [SEP]) +# ----------------------------- +# Invoke MACRO(SYMBOL-NUMS) for each set of SYMBOL-NUMS for each type set. +m4_define([b4_type_foreach], + [m4_map_sep([$1], [$2], m4_defn([b4_type_names]))]) + + + +## ----------- ## +## Synclines. ## +## ----------- ## + +# b4_basename(NAME) +# ----------------- +# Similar to POSIX basename; the differences don't matter here. +# Beware that NAME is not evaluated. +m4_define([b4_basename], +[m4_bpatsubst([$1], [^.*/\([^/]+\)/*$], [\1])]) + + +# b4_syncline(LINE, FILE)dnl +# -------------------------- +# Should always be following by a dnl. +# +# Emit "#line LINE FILE /* __LINE__ __FILE__ */". +m4_define([b4_syncline], +[b4_flag_if([synclines], +[b4_sync_start([$1], [$2])[]dnl +b4_sync_end([__line__], [b4_basename(m4_quote(__file__))]) +])]) + +# b4_sync_start(LINE, FILE) +# ----------------------- +# Syncline for the new place. Typically a directive for the compiler. +m4_define([b4_sync_start], [b4_comment([$2:$1])]) + +# b4_sync_end(LINE, FILE) +# ----------------------- +# Syncline for the current place, which ends. Typically a comment +# left for the reader. +m4_define([b4_sync_end], [ b4_comment([$2:$1])] +) +# This generates dependencies on the Bison skeletons hence lots of +# useless 'git diff'. This location is useless for the regular +# user (who does not care about the skeletons) and is actually not +# useful for Bison developers too (I, Akim, never used this to locate +# the code in skeletons that generated output). So disable it +# completely. If someone thinks this was actually useful, a %define +# variable should be provided to control the level of verbosity of +# '#line', in replacement of --no-lines. +m4_define([b4_sync_end]) + + +# b4_user_code(USER-CODE) +# ----------------------- +# Emit code from the user, ending it with synclines. +m4_define([b4_user_code], +[$1 +b4_syncline([@oline@], [@ofile@])]) + + +# b4_define_user_code(MACRO, COMMENT) +# ----------------------------------- +# From b4_MACRO, if defined, build b4_user_MACRO that includes the synclines. +m4_define([b4_define_user_code], +[m4_define([b4_user_$1], + [m4_ifdef([b4_$1], + [m4_ifval([$2], + [b4_comment([$2]) +])b4_user_code([b4_$1])])])]) + +# b4_user_actions +# b4_user_initial_action +# b4_user_post_prologue +# b4_user_pre_prologue +# b4_user_union_members +# ---------------------- +# Macros that issue user code, ending with synclines. +b4_define_user_code([actions]) +b4_define_user_code([initial_action], [User initialization code.]) +b4_define_user_code([post_prologue], [Second part of user prologue.]) +b4_define_user_code([pre_prologue], [First part of user prologue.]) +b4_define_user_code([union_members]) + + +# b4_check_user_names(WHAT, USER-LIST, BISON-NAMESPACE) +# ----------------------------------------------------- +# Complain if any name of type WHAT is used by the user (as recorded in +# USER-LIST) but is not used by Bison (as recorded by macros in the +# namespace BISON-NAMESPACE). +# +# USER-LIST must expand to a list specifying all user occurrences of all names +# of type WHAT. Each item in the list must be a triplet specifying one +# occurrence: name, start boundary, and end boundary. Empty string names are +# fine. An empty list is fine. +# +# For example, to define b4_foo_user_names to be used for USER-LIST with three +# name occurrences and with correct quoting: +# +# m4_define([b4_foo_user_names], +# [[[[[[bar]], [[parser.y:1.7]], [[parser.y:1.16]]]], +# [[[[bar]], [[parser.y:5.7]], [[parser.y:5.16]]]], +# [[[[baz]], [[parser.y:8.7]], [[parser.y:8.16]]]]]]) +# +# The macro BISON-NAMESPACE(bar) must be defined iff the name bar of type WHAT +# is used by Bison (in the front-end or in the skeleton). Empty string names +# are fine, but it would be ugly for Bison to actually use one. +# +# For example, to use b4_foo_bison_names for BISON-NAMESPACE and define that +# the names bar and baz are used by Bison: +# +# m4_define([b4_foo_bison_names(bar)]) +# m4_define([b4_foo_bison_names(baz)]) +# +# To invoke b4_check_user_names with TYPE foo, with USER-LIST +# b4_foo_user_names, with BISON-NAMESPACE b4_foo_bison_names, and with correct +# quoting: +# +# b4_check_user_names([[foo]], [b4_foo_user_names], +# [[b4_foo_bison_names]]) +m4_define([b4_check_user_names], +[m4_foreach([b4_occurrence], $2, +[m4_pushdef([b4_occurrence], b4_occurrence)dnl +m4_pushdef([b4_user_name], m4_car(b4_occurrence))dnl +m4_pushdef([b4_start], m4_car(m4_shift(b4_occurrence)))dnl +m4_pushdef([b4_end], m4_shift2(b4_occurrence))dnl +m4_ifndef($3[(]m4_quote(b4_user_name)[)], + [b4_complain_at([b4_start], [b4_end], + [[%s '%s' is not used]], + [$1], [b4_user_name])])[]dnl +m4_popdef([b4_occurrence])dnl +m4_popdef([b4_user_name])dnl +m4_popdef([b4_start])dnl +m4_popdef([b4_end])dnl +])]) + + + +## --------------------- ## +## b4_percent_define_*. ## +## --------------------- ## + + +# b4_percent_define_use(VARIABLE) +# ------------------------------- +# Declare that VARIABLE was used. +m4_define([b4_percent_define_use], +[m4_define([b4_percent_define_bison_variables(]$1[)])dnl +]) + +# b4_percent_define_get(VARIABLE, [DEFAULT]) +# ------------------------------------------ +# Mimic muscle_percent_define_get in ../src/muscle-tab.h. That is, if +# the %define variable VARIABLE is defined, emit its value. Contrary +# to its C counterpart, return DEFAULT otherwise. Also, record +# Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_get([[foo]]) +m4_define([b4_percent_define_get], +[b4_percent_define_use([$1])dnl +_b4_percent_define_ifdef([$1], + [m4_indir([b4_percent_define(]$1[)])], + [$2])]) + +# b4_percent_define_get_loc(VARIABLE) +# ----------------------------------- +# Mimic muscle_percent_define_get_loc in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is undefined, complain fatally since that's +# a Bison or skeleton error. Otherwise, return its definition location in a +# form appropriate for the first two arguments of b4_warn_at, b4_complain_at, or +# b4_fatal_at. Don't record this as a Bison usage of VARIABLE as there's no +# reason to suspect that the user-supplied value has yet influenced the output. +# +# For example: +# +# b4_complain_at(b4_percent_define_get_loc([[foo]]), [[invalid foo]]) +m4_define([b4_percent_define_get_loc], +[m4_ifdef([b4_percent_define_loc(]$1[)], + [m4_pushdef([b4_loc], m4_indir([b4_percent_define_loc(]$1[)]))dnl +b4_loc[]dnl +m4_popdef([b4_loc])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_define_get_kind(VARIABLE) +# ------------------------------------ +# Get the kind (code, keyword, string) of VARIABLE, i.e., how its +# value was defined (braces, not delimiters, quotes). +# +# If the %define variable VARIABLE is undefined, complain fatally +# since that's a Bison or skeleton error. Don't record this as a +# Bison usage of VARIABLE as there's no reason to suspect that the +# user-supplied value has yet influenced the output. +m4_define([b4_percent_define_get_kind], +[m4_ifdef([b4_percent_define_kind(]$1[)], + [m4_indir([b4_percent_define_kind(]$1[)])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_define_get_syncline(VARIABLE)dnl +# ------------------------------------------- +# Should always be following by a dnl. +# +# Mimic muscle_percent_define_get_syncline in ../src/muscle-tab.h exactly. +# That is, if the %define variable VARIABLE is undefined, complain fatally +# since that's a Bison or skeleton error. Otherwise, return its definition +# location as a b4_syncline invocation. Don't record this as a Bison usage of +# VARIABLE as there's no reason to suspect that the user-supplied value has yet +# influenced the output. +# +# For example: +# +# b4_percent_define_get_syncline([[foo]]) +m4_define([b4_percent_define_get_syncline], +[m4_ifdef([b4_percent_define_syncline(]$1[)], + [m4_indir([b4_percent_define_syncline(]$1[)])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# _b4_percent_define_ifdef(VARIABLE, IF-TRUE, [IF-FALSE]) +# ------------------------------------------------------ +# If the %define variable VARIABLE is defined, expand IF-TRUE, else expand +# IF-FALSE. Don't record usage of VARIABLE. +# +# For example: +# +# _b4_percent_define_ifdef([[foo]], [[it's defined]], [[it's undefined]]) +m4_define([_b4_percent_define_ifdef], +[m4_ifdef([b4_percent_define(]$1[)], + [$2], + [$3])]) + +# b4_percent_define_ifdef(VARIABLE, IF-TRUE, [IF-FALSE]) +# ------------------------------------------------------ +# Mimic muscle_percent_define_ifdef in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is defined, expand IF-TRUE, else expand +# IF-FALSE. Also, record Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_ifdef([[foo]], [[it's defined]], [[it's undefined]]) +m4_define([b4_percent_define_ifdef], +[_b4_percent_define_ifdef([$1], + [b4_percent_define_use([$1])$2], + [$3])]) + + +# b4_percent_define_check_file_complain(VARIABLE) +# ----------------------------------------------- +# Warn about %define variable VARIABLE having an incorrect +# value. +m4_define([b4_percent_define_check_file_complain], +[b4_complain_at(b4_percent_define_get_loc([$1]), + [[%%define variable '%s' requires 'none' or '"..."' values]], + [$1])]) + + +# b4_percent_define_check_file(MACRO, VARIABLE, DEFAULT) +# ------------------------------------------------------ +# If the %define variable VARIABLE: +# - is undefined, then if DEFAULT is non-empty, define MACRO to DEFAULT +# - is a string, define MACRO to its value +# - is the keyword 'none', do nothing +# - otherwise, warn about the incorrect value. +m4_define([b4_percent_define_check_file], +[b4_percent_define_ifdef([$2], + [m4_case(b4_percent_define_get_kind([$2]), + [string], + [m4_define([$1], b4_percent_define_get([$2]))], + [keyword], + [m4_if(b4_percent_define_get([$2]), [none], [], + [b4_percent_define_check_file_complain([$2])])], + [b4_percent_define_check_file_complain([$2])]) + ], + [m4_ifval([$3], + [m4_define([$1], [$3])])]) +]) + + + +## --------- ## +## Options. ## +## --------- ## + + +# b4_percent_define_flag_if(VARIABLE, IF-TRUE, [IF-FALSE]) +# -------------------------------------------------------- +# Mimic muscle_percent_define_flag_if in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is defined to "" or "true", expand IF-TRUE. +# If it is defined to "false", expand IF-FALSE. Complain if it is undefined +# (a Bison or skeleton error since the default value should have been set +# already) or defined to any other value (possibly a user error). Also, record +# Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_flag_if([[foo]], [[it's true]], [[it's false]]) +m4_define([b4_percent_define_flag_if], +[b4_percent_define_ifdef([$1], + [m4_case(b4_percent_define_get([$1]), + [], [$2], [true], [$2], [false], [$3], + [m4_expand_once([b4_complain_at(b4_percent_define_get_loc([$1]), + [[invalid value for %%define Boolean variable '%s']], + [$1])], + [[b4_percent_define_flag_if($1)]])])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + + +# b4_percent_define_default(VARIABLE, DEFAULT, [KIND = keyword]) +# -------------------------------------------------------------- +# Mimic muscle_percent_define_default in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is undefined, set its value to DEFAULT. +# Don't record this as a Bison usage of VARIABLE as there's no reason to +# suspect that the value has yet influenced the output. +# +# For example: +# +# b4_percent_define_default([[foo]], [[default value]]) +m4_define([_b4_percent_define_define], +[m4_define([b4_percent_define(]$1[)], [$2])dnl +m4_define([b4_percent_define_kind(]$1[)], + [m4_default([$3], [keyword])])dnl +m4_define([b4_percent_define_loc(]$1[)], + [[[[:-1.-1]], + [[:-1.-1]]]])dnl +m4_define([b4_percent_define_syncline(]$1[)], [[]])]) + +m4_define([b4_percent_define_default], +[_b4_percent_define_ifdef([$1], [], + [_b4_percent_define_define($@)])]) + + +# b4_percent_define_if_define(NAME, [VARIABLE = NAME]) +# ---------------------------------------------------- +# Define b4_NAME_if that executes its $1 or $2 depending whether +# VARIABLE was %defined. The characters '.' and `-' in VARIABLE are mapped +# to '_'. +m4_define([_b4_percent_define_if_define], +[m4_define(m4_bpatsubst([b4_$1_if], [[-.]], [_]), + [b4_percent_define_default([m4_default([$2], [$1])], [[false]])dnl +b4_percent_define_flag_if(m4_default([$2], [$1]), + [$3], [$4])])]) + +m4_define([b4_percent_define_if_define], +[_b4_percent_define_if_define([$1], [$2], $[1], $[2])]) + + +# b4_percent_define_check_kind(VARIABLE, KIND, [DIAGNOSTIC = complain]) +# --------------------------------------------------------------------- +m4_define([b4_percent_define_check_kind], +[_b4_percent_define_ifdef([$1], + [m4_if(b4_percent_define_get_kind([$1]), [$2], [], + [b4_error([m4_default([$3], [complain])], + b4_percent_define_get_loc([$1]), + [m4_case([$2], + [code], [[%%define variable '%s' requires '{...}' values]], + [keyword], [[%%define variable '%s' requires keyword values]], + [string], [[%%define variable '%s' requires '"..."' values]])], + [$1])])])dnl +]) + + +# b4_percent_define_check_values(VALUES) +# -------------------------------------- +# Mimic muscle_percent_define_check_values in ../src/muscle-tab.h exactly +# except that the VALUES structure is more appropriate for M4. That is, VALUES +# is a list of sublists of strings. For each sublist, the first string is the +# name of a %define variable, and all remaining strings in that sublist are the +# valid values for that variable. Complain if such a variable is undefined (a +# Bison error since the default value should have been set already) or defined +# to any other value (possibly a user error). Don't record this as a Bison +# usage of the variable as there's no reason to suspect that the value has yet +# influenced the output. +# +# For example: +# +# b4_percent_define_check_values([[[[foo]], [[foo-value1]], [[foo-value2]]]], +# [[[[bar]], [[bar-value1]]]]) +m4_define([b4_percent_define_check_values], +[m4_foreach([b4_sublist], m4_quote($@), + [_b4_percent_define_check_values(b4_sublist)])]) + +m4_define([_b4_percent_define_check_values], +[_b4_percent_define_ifdef([$1], + [b4_percent_define_check_kind(]$1[, [keyword], [deprecated])dnl + m4_pushdef([b4_good_value], [0])dnl + m4_if($#, 1, [], + [m4_foreach([b4_value], m4_dquote(m4_shift($@)), + [m4_if(m4_indir([b4_percent_define(]$1[)]), b4_value, + [m4_define([b4_good_value], [1])])])])dnl + m4_if(b4_good_value, [0], + [b4_complain_at(b4_percent_define_get_loc([$1]), + [[invalid value for %%define variable '%s': '%s']], + [$1], + m4_dquote(m4_indir([b4_percent_define(]$1[)]))) + m4_foreach([b4_value], m4_dquote(m4_shift($@)), + [b4_error([[note]], b4_percent_define_get_loc([$1]), [] + [[accepted value: '%s']], + m4_dquote(b4_value))])])dnl + m4_popdef([b4_good_value])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_code_get([QUALIFIER]) +# -------------------------------- +# If any %code blocks for QUALIFIER are defined, emit them beginning with a +# comment and ending with synclines and a newline. If QUALIFIER is not +# specified or empty, do this for the unqualified %code blocks. Also, record +# Bison's usage of QUALIFIER (if specified) by defining +# b4_percent_code_bison_qualifiers(QUALIFIER). +# +# For example, to emit any unqualified %code blocks followed by any %code +# blocks for the qualifier foo: +# +# b4_percent_code_get +# b4_percent_code_get([[foo]]) +m4_define([b4_percent_code_get], +[m4_pushdef([b4_macro_name], [[b4_percent_code(]$1[)]])dnl +m4_ifval([$1], [m4_define([b4_percent_code_bison_qualifiers(]$1[)])])dnl +m4_ifdef(b4_macro_name, +[b4_comment(m4_if([$#], [0], [[[Unqualified %code blocks.]]], + [[["%code ]$1[" blocks.]]])) +b4_user_code([m4_indir(b4_macro_name)])])dnl +m4_popdef([b4_macro_name])]) + +# b4_percent_code_ifdef(QUALIFIER, IF-TRUE, [IF-FALSE]) +# ----------------------------------------------------- +# If any %code blocks for QUALIFIER (or unqualified %code blocks if +# QUALIFIER is empty) are defined, expand IF-TRUE, else expand IF-FALSE. +# Also, record Bison's usage of QUALIFIER (if specified) by defining +# b4_percent_code_bison_qualifiers(QUALIFIER). +m4_define([b4_percent_code_ifdef], +[m4_ifdef([b4_percent_code(]$1[)], + [m4_ifval([$1], [m4_define([b4_percent_code_bison_qualifiers(]$1[)])])$2], + [$3])]) + + +## ------------------ ## +## Common variables. ## +## ------------------ ## + + +# b4_parse_assert_if([IF-ASSERTIONS-ARE-USED], [IF-NOT]) +# b4_parse_trace_if([IF-DEBUG-TRACES-ARE-ENABLED], [IF-NOT]) +# b4_token_ctor_if([IF-YYLEX-RETURNS-A-TOKEN], [IF-NOT]) +# ---------------------------------------------------------- +b4_percent_define_if_define([api.token.raw]) +b4_percent_define_if_define([token_ctor], [api.token.constructor]) +b4_percent_define_if_define([locations]) # Whether locations are tracked. +b4_percent_define_if_define([parse.assert]) +b4_percent_define_if_define([parse.trace]) +b4_percent_define_if_define([posix]) + + +# b4_bison_locations_if([IF-TRUE]) +# -------------------------------- +# Expand IF-TRUE if using locations, and using the default location +# type. +m4_define([b4_bison_locations_if], +[b4_locations_if([b4_percent_define_ifdef([[api.location.type]], [], [$1])])]) + + + +# %define parse.error "(custom|detailed|simple|verbose)" +# ------------------------------------------------------ +b4_percent_define_default([[parse.error]], [[simple]]) +b4_percent_define_check_values([[[[parse.error]], + [[custom]], [[detailed]], [[simple]], [[verbose]]]]) + +# b4_parse_error_case(CASE1, THEN1, CASE2, THEN2, ..., ELSE) +# ---------------------------------------------------------- +m4_define([b4_parse_error_case], +[m4_case(b4_percent_define_get([[parse.error]]), $@)]) + +# b4_parse_error_bmatch(PATTERN1, THEN1, PATTERN2, THEN2, ..., ELSE) +# ------------------------------------------------------------------ +m4_define([b4_parse_error_bmatch], +[m4_bmatch(b4_percent_define_get([[parse.error]]), $@)]) + + + +# b4_union_if([IF-UNION-ARE-USED], [IF-NOT]) +# b4_variant_if([IF-VARIANT-ARE-USED], [IF-NOT]) +# ---------------------------------------------- +# Depend on whether api.value.type is union, or variant. +m4_define([b4_union_flag], [[0]]) +m4_define([b4_variant_flag], [[0]]) +b4_percent_define_ifdef([[api.value.type]], + [m4_case(b4_percent_define_get_kind([[api.value.type]]), [keyword], + [m4_case(b4_percent_define_get([[api.value.type]]), + [union], [m4_define([b4_union_flag], [[1]])], + [variant], [m4_define([b4_variant_flag], [[1]])])])]) +b4_define_flag_if([union]) +b4_define_flag_if([variant]) + + +## ----------------------------------------------------------- ## +## After processing the skeletons, check that all the user's ## +## %define variables and %code qualifiers were used by Bison. ## +## ----------------------------------------------------------- ## + +m4_define([b4_check_user_names_wrap], +[m4_ifdef([b4_percent_]$1[_user_]$2[s], + [b4_check_user_names([[%]$1 $2], + [b4_percent_]$1[_user_]$2[s], + [[b4_percent_]$1[_bison_]$2[s]])])]) + +m4_wrap_lifo([ +b4_check_user_names_wrap([[define]], [[variable]]) +b4_check_user_names_wrap([[code]], [[qualifier]]) +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# m4_define_default([b4_lex_param], []) dnl breaks other skeletons +m4_define_default([b4_epilogue], []) +m4_define_default([b4_parse_param], []) + +# The initial column and line. +m4_define_default([b4_location_initial_column], [1]) +m4_define_default([b4_location_initial_line], [1]) + + +## --------------- ## +## Sanity checks. ## +## --------------- ## + +# api.location.type={...} (C, C++ and Java). +b4_percent_define_check_kind([api.location.type], [code], [deprecated]) + +# api.position.type={...} (Java). +b4_percent_define_check_kind([api.position.type], [code], [deprecated]) + +# api.prefix >< %name-prefix. +b4_percent_define_check_kind([api.prefix], [code], [deprecated]) +b4_percent_define_ifdef([api.prefix], +[m4_ifdef([b4_prefix], +[b4_complain_at(b4_percent_define_get_loc([api.prefix]), + [['%s' and '%s' cannot be used together]], + [%name-prefix], + [%define api.prefix])])]) + +# api.token.prefix={...} +# Make it a warning for those who used betas of Bison 3.0. +b4_percent_define_check_kind([api.token.prefix], [code], [deprecated]) + +# api.value.type >< %union. +b4_percent_define_ifdef([api.value.type], +[m4_ifdef([b4_union_members], +[b4_complain_at(b4_percent_define_get_loc([api.value.type]), + [['%s' and '%s' cannot be used together]], + [%union], + [%define api.value.type])])]) + +# api.value.type=union >< %yacc. +b4_percent_define_ifdef([api.value.type], +[m4_if(b4_percent_define_get([api.value.type]), [union], +[b4_yacc_if(dnl +[b4_complain_at(b4_percent_define_get_loc([api.value.type]), + [['%s' and '%s' cannot be used together]], + [%yacc], + [%define api.value.type "union"])])])]) + +# api.value.union.name. +b4_percent_define_check_kind([api.value.union.name], [keyword]) + +# parse.error (custom|detailed) >< token-table. +b4_token_table_if( +[b4_parse_error_bmatch([custom\|detailed], +[b4_complain_at(b4_percent_define_get_loc([parse.error]), + [['%s' and '%s' cannot be used together]], + [%token-table], + [%define parse.error (custom|detailed)])])]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c++-skel.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c++-skel.m4 new file mode 100644 index 0000000..f22002b --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c++-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# C++ skeleton dispatching for Bison. + +# Copyright (C) 2006-2007, 2009-2015, 2018-2021 Free Software +# Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.cc]])]) +b4_nondeterministic_if([m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.cc]])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.cc]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c++.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c++.m4 new file mode 100644 index 0000000..2ae8423 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c++.m4 @@ -0,0 +1,778 @@ + -*- Autoconf -*- + +# C++ skeleton for Bison + +# Copyright (C) 2002-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Sanity checks, before defaults installed by c.m4. +b4_percent_define_ifdef([[api.value.union.name]], + [b4_complain_at(b4_percent_define_get_loc([[api.value.union.name]]), + [named %union is invalid in C++])]) + +b4_percent_define_default([[api.symbol.prefix]], [[S_]]) + +m4_include(b4_skeletonsdir/[c.m4]) + +b4_percent_define_check_kind([api.namespace], [code], [deprecated]) +b4_percent_define_check_kind([api.parser.class], [code], [deprecated]) + + +## ----- ## +## C++. ## +## ----- ## + +# b4_comment(TEXT, [PREFIX]) +# -------------------------- +# Put TEXT in comment. Prefix all the output lines with PREFIX. +m4_define([b4_comment], +[_b4_comment([$1], [$2// ], [$2// ])]) + + +# b4_inline(hh|cc) +# ---------------- +# Expand to `inline\n ` if $1 is hh. +m4_define([b4_inline], +[m4_case([$1], + [cc], [], + [hh], [[inline + ]], + [m4_fatal([$0: invalid argument: $1])])]) + + +# b4_cxx_portability +# ------------------ +m4_define([b4_cxx_portability], +[#if defined __cplusplus +# define YY_CPLUSPLUS __cplusplus +#else +# define YY_CPLUSPLUS 199711L +#endif + +// Support move semantics when possible. +#if 201103L <= YY_CPLUSPLUS +# define YY_MOVE std::move +# define YY_MOVE_OR_COPY move +# define YY_MOVE_REF(Type) Type&& +# define YY_RVREF(Type) Type&& +# define YY_COPY(Type) Type +#else +# define YY_MOVE +# define YY_MOVE_OR_COPY copy +# define YY_MOVE_REF(Type) Type& +# define YY_RVREF(Type) const Type& +# define YY_COPY(Type) const Type& +#endif + +// Support noexcept when possible. +#if 201103L <= YY_CPLUSPLUS +# define YY_NOEXCEPT noexcept +# define YY_NOTHROW +#else +# define YY_NOEXCEPT +# define YY_NOTHROW throw () +#endif + +// Support constexpr when possible. +#if 201703 <= YY_CPLUSPLUS +# define YY_CONSTEXPR constexpr +#else +# define YY_CONSTEXPR +#endif[]dnl +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +b4_percent_define_default([[api.parser.class]], [[parser]]) + +# Don't do that so that we remember whether we're using a user +# request, or the default value. +# +# b4_percent_define_default([[api.location.type]], [[location]]) + +b4_percent_define_default([[api.filename.type]], [[const std::string]]) +# Make it a warning for those who used betas of Bison 3.0. +b4_percent_define_default([[api.namespace]], m4_defn([b4_prefix])) + +b4_percent_define_default([[define_location_comparison]], + [m4_if(b4_percent_define_get([[filename_type]]), + [std::string], [[true]], [[false]])]) + + + +## ----------- ## +## Namespace. ## +## ----------- ## + +m4_define([b4_namespace_ref], [b4_percent_define_get([[api.namespace]])]) + + +# Don't permit an empty b4_namespace_ref. Any '::parser::foo' appended to it +# would compile as an absolute reference with 'parser' in the global namespace. +# b4_namespace_open would open an anonymous namespace and thus establish +# internal linkage. This would compile. However, it's cryptic, and internal +# linkage for the parser would be specified in all translation units that +# include the header, which is always generated. If we ever need to permit +# internal linkage somehow, surely we can find a cleaner approach. +m4_if(m4_bregexp(b4_namespace_ref, [^[ ]*$]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference is empty]])]) + +# Instead of assuming the C++ compiler will do it, Bison should reject any +# invalid b4_namespace_ref that would be converted to a valid +# b4_namespace_open. The problem is that Bison doesn't always output +# b4_namespace_ref to uncommented code but should reserve the ability to do so +# in future releases without risking breaking any existing user grammars. +# Specifically, don't allow empty names as b4_namespace_open would just convert +# those into anonymous namespaces, and that might tempt some users. +m4_if(m4_bregexp(b4_namespace_ref, [::[ ]*::]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference has consecutive "::"]])]) +m4_if(m4_bregexp(b4_namespace_ref, [::[ ]*$]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference has a trailing "::"]])]) + +m4_define([b4_namespace_open], +[b4_user_code([b4_percent_define_get_syncline([[api.namespace]])dnl +[namespace ]m4_bpatsubst(m4_dquote(m4_bpatsubst(m4_dquote(b4_namespace_ref), + [^\(.\)[ ]*::], [\1])), + [::], [ { namespace ])[ {]])]) + +m4_define([b4_namespace_close], +[b4_user_code([b4_percent_define_get_syncline([[api.namespace]])dnl +m4_bpatsubst(m4_dquote(m4_bpatsubst(m4_dquote(b4_namespace_ref[ ]), + [^\(.\)[ ]*\(::\)?\([^][:]\|:[^:]\)*], + [\1])), + [::\([^][:]\|:[^:]\)*], [} ])[} // ]b4_namespace_ref])]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + + +# b4_token_enums +# -------------- +# Output the definition of the token kinds. +m4_define([b4_token_enums], +[[enum token_kind_type + { + ]b4_symbol([-2], [id])[ = -2, +]b4_symbol_foreach([b4_token_enum])dnl +[ };]dnl +]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[enum symbol_kind_type + { + YYNTOKENS = ]b4_tokens_number[, ///< Number of tokens. + ]b4_symbol(empty, kind_base)[ = -2, +]b4_symbol_foreach([ b4_symbol_enum])dnl +[ };]]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + + +# b4_value_type_declare +# --------------------- +# Declare value_type. +m4_define([b4_value_type_declare], +[b4_value_type_setup[]dnl +[ /// Symbol semantic values. +]m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), +[code], +[[ typedef ]b4_percent_define_get([[api.value.type]])[ value_type;]], +[m4_bmatch(b4_percent_define_get([[api.value.type]]), +[union\|union-directive], +[[ union value_type + { +]b4_user_union_members[ + };]])])dnl +]) + + +# b4_public_types_declare +# ----------------------- +# Define the public types: token, semantic value, location, and so forth. +# Depending on %define token_lex, may be output in the header or source file. +m4_define([b4_public_types_declare], +[b4_glr2_cc_if( +[b4_value_type_declare], +[[#ifdef ]b4_api_PREFIX[STYPE +# ifdef __GNUC__ +# pragma GCC message "bison: do not #define ]b4_api_PREFIX[STYPE in C++, use %define api.value.type" +# endif + typedef ]b4_api_PREFIX[STYPE value_type; +#else +]b4_value_type_declare[ +#endif + /// Backward compatibility (Bison 3.8). + typedef value_type semantic_type; +]])[]b4_locations_if([ + /// Symbol locations. + typedef b4_percent_define_get([[api.location.type]], + [[location]]) location_type;])[ + + /// Syntax errors thrown from user actions. + struct syntax_error : std::runtime_error + { + syntax_error (]b4_locations_if([const location_type& l, ])[const std::string& m) + : std::runtime_error (m)]b4_locations_if([ + , location (l)])[ + {} + + syntax_error (const syntax_error& s) + : std::runtime_error (s.what ())]b4_locations_if([ + , location (s.location)])[ + {} + + ~syntax_error () YY_NOEXCEPT YY_NOTHROW;]b4_locations_if([ + + location_type location;])[ + }; + + /// Token kinds. + struct token + { + ]b4_token_enums[]b4_glr2_cc_if([], [[ + /// Backward compatibility alias (Bison 3.6). + typedef token_kind_type yytokentype;]])[ + }; + + /// Token kind, as returned by yylex. + typedef token::token_kind_type token_kind_type;]b4_glr2_cc_if([], [[ + + /// Backward compatibility alias (Bison 3.6). + typedef token_kind_type token_type;]])[ + + /// Symbol kinds. + struct symbol_kind + { + ]b4_declare_symbol_enum[ + }; + + /// (Internal) symbol kind. + typedef symbol_kind::symbol_kind_type symbol_kind_type; + + /// The number of tokens. + static const symbol_kind_type YYNTOKENS = symbol_kind::YYNTOKENS; +]]) + + +# b4_symbol_type_define +# --------------------- +# Define symbol_type, the external type for symbols used for symbol +# constructors. +m4_define([b4_symbol_type_define], +[[ /// A complete symbol. + /// + /// Expects its Base type to provide access to the symbol kind + /// via kind (). + /// + /// Provide access to semantic value]b4_locations_if([ and location])[. + template + struct basic_symbol : Base + { + /// Alias to Base. + typedef Base super_type; + + /// Default constructor. + basic_symbol () YY_NOEXCEPT + : value ()]b4_locations_if([ + , location ()])[ + {} + +#if 201103L <= YY_CPLUSPLUS + /// Move constructor. + basic_symbol (basic_symbol&& that) + : Base (std::move (that)) + , value (]b4_variant_if([], [std::move (that.value)]))b4_locations_if([ + , location (std::move (that.location))])[ + {]b4_variant_if([ + b4_symbol_variant([this->kind ()], [value], [move], + [std::move (that.value)]) + ])[} +#endif + + /// Copy constructor. + basic_symbol (const basic_symbol& that);]b4_variant_if([[ + + /// Constructors for typed symbols. +]b4_type_foreach([b4_basic_symbol_constructor_define], [ +])], [[ + /// Constructor for valueless symbols. + basic_symbol (typename Base::kind_type t]b4_locations_if([, + YY_MOVE_REF (location_type) l])[); + + /// Constructor for symbols with semantic value. + basic_symbol (typename Base::kind_type t, + YY_RVREF (value_type) v]b4_locations_if([, + YY_RVREF (location_type) l])[); +]])[ + /// Destroy the symbol. + ~basic_symbol () + { + clear (); + } + +]b4_glr2_cc_if([[ + /// Copy assignment. + basic_symbol& operator= (const basic_symbol& that) + { + Base::operator= (that);]b4_variant_if([[ + ]b4_symbol_variant([this->kind ()], [value], [copy], + [that.value])], [[ + value = that.value]])[;]b4_locations_if([[ + location = that.location;]])[ + return *this; + } + + /// Move assignment. + basic_symbol& operator= (basic_symbol&& that) + { + Base::operator= (std::move (that));]b4_variant_if([[ + ]b4_symbol_variant([this->kind ()], [value], [move], + [std::move (that.value)])], [[ + value = std::move (that.value)]])[;]b4_locations_if([[ + location = std::move (that.location);]])[ + return *this; + } +]])[ + + /// Destroy contents, and record that is empty. + void clear () YY_NOEXCEPT + {]b4_variant_if([[ + // User destructor. + symbol_kind_type yykind = this->kind (); + basic_symbol& yysym = *this; + (void) yysym; + switch (yykind) + { +]b4_symbol_foreach([b4_symbol_destructor])dnl +[ default: + break; + } + + // Value type destructor. +]b4_symbol_variant([[yykind]], [[value]], [[template destroy]])])[ + Base::clear (); + } + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of this symbol. + const char *name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + }]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of this symbol. + const char *name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of this symbol. + std::string name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + }]])[]b4_glr2_cc_if([], [[ + + /// Backward compatibility (Bison 3.6). + symbol_kind_type type_get () const YY_NOEXCEPT;]])[ + + /// Whether empty. + bool empty () const YY_NOEXCEPT; + + /// Destructive move, \a s is emptied into this. + void move (basic_symbol& s); + + /// The semantic value. + value_type value;]b4_locations_if([ + + /// The location. + location_type location;])[ + + private: +#if YY_CPLUSPLUS < 201103L + /// Assignment operator. + basic_symbol& operator= (const basic_symbol& that); +#endif + }; + + /// Type access provider for token (enum) based symbols. + struct by_kind + { + /// The symbol kind as needed by the constructor. + typedef token_kind_type kind_type; + + /// Default constructor. + by_kind () YY_NOEXCEPT; + +#if 201103L <= YY_CPLUSPLUS + /// Move constructor. + by_kind (by_kind&& that) YY_NOEXCEPT; +#endif + + /// Copy constructor. + by_kind (const by_kind& that) YY_NOEXCEPT; + + /// Constructor from (external) token numbers. + by_kind (kind_type t) YY_NOEXCEPT; + +]b4_glr2_cc_if([[ + /// Copy assignment. + by_kind& operator= (const by_kind& that); + + /// Move assignment. + by_kind& operator= (by_kind&& that); +]])[ + + /// Record that this symbol is empty. + void clear () YY_NOEXCEPT; + + /// Steal the symbol kind from \a that. + void move (by_kind& that); + + /// The (internal) type number (corresponding to \a type). + /// \a empty when empty. + symbol_kind_type kind () const YY_NOEXCEPT;]b4_glr2_cc_if([], [[ + + /// Backward compatibility (Bison 3.6). + symbol_kind_type type_get () const YY_NOEXCEPT;]])[ + + /// The symbol kind. + /// \a ]b4_symbol_prefix[YYEMPTY when empty. + symbol_kind_type kind_; + };]b4_glr2_cc_if([], [[ + + /// Backward compatibility for a private implementation detail (Bison 3.6). + typedef by_kind by_type;]])[ + + /// "External" symbols: returned by the scanner. + struct symbol_type : basic_symbol + {]b4_variant_if([[ + /// Superclass. + typedef basic_symbol super_type; + + /// Empty symbol. + symbol_type () YY_NOEXCEPT {} + + /// Constructor for valueless symbols, and symbols from each type. +]b4_type_foreach([_b4_symbol_constructor_define])dnl + ])[}; +]]) + + +# b4_public_types_define(hh|cc) +# ----------------------------- +# Provide the implementation needed by the public types. +m4_define([b4_public_types_define], +[[ // basic_symbol. + template + ]b4_parser_class[::basic_symbol::basic_symbol (const basic_symbol& that) + : Base (that) + , value (]b4_variant_if([], [that.value]))b4_locations_if([ + , location (that.location)])[ + {]b4_variant_if([ + b4_symbol_variant([this->kind ()], [value], [copy], + [YY_MOVE (that.value)]) + ])[} + +]b4_variant_if([], [[ + /// Constructor for valueless symbols. + template + ]b4_parser_class[::basic_symbol::basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_locations_if([YY_MOVE_REF (location_type) l]))[) + : Base (t) + , value ()]b4_locations_if([ + , location (l)])[ + {} + + template + ]b4_parser_class[::basic_symbol::basic_symbol (]b4_join( + [typename Base::kind_type t], + [YY_RVREF (value_type) v], + b4_locations_if([YY_RVREF (location_type) l]))[) + : Base (t) + , value (]b4_variant_if([], [YY_MOVE (v)])[)]b4_locations_if([ + , location (YY_MOVE (l))])[ + {]b4_variant_if([[ + (void) v; + ]b4_symbol_variant([this->kind ()], [value], [YY_MOVE_OR_COPY], [YY_MOVE (v)])])[}]])[ + +]b4_glr2_cc_if([], [[ + template + ]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::basic_symbol::type_get () const YY_NOEXCEPT + { + return this->kind (); + } +]])[ + + template + bool + ]b4_parser_class[::basic_symbol::empty () const YY_NOEXCEPT + { + return this->kind () == ]b4_symbol(empty, kind)[; + } + + template + void + ]b4_parser_class[::basic_symbol::move (basic_symbol& s) + { + super_type::move (s); + ]b4_variant_if([b4_symbol_variant([this->kind ()], [value], [move], + [YY_MOVE (s.value)])], + [value = YY_MOVE (s.value);])[]b4_locations_if([ + location = YY_MOVE (s.location);])[ + } + + // by_kind. + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind () YY_NOEXCEPT + : kind_ (]b4_symbol(empty, kind)[) + {} + +#if 201103L <= YY_CPLUSPLUS + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (by_kind&& that) YY_NOEXCEPT + : kind_ (that.kind_) + { + that.clear (); + } +#endif + + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (const by_kind& that) YY_NOEXCEPT + : kind_ (that.kind_) + {} + + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (token_kind_type t) YY_NOEXCEPT + : kind_ (yytranslate_ (t)) + {} + +]b4_glr2_cc_if([[ + ]b4_inline([$1])]b4_parser_class[::by_kind& + b4_parser_class[::by_kind::by_kind::operator= (const by_kind& that) + { + kind_ = that.kind_; + return *this; + } + + ]b4_inline([$1])]b4_parser_class[::by_kind& + b4_parser_class[::by_kind::by_kind::operator= (by_kind&& that) + { + kind_ = that.kind_; + that.clear (); + return *this; + } +]])[ + + ]b4_inline([$1])[void + ]b4_parser_class[::by_kind::clear () YY_NOEXCEPT + { + kind_ = ]b4_symbol(empty, kind)[; + } + + ]b4_inline([$1])[void + ]b4_parser_class[::by_kind::move (by_kind& that) + { + kind_ = that.kind_; + that.clear (); + } + + ]b4_inline([$1])[]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_kind::kind () const YY_NOEXCEPT + { + return kind_; + } + +]b4_glr2_cc_if([], [[ + ]b4_inline([$1])[]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_kind::type_get () const YY_NOEXCEPT + { + return this->kind (); + } +]])[ +]]) + + +# b4_token_constructor_define +# ---------------------------- +# Define make_FOO for all the token kinds. +# Use at class-level. Redefined in variant.hh. +m4_define([b4_token_constructor_define], []) + + +# b4_yytranslate_define(cc|hh) +# ---------------------------- +# Define yytranslate_. Sometimes used in the header file ($1=hh), +# sometimes in the cc file. +m4_define([b4_yytranslate_define], +[ b4_inline([$1])b4_parser_class[::symbol_kind_type + ]b4_parser_class[::yytranslate_ (int t) YY_NOEXCEPT + { +]b4_api_token_raw_if( +[[ return static_cast (t);]], +[[ // YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to + // TOKEN-NUM as returned by yylex. + static + const ]b4_int_type_for([b4_translate])[ + translate_table[] = + { + ]b4_translate[ + }; + // Last valid token kind. + const int code_max = ]b4_code_max[; + + if (t <= 0) + return symbol_kind::]b4_symbol_prefix[YYEOF; + else if (t <= code_max) + return static_cast (translate_table[t]); + else + return symbol_kind::]b4_symbol_prefix[YYUNDEF;]])[ + } +]]) + + +# b4_lhs_value([TYPE]) +# -------------------- +m4_define([b4_lhs_value], +[b4_symbol_value([yyval], [$1])]) + + +# b4_rhs_value(RULE-LENGTH, POS, [TYPE]) +# -------------------------------------- +# FIXME: Dead code. +m4_define([b4_rhs_value], +[b4_symbol_value([yysemantic_stack_@{($1) - ($2)@}], [$3])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(yylocation_stack_@{($1) - ($2)@})]) + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +# Change the parameter names from "foo" into "foo_yyarg", so that +# there is no collision bw the user chosen attribute name, and the +# argument name in the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [m4_map_sep([b4_parse_param_decl_1], [, ], [b4_parse_param])])]) + +m4_define([b4_parse_param_decl_1], +[$1_yyarg]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [ + b4_cc_constructor_calls(b4_parse_param)])]) +m4_define([b4_cc_constructor_calls], + [m4_map_sep([b4_cc_constructor_call], [, + ], [$@])]) +m4_define([b4_cc_constructor_call], + [$2 ($2_yyarg)]) + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + // User arguments. +b4_cc_var_decls(b4_parse_param)])]) +m4_define([b4_cc_var_decls], + [m4_map_sep([b4_cc_var_decl], [ +], [$@])]) +m4_define([b4_cc_var_decl], + [ $1;]) + + +## ---------## +## Values. ## +## ---------## + +# b4_yylloc_default_define +# ------------------------ +# Define YYLLOC_DEFAULT. +m4_define([b4_yylloc_default_define], +[[/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +# ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).begin = YYRHSLOC (Rhs, 1).begin; \ + (Current).end = YYRHSLOC (Rhs, N).end; \ + } \ + else \ + { \ + (Current).begin = (Current).end = YYRHSLOC (Rhs, 0).end; \ + } \ + while (false) +# endif +]]) + +## -------- ## +## Checks. ## +## -------- ## + +b4_token_ctor_if([b4_variant_if([], + [b4_fatal_at(b4_percent_define_get_loc(api.token.constructor), + [cannot use '%s' without '%s'], + [%define api.token.constructor], + [%define api.value.type variant]))])]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c-like.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c-like.m4 new file mode 100644 index 0000000..a9bbc2e --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c-like.m4 @@ -0,0 +1,72 @@ + -*- Autoconf -*- + +# Common code for C-like languages (C, C++, Java, etc.) + +# Copyright (C) 2012-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# _b4_comment(TEXT, OPEN, CONTINUE, END) +# -------------------------------------- +# Put TEXT in comment. Avoid trailing spaces: don't indent empty lines. +# Avoid adding indentation to the first line, as the indentation comes +# from OPEN. That's why we don't patsubst([$1], [^\(.\)], [ \1]). +# Turn "*/" in TEXT into "* /" so that we don't unexpectedly close +# the comments before its end. +# +# Prefix all the output lines with PREFIX. +m4_define([_b4_comment], +[$2[]b4_gsub(m4_expand([$1]), + [[*]/], [*\\/], + [/[*]], [/\\*], + [ +\(.\)], [ +$3\1])$4]) + + +# b4_comment(TEXT, [PREFIX]) +# -------------------------- +# Put TEXT in comment. Prefix all the output lines with PREFIX. +m4_define([b4_comment], +[_b4_comment([$1], [$2/* ], [$2 ], [ */])]) + + + + +# _b4_dollar_dollar(VALUE, SYMBOL-NUM, FIELD, DEFAULT-FIELD) +# ---------------------------------------------------------- +# If FIELD (or DEFAULT-FIELD) is non-null, return "VALUE.FIELD", +# otherwise just VALUE. Be sure to pass "(VALUE)" if VALUE is a +# pointer. +m4_define([_b4_dollar_dollar], +[b4_symbol_value([$1], + [$2], + m4_if([$3], [[]], + [[$4]], [[$3]]))]) + +# b4_dollar_pushdef(VALUE-POINTER, SYMBOL-NUM, [TYPE_TAG], LOCATION) +# b4_dollar_popdef +# ------------------------------------------------------------------ +# Define b4_dollar_dollar for VALUE-POINTER and DEFAULT-FIELD, +# and b4_at_dollar for LOCATION. +m4_define([b4_dollar_pushdef], +[m4_pushdef([b4_dollar_dollar], + [_b4_dollar_dollar([$1], [$2], m4_dquote($][1), [$3])])dnl +m4_pushdef([b4_at_dollar], [$4])dnl +]) +m4_define([b4_dollar_popdef], +[m4_popdef([b4_at_dollar])dnl +m4_popdef([b4_dollar_dollar])dnl +]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c-skel.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c-skel.m4 new file mode 100644 index 0000000..ac6ddd6 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# C skeleton dispatching for Bison. + +# Copyright (C) 2006-2007, 2009-2015, 2018-2021 Free Software +# Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.c]])]) +b4_nondeterministic_if([m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.c]])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[yacc.c]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c.m4 new file mode 100644 index 0000000..2425b07 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/c.m4 @@ -0,0 +1,1125 @@ + -*- Autoconf -*- + +# C M4 Macros for Bison. + +# Copyright (C) 2002, 2004-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c-like.m4]) + +# b4_tocpp(STRING) +# ---------------- +# Convert STRING into a valid C macro name. +m4_define([b4_tocpp], +[m4_toupper(m4_bpatsubst(m4_quote($1), [[^a-zA-Z0-9]+], [_]))]) + + +# b4_cpp_guard(FILE) +# ------------------ +# A valid C macro name to use as a CPP header guard for FILE. +m4_define([b4_cpp_guard], +[[YY_]b4_tocpp(m4_defn([b4_prefix])/[$1])[_INCLUDED]]) + + +# b4_cpp_guard_open(FILE) +# b4_cpp_guard_close(FILE) +# ------------------------ +# If FILE does not expand to nothing, open/close CPP inclusion guards for FILE. +m4_define([b4_cpp_guard_open], +[m4_ifval(m4_quote($1), +[#ifndef b4_cpp_guard([$1]) +# define b4_cpp_guard([$1])])]) + +m4_define([b4_cpp_guard_close], +[m4_ifval(m4_quote($1), +[#endif b4_comment([!b4_cpp_guard([$1])])])]) + + +## ---------------- ## +## Identification. ## +## ---------------- ## + +# b4_identification +# ----------------- +# Depends on individual skeletons to define b4_pure_flag, b4_push_flag, or +# b4_pull_flag if they use the values of the %define variables api.pure or +# api.push-pull. +m4_define([b4_identification], +[[/* Identify Bison output, and Bison version. */ +#define YYBISON ]b4_version[ + +/* Bison version string. */ +#define YYBISON_VERSION "]b4_version_string[" + +/* Skeleton name. */ +#define YYSKELETON_NAME ]b4_skeleton[]m4_ifdef([b4_pure_flag], [[ + +/* Pure parsers. */ +#define YYPURE ]b4_pure_flag])[]m4_ifdef([b4_push_flag], [[ + +/* Push parsers. */ +#define YYPUSH ]b4_push_flag])[]m4_ifdef([b4_pull_flag], [[ + +/* Pull parsers. */ +#define YYPULL ]b4_pull_flag])[ +]]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# b4_api_prefix, b4_api_PREFIX +# ---------------------------- +# Corresponds to %define api.prefix +b4_percent_define_default([[api.prefix]], [[yy]]) +m4_define([b4_api_prefix], +[b4_percent_define_get([[api.prefix]])]) +m4_define([b4_api_PREFIX], +[m4_toupper(b4_api_prefix)]) + + +# b4_prefix +# --------- +# If the %name-prefix is not given, it is api.prefix. +m4_define_default([b4_prefix], [b4_api_prefix]) + +# If the %union is not named, its name is YYSTYPE. +b4_percent_define_default([[api.value.union.name]], + [b4_api_PREFIX[][STYPE]]) + +b4_percent_define_default([[api.symbol.prefix]], [[YYSYMBOL_]]) + +## ------------------------ ## +## Pure/impure interfaces. ## +## ------------------------ ## + +# b4_yylex_formals +# ---------------- +# All the yylex formal arguments. +# b4_lex_param arrives quoted twice, but we want to keep only one level. +m4_define([b4_yylex_formals], +[b4_pure_if([[[b4_api_PREFIX[STYPE *yylvalp]], [[&yylval]]][]dnl +b4_locations_if([, [b4_api_PREFIX[LTYPE *yyllocp], [&yylloc]]])])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param)]) + + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_function_call([yylex], [int], b4_yylex_formals)]) + + +# b4_user_args +# ------------ +m4_define([b4_user_args], +[m4_ifset([b4_parse_param], [, b4_user_args_no_comma])]) + +# b4_user_args_no_comma +# --------------------- +m4_define([b4_user_args_no_comma], +[m4_ifset([b4_parse_param], [b4_args(b4_parse_param)])]) + + +# b4_user_formals +# --------------- +# The possible parse-params formal arguments preceded by a comma. +m4_define([b4_user_formals], +[m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])]) + + +# b4_parse_param +# -------------- +# If defined, b4_parse_param arrives double quoted, but below we prefer +# it to be single quoted. +m4_define([b4_parse_param], +b4_parse_param) + + +# b4_parse_param_for(DECL, FORMAL, BODY) +# --------------------------------------- +# Iterate over the user parameters, binding the declaration to DECL, +# the formal name to FORMAL, and evaluating the BODY. +m4_define([b4_parse_param_for], +[m4_foreach([$1_$2], m4_defn([b4_parse_param]), +[m4_pushdef([$1], m4_unquote(m4_car($1_$2)))dnl +m4_pushdef([$2], m4_shift($1_$2))dnl +$3[]dnl +m4_popdef([$2])dnl +m4_popdef([$1])dnl +])]) + + +# b4_use(EXPR) +# ------------ +# Pacify the compiler about some maybe unused value. +m4_define([b4_use], +[YY_USE ($1)]) + +# b4_parse_param_use([VAL], [LOC]) +# -------------------------------- +# 'YY_USE' VAL, LOC if locations are enabled, and all the parse-params. +m4_define([b4_parse_param_use], +[m4_ifvaln([$1], [ b4_use([$1]);])dnl +b4_locations_if([m4_ifvaln([$2], [ b4_use([$2]);])])dnl +b4_parse_param_for([Decl], [Formal], [ b4_use(Formal); +])dnl +]) + + +## ------------ ## +## Data Types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return a narrow int type able to handle integers ranging from MIN +# to MAX (included) in portable C code. Assume MIN and MAX fall in +# 'int' range. +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-127], [127]), [1], [signed char], + b4_ints_in($@, [0], [255]), [1], [unsigned char], + + b4_ints_in($@, [-32767], [32767]), [1], [short], + b4_ints_in($@, [0], [65535]), [1], [unsigned short], + + [int])]) + +# b4_c99_int_type(MIN, MAX) +# ------------------------- +# Like b4_int_type, but for C99. +# b4_c99_int_type_define replaces b4_int_type with this. +m4_define([b4_c99_int_type], +[m4_if(b4_ints_in($@, [-127], [127]), [1], [yytype_int8], + b4_ints_in($@, [0], [255]), [1], [yytype_uint8], + + b4_ints_in($@, [-32767], [32767]), [1], [yytype_int16], + b4_ints_in($@, [0], [65535]), [1], [yytype_uint16], + + [int])]) + +# b4_c99_int_type_define +# ---------------------- +# Define private types suitable for holding small integers in C99 or later. +m4_define([b4_c99_int_type_define], +[m4_copy_force([b4_c99_int_type], [b4_int_type])dnl +[#ifdef short +# undef short +#endif + +/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure + and (if available) are included + so that the code can choose integer types of a good width. */ + +#ifndef __PTRDIFF_MAX__ +# include /* INFRINGES ON USER NAME SPACE */ +# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_STDINT_H +# endif +#endif + +/* Narrow types that promote to a signed type and that can represent a + signed or unsigned integer of at least N bits. In tables they can + save space and decrease cache pressure. Promoting to a signed type + helps avoid bugs in integer arithmetic. */ + +#ifdef __INT_LEAST8_MAX__ +typedef __INT_LEAST8_TYPE__ yytype_int8; +#elif defined YY_STDINT_H +typedef int_least8_t yytype_int8; +#else +typedef signed char yytype_int8; +#endif + +#ifdef __INT_LEAST16_MAX__ +typedef __INT_LEAST16_TYPE__ yytype_int16; +#elif defined YY_STDINT_H +typedef int_least16_t yytype_int16; +#else +typedef short yytype_int16; +#endif + +/* Work around bug in HP-UX 11.23, which defines these macros + incorrectly for preprocessor constants. This workaround can likely + be removed in 2023, as HPE has promised support for HP-UX 11.23 + (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of + . */ +#ifdef __hpux +# undef UINT_LEAST8_MAX +# undef UINT_LEAST16_MAX +# define UINT_LEAST8_MAX 255 +# define UINT_LEAST16_MAX 65535 +#endif + +#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST8_TYPE__ yytype_uint8; +#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST8_MAX <= INT_MAX) +typedef uint_least8_t yytype_uint8; +#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX +typedef unsigned char yytype_uint8; +#else +typedef short yytype_uint8; +#endif + +#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST16_TYPE__ yytype_uint16; +#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST16_MAX <= INT_MAX) +typedef uint_least16_t yytype_uint16; +#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX +typedef unsigned short yytype_uint16; +#else +typedef int yytype_uint16; +#endif]]) + + +# b4_sizes_types_define +# --------------------- +# Define YYPTRDIFF_T/YYPTRDIFF_MAXIMUM, YYSIZE_T/YYSIZE_MAXIMUM, +# and YYSIZEOF. +m4_define([b4_sizes_types_define], +[[#ifndef YYPTRDIFF_T +# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__ +# define YYPTRDIFF_T __PTRDIFF_TYPE__ +# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__ +# elif defined PTRDIFF_MAX +# ifndef ptrdiff_t +# include /* INFRINGES ON USER NAME SPACE */ +# endif +# define YYPTRDIFF_T ptrdiff_t +# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX +# else +# define YYPTRDIFF_T long +# define YYPTRDIFF_MAXIMUM LONG_MAX +# endif +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# else +# define YYSIZE_T unsigned +# endif +#endif + +#define YYSIZE_MAXIMUM \ + YY_CAST (YYPTRDIFF_T, \ + (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \ + ? YYPTRDIFF_MAXIMUM \ + : YY_CAST (YYSIZE_T, -1))) + +#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X)) +]]) + + +# b4_int_type_for(NAME) +# --------------------- +# Return a narrow int type able to handle numbers ranging from +# 'NAME_min' to 'NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + + +# b4_table_value_equals(TABLE, VALUE, LITERAL, SYMBOL) +# ---------------------------------------------------- +# Without inducing a comparison warning from the compiler, check if the +# literal value LITERAL equals VALUE from table TABLE, which must have +# TABLE_min and TABLE_max defined. SYMBOL denotes +m4_define([b4_table_value_equals], +[m4_if(m4_eval($3 < m4_indir([b4_]$1[_min]) + || m4_indir([b4_]$1[_max]) < $3), [1], + [[0]], + [(($2) == $4)])]) + + +## ----------------- ## +## Compiler issues. ## +## ----------------- ## + +# b4_attribute_define([noreturn]) +# ------------------------------- +# Provide portable compiler "attributes". If "noreturn" is passed, define +# _Noreturn. +m4_define([b4_attribute_define], +[[#ifndef YY_ATTRIBUTE_PURE +# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define YY_ATTRIBUTE_PURE +# endif +#endif + +#ifndef YY_ATTRIBUTE_UNUSED +# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +# else +# define YY_ATTRIBUTE_UNUSED +# endif +#endif + +]m4_bmatch([$1], [\bnoreturn\b], [[/* The _Noreturn keyword of C11. */ +]dnl This is close to lib/_Noreturn.h, except that we do enable +dnl the use of [[noreturn]], because _Noreturn is used in places +dnl where [[noreturn]] works in C++. We need this in particular +dnl because of glr.cc which compiles code from glr.c in C++. +dnl And the C++ compiler chokes on _Noreturn. Also, we do not +dnl use C' _Noreturn in C++, to avoid -Wc11-extensions warnings. +[#ifndef _Noreturn +# if (defined __cplusplus \ + && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \ + || (defined _MSC_VER && 1900 <= _MSC_VER))) +# define _Noreturn [[noreturn]] +# elif ((!defined __cplusplus || defined __clang__) \ + && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ + || (!defined __STRICT_ANSI__ \ + && (4 < __GNUC__ + (7 <= __GNUC_MINOR__) \ + || (defined __apple_build_version__ \ + ? 6000000 <= __apple_build_version__ \ + : 3 < __clang_major__ + (5 <= __clang_minor__)))))) + /* _Noreturn works as-is. */ +# elif (2 < __GNUC__ + (8 <= __GNUC_MINOR__) || defined __clang__ \ + || 0x5110 <= __SUNPRO_C) +# define _Noreturn __attribute__ ((__noreturn__)) +# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0) +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif + +]])[/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YY_USE(E) ((void) (E)) +#else +# define YY_USE(E) /* empty */ +#endif + +/* Suppress an incorrect diagnostic about yylval being uninitialized. */ +#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# if __GNUC__ * 100 + __GNUC_MINOR__ < 407 +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") +# else +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \ + _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") +# endif +# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ + _Pragma ("GCC diagnostic pop") +#else +# define YY_INITIAL_VALUE(Value) Value +#endif +#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_END +#endif +#ifndef YY_INITIAL_VALUE +# define YY_INITIAL_VALUE(Value) /* Nothing. */ +#endif + +#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_USELESS_CAST_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"") +# define YY_IGNORE_USELESS_CAST_END \ + _Pragma ("GCC diagnostic pop") +#endif +#ifndef YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_END +#endif +]]) + + +# b4_cast_define +# -------------- +m4_define([b4_cast_define], +[# ifndef YY_CAST +# ifdef __cplusplus +# define YY_CAST(Type, Val) static_cast (Val) +# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast (Val) +# else +# define YY_CAST(Type, Val) ((Type) (Val)) +# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val)) +# endif +# endif[]dnl +]) + + +# b4_null_define +# -------------- +# Portability issues: define a YY_NULLPTR appropriate for the current +# language (C, C++98, or C++11). +# +# In C++ pre C++11 it is standard practice to use 0 (not NULL) for the +# null pointer. In C, prefer ((void*)0) to avoid having to include stdlib.h. +m4_define([b4_null_define], +[# ifndef YY_NULLPTR +# if defined __cplusplus +# if 201103L <= __cplusplus +# define YY_NULLPTR nullptr +# else +# define YY_NULLPTR 0 +# endif +# else +# define YY_NULLPTR ((void*)0) +# endif +# endif[]dnl +]) + + +# b4_null +# ------- +# Return a null pointer constant. +m4_define([b4_null], [YY_NULLPTR]) + + + +## ---------## +## Values. ## +## ---------## + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "yy" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [b4_comment([$3])])dnl +static const b4_int_type_for([$2]) yy$1[[]] = +{ + $2 +};dnl +]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + +# Because C enums are not scoped, because tokens are exposed in the +# header, and because these tokens are common to all the parsers, we +# need to make sure their names don't collide: use the api.prefix. +# YYEOF is special, since the user may give it a different name. +m4_define([b4_symbol(-2, id)], [b4_api_PREFIX[][EMPTY]]) +m4_define([b4_symbol(-2, tag)], [[No symbol.]]) + +m4_if(b4_symbol(eof, id), [YYEOF], + [m4_define([b4_symbol(0, id)], [b4_api_PREFIX[][EOF]])]) +m4_define([b4_symbol(1, id)], [b4_api_PREFIX[][error]]) +m4_define([b4_symbol(2, id)], [b4_api_PREFIX[][UNDEF]]) + + +# b4_token_define(TOKEN-NUM) +# -------------------------- +# Output the definition of this token as #define. +m4_define([b4_token_define], +[b4_token_format([#define %s %s], [$1])]) + +# b4_token_defines +# ---------------- +# Output the definition of the tokens. +m4_define([b4_token_defines], +[[/* Token kinds. */ +#define ]b4_symbol(empty, [id])[ -2 +]m4_join([ +], b4_symbol_map([b4_token_define])) +]) + + +# b4_token_enum(TOKEN-NUM) +# ------------------------ +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_visible_if([$1], + [m4_format([ %-30s %s], + m4_format([[%s = %s%s%s]], + b4_symbol([$1], [id]), + b4_symbol([$1], b4_api_token_raw_if([[number]], [[code]])), + m4_if([$1], b4_last_enum_token, [], [[,]])), + [b4_symbol_tag_comment([$1])])])]) + + +# b4_token_enums +# -------------- +# The definition of the token kinds. +m4_define([b4_token_enums], +[b4_any_token_visible_if([[/* Token kinds. */ +#ifndef ]b4_api_PREFIX[TOKENTYPE +# define ]b4_api_PREFIX[TOKENTYPE + enum ]b4_api_prefix[tokentype + { + ]b4_symbol(empty, [id])[ = -2, +]b4_symbol_foreach([b4_token_enum])dnl +[ }; + typedef enum ]b4_api_prefix[tokentype ]b4_api_prefix[token_kind_t; +#endif +]])]) + + +# b4_token_enums_defines +# ---------------------- +# The definition of the tokens (if there are any) as enums and, +# if POSIX Yacc is enabled, as #defines. +m4_define([b4_token_enums_defines], +[b4_token_enums[]b4_yacc_if([b4_token_defines])]) + + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[N_($1)]]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-40s %s], + m4_format([[%s = %s%s%s]], + b4_symbol([$1], [kind_base]), + [$1], + m4_if([$1], b4_last_symbol, [], [[,]])), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[/* Symbol kind. */ +enum yysymbol_kind_t +{ + ]b4_symbol(empty, [kind_base])[ = -2, +]b4_symbol_foreach([b4_symbol_enum])dnl +[}; +typedef enum yysymbol_kind_t yysymbol_kind_t; +]])]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [($1.$3)], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type]))], + [$1])], + [$1])])]) + + +## ---------------------- ## +## Defining C functions. ## +## ---------------------- ## + + +# b4_formals([DECL1, NAME1], ...) +# ------------------------------- +# The formal arguments of a C function definition. +m4_define([b4_formals], +[m4_if([$#], [0], [void], + [$#$1], [1], [void], + [m4_map_sep([b4_formal], [, ], [$@])])]) + +m4_define([b4_formal], +[$1]) + + +# b4_function_declare(NAME, RETURN-VALUE, [DECL1, NAME1], ...) +# ------------------------------------------------------------ +# Declare the function NAME. +m4_define([b4_function_declare], +[$2 $1 (b4_formals(m4_shift2($@)));[]dnl +]) + + + +## --------------------- ## +## Calling C functions. ## +## --------------------- ## + + +# b4_function_call(NAME, RETURN-VALUE, [DECL1, NAME1], ...) +# ----------------------------------------------------------- +# Call the function NAME with arguments NAME1, NAME2 etc. +m4_define([b4_function_call], +[$1 (b4_args(m4_shift2($@)))[]dnl +]) + + +# b4_args([DECL1, NAME1], ...) +# ---------------------------- +# Output the arguments NAME1, NAME2... +m4_define([b4_args], +[m4_map_sep([b4_arg], [, ], [$@])]) + +m4_define([b4_arg], +[$2]) + + +## ----------- ## +## Synclines. ## +## ----------- ## + +# b4_sync_start(LINE, FILE) +# ------------------------- +m4_define([b4_sync_start], [[#]line $1 $2]) + + +## -------------- ## +## User actions. ## +## -------------- ## + +# b4_case(LABEL, STATEMENTS, [COMMENTS]) +# -------------------------------------- +m4_define([b4_case], +[ case $1:m4_ifval([$3], [ b4_comment([$3])]) +$2 +b4_syncline([@oline@], [@ofile@])dnl + break;]) + + +# b4_predicate_case(LABEL, CONDITIONS) +# ------------------------------------ +m4_define([b4_predicate_case], +[ case $1: + if (! ( +$2)) YYERROR; +b4_syncline([@oline@], [@ofile@])dnl + break;]) + + +# b4_yydestruct_define +# -------------------- +# Define the "yydestruct" function. +m4_define_default([b4_yydestruct_define], +[[/*-----------------------------------------------. +| Release the memory associated to this symbol. | +`-----------------------------------------------*/ + +static void +yydestruct (const char *yymsg, + yysymbol_kind_t yykind, YYSTYPE *yyvaluep]b4_locations_if(dnl +[[, YYLTYPE *yylocationp]])[]b4_user_formals[) +{ +]b4_parse_param_use([yyvaluep], [yylocationp])dnl +[ if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp); + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + ]b4_symbol_actions([destructor])[ + YY_IGNORE_MAYBE_UNINITIALIZED_END +}]dnl +]) + + +# b4_yy_symbol_print_define +# ------------------------- +# Define the "yy_symbol_print" function. +m4_define_default([b4_yy_symbol_print_define], +[[ +/*-----------------------------------. +| Print this symbol's value on YYO. | +`-----------------------------------*/ + +static void +yy_symbol_value_print (FILE *yyo, + yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep]b4_locations_if(dnl +[[, YYLTYPE const * const yylocationp]])[]b4_user_formals[) +{ + FILE *yyoutput = yyo; +]b4_parse_param_use([yyoutput], [yylocationp])dnl +[ if (!yyvaluep) + return;] +b4_percent_code_get([[pre-printer]])dnl + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + b4_symbol_actions([printer]) + YY_IGNORE_MAYBE_UNINITIALIZED_END +b4_percent_code_get([[post-printer]])dnl +[} + + +/*---------------------------. +| Print this symbol on YYO. | +`---------------------------*/ + +static void +yy_symbol_print (FILE *yyo, + yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep]b4_locations_if(dnl +[[, YYLTYPE const * const yylocationp]])[]b4_user_formals[) +{ + YYFPRINTF (yyo, "%s %s (", + yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind)); + +]b4_locations_if([ YYLOCATION_PRINT (yyo, yylocationp); + YYFPRINTF (yyo, ": "); +])dnl +[ yy_symbol_value_print (yyo, yykind, yyvaluep]dnl +b4_locations_if([, yylocationp])[]b4_user_args[); + YYFPRINTF (yyo, ")"); +}]dnl +]) + + +## ---------------- ## +## api.value.type. ## +## ---------------- ## + + +# ---------------------- # +# api.value.type=union. # +# ---------------------- # + +# b4_symbol_type_register(SYMBOL-NUM) +# ----------------------------------- +# Symbol SYMBOL-NUM has a type (for variant) instead of a type-tag. +# Extend the definition of %union's body (b4_union_members) with a +# field of that type, and extend the symbol's "type" field to point to +# the field name, instead of the type name. +m4_define([b4_symbol_type_register], +[m4_define([b4_symbol($1, type_tag)], + [b4_symbol_if([$1], [has_id], + [b4_symbol([$1], [id])], + [yykind_[]b4_symbol([$1], [number])])])dnl +m4_append([b4_union_members], +m4_expand([m4_format([ %-40s %s], + m4_expand([b4_symbol([$1], [type]) b4_symbol([$1], [type_tag]);]), + [b4_symbol_tag_comment([$1])])])) +]) + + +# b4_type_define_tag(SYMBOL1-NUM, ...) +# ------------------------------------ +# For the batch of symbols SYMBOL1-NUM... (which all have the same +# type), enhance the %union definition for each of them, and set +# there "type" field to the field tag name, instead of the type name. +m4_define([b4_type_define_tag], +[b4_symbol_if([$1], [has_type], + [m4_map([b4_symbol_type_register], [$@])]) +]) + + +# b4_symbol_value_union(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------------- +# Same of b4_symbol_value, but when api.value.type=union. +m4_define([b4_symbol_value_union], +[m4_ifval([$3], + [(*($3*)(&$1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type_tag]))], + [$1])], + [$1])])]) + + +# b4_value_type_setup_union +# ------------------------- +# Setup support for api.value.type=union. Symbols are defined with a +# type instead of a union member name: build the corresponding union, +# and give the symbols their tag. +m4_define([b4_value_type_setup_union], +[m4_define([b4_union_members]) +b4_type_foreach([b4_type_define_tag]) +m4_copy_force([b4_symbol_value_union], [b4_symbol_value]) +]) + + +# -------------------------- # +# api.value.type = variant. # +# -------------------------- # + +# b4_value_type_setup_variant +# --------------------------- +# Setup support for api.value.type=variant. By default, fail, specialized +# by other skeletons. +m4_define([b4_value_type_setup_variant], +[b4_complain_at(b4_percent_define_get_loc([[api.value.type]]), + [['%s' does not support '%s']], + [b4_skeleton], + [%define api.value.type variant])]) + + +# _b4_value_type_setup_keyword +# ---------------------------- +# api.value.type is defined with a keyword/string syntax. Check if +# that is properly defined, and prepare its use. +m4_define([_b4_value_type_setup_keyword], +[b4_percent_define_check_values([[[[api.value.type]], + [[none]], + [[union]], + [[union-directive]], + [[variant]], + [[yystype]]]])dnl +m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_value_type_setup_union], + [variant], [b4_value_type_setup_variant])]) + + +# b4_value_type_setup +# ------------------- +# Check if api.value.type is properly defined, and possibly prepare +# its use. +b4_define_silent([b4_value_type_setup], +[# Define default value. +b4_percent_define_ifdef([[api.value.type]], [], +[# %union => api.value.type=union-directive +m4_ifdef([b4_union_members], +[m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [union-directive])], +[# no tag seen => api.value.type={int} +m4_if(b4_tag_seen_flag, 0, +[m4_define([b4_percent_define_kind(api.value.type)], [code]) +m4_define([b4_percent_define(api.value.type)], [int])], +[# otherwise api.value.type=yystype +m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [yystype])])])]) + +# Set up. +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), + [keyword\|string], [_b4_value_type_setup_keyword]) +]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + + +# b4_value_type_define +# -------------------- +m4_define([b4_value_type_define], +[b4_value_type_setup[]dnl +/* Value type. */ +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), +[code], +[[#if ! defined ]b4_api_PREFIX[STYPE && ! defined ]b4_api_PREFIX[STYPE_IS_DECLARED +typedef ]b4_percent_define_get([[api.value.type]])[ ]b4_api_PREFIX[STYPE; +# define ]b4_api_PREFIX[STYPE_IS_TRIVIAL 1 +# define ]b4_api_PREFIX[STYPE_IS_DECLARED 1 +#endif +]], +[m4_bmatch(b4_percent_define_get([[api.value.type]]), +[union\|union-directive], +[[#if ! defined ]b4_api_PREFIX[STYPE && ! defined ]b4_api_PREFIX[STYPE_IS_DECLARED +]b4_percent_define_get_syncline([[api.value.union.name]])dnl +[union ]b4_percent_define_get([[api.value.union.name]])[ +{ +]b4_user_union_members[ +}; +]b4_percent_define_get_syncline([[api.value.union.name]])dnl +[typedef union ]b4_percent_define_get([[api.value.union.name]])[ ]b4_api_PREFIX[STYPE; +# define ]b4_api_PREFIX[STYPE_IS_TRIVIAL 1 +# define ]b4_api_PREFIX[STYPE_IS_DECLARED 1 +#endif +]])])]) + + +# b4_location_type_define +# ----------------------- +m4_define([b4_location_type_define], +[[/* Location type. */ +]b4_percent_define_ifdef([[api.location.type]], +[[typedef ]b4_percent_define_get([[api.location.type]])[ ]b4_api_PREFIX[LTYPE; +]], +[[#if ! defined ]b4_api_PREFIX[LTYPE && ! defined ]b4_api_PREFIX[LTYPE_IS_DECLARED +typedef struct ]b4_api_PREFIX[LTYPE ]b4_api_PREFIX[LTYPE; +struct ]b4_api_PREFIX[LTYPE +{ + int first_line; + int first_column; + int last_line; + int last_column; +}; +# define ]b4_api_PREFIX[LTYPE_IS_DECLARED 1 +# define ]b4_api_PREFIX[LTYPE_IS_TRIVIAL 1 +#endif +]])]) + + +# b4_declare_yylstype +# ------------------- +# Declarations that might either go into the header (if --header) or +# in the parser body. Declare YYSTYPE/YYLTYPE, and yylval/yylloc. +m4_define([b4_declare_yylstype], +[b4_value_type_define[]b4_locations_if([ +b4_location_type_define]) + +b4_pure_if([], [[extern ]b4_api_PREFIX[STYPE ]b4_prefix[lval; +]b4_locations_if([[extern ]b4_api_PREFIX[LTYPE ]b4_prefix[lloc;]])])[]dnl +]) + + +# b4_YYDEBUG_define +# ----------------- +m4_define([b4_YYDEBUG_define], +[[/* Debug traces. */ +]m4_if(b4_api_prefix, [yy], +[[#ifndef YYDEBUG +# define YYDEBUG ]b4_parse_trace_if([1], [0])[ +#endif]], +[[#ifndef ]b4_api_PREFIX[DEBUG +# if defined YYDEBUG +#if YYDEBUG +# define ]b4_api_PREFIX[DEBUG 1 +# else +# define ]b4_api_PREFIX[DEBUG 0 +# endif +# else /* ! defined YYDEBUG */ +# define ]b4_api_PREFIX[DEBUG ]b4_parse_trace_if([1], [0])[ +# endif /* ! defined YYDEBUG */ +#endif /* ! defined ]b4_api_PREFIX[DEBUG */]])[]dnl +]) + +# b4_declare_yydebug +# ------------------ +m4_define([b4_declare_yydebug], +[b4_YYDEBUG_define[ +#if ]b4_api_PREFIX[DEBUG +extern int ]b4_prefix[debug; +#endif][]dnl +]) + +# b4_yylloc_default_define +# ------------------------ +# Define YYLLOC_DEFAULT. +m4_define([b4_yylloc_default_define], +[[/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +#ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ + (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ + (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ + (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ + } \ + else \ + { \ + (Current).first_line = (Current).last_line = \ + YYRHSLOC (Rhs, 0).last_line; \ + (Current).first_column = (Current).last_column = \ + YYRHSLOC (Rhs, 0).last_column; \ + } \ + while (0) +#endif +]]) + +# b4_yylocation_print_define +# -------------------------- +# Define YYLOCATION_PRINT. +m4_define([b4_yylocation_print_define], +[b4_locations_if([[ +/* YYLOCATION_PRINT -- Print the location on the stream. + This macro was not mandated originally: define only if we know + we won't break user code: when these are the locations we know. */ + +# ifndef YYLOCATION_PRINT + +# if defined YY_LOCATION_PRINT + + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YYLOCATION_PRINT(File, Loc) YY_LOCATION_PRINT(File, *(Loc)) + +# elif defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL + +/* Print *YYLOCP on YYO. Private, do not rely on its existence. */ + +YY_ATTRIBUTE_UNUSED +static int +yy_location_print_ (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += YYFPRINTF (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += YYFPRINTF (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += YYFPRINTF (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += YYFPRINTF (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += YYFPRINTF (yyo, "-%d", end_col); + } + return res; +} + +# define YYLOCATION_PRINT yy_location_print_ + + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YY_LOCATION_PRINT(File, Loc) YYLOCATION_PRINT(File, &(Loc)) + +# else + +# define YYLOCATION_PRINT(File, Loc) ((void) 0) + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YY_LOCATION_PRINT YYLOCATION_PRINT + +# endif +# endif /* !defined YYLOCATION_PRINT */]]) +]) + +# b4_yyloc_default +# ---------------- +# Expand to a possible default value for yylloc. +m4_define([b4_yyloc_default], +[[ +# if defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL + = { ]m4_join([, ], + m4_defn([b4_location_initial_line]), + m4_defn([b4_location_initial_column]), + m4_defn([b4_location_initial_line]), + m4_defn([b4_location_initial_column]))[ } +# endif +]]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/d-skel.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/d-skel.m4 new file mode 100644 index 0000000..2a38f02 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/d-skel.m4 @@ -0,0 +1,26 @@ + -*- Autoconf -*- + +# D skeleton dispatching for Bison. + +# Copyright (C) 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [b4_complain([%%glr-parser not supported for D])]) +b4_nondeterministic_if([b4_complain([%%nondeterministic-parser not supported for D])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.d]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/d.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/d.m4 new file mode 100644 index 0000000..c0632e4 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/d.m4 @@ -0,0 +1,628 @@ + -*- Autoconf -*- + +# D language support for Bison + +# Copyright (C) 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +m4_include(b4_skeletonsdir/[c-like.m4]) + + +# b4_symbol_action(SYMBOL-NUM, ACTION) +# ------------------------------------ +# Run the action ACTION ("destructor" or "printer") for SYMBOL-NUM. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([yyval], + [$1], + [], + [yyloc])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl +b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_use(EXPR) +# ------------ +# Pacify the compiler about some maybe unused value. +m4_define([b4_use], +[]) + + +# b4_sync_start(LINE, FILE) +# ------------------------- +m4_define([b4_sync_start], [[#]line $1 $2]) + + +# b4_list2(LIST1, LIST2) +# ---------------------- +# Join two lists with a comma if necessary. +m4_define([b4_list2], + [$1[]m4_ifval(m4_quote($1), [m4_ifval(m4_quote($2), [[, ]])])[]$2]) + + +# b4_percent_define_get3(DEF, PRE, POST, NOT) +# ------------------------------------------- +# Expand to the value of DEF surrounded by PRE and POST if it's %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_get3], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$2[]b4_percent_define_get([$1])[]$3], [$4])]) + +# b4_percent_define_if_get2(ARG1, ARG2, DEF, NOT) +# ----------------------------------------------- +# Expand to the value of DEF if ARG1 or ARG2 are %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_if_get2], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$3], [m4_ifval(m4_quote(b4_percent_define_get([$2])), + [$3], [$4])])]) + +# b4_percent_define_class_before_interface(CLASS, INTERFACE) +# ---------------------------------------------------------- +# Expand to a ', ' if both a class and an interface have been %define'ed +m4_define([b4_percent_define_class_before_interface], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [m4_ifval(m4_quote(b4_percent_define_get([$2])), + [, ])])]) + + +# b4_flag_value(BOOLEAN-FLAG) +# --------------------------- +m4_define([b4_flag_value], [b4_flag_if([$1], [true], [false])]) + + +# b4_parser_class_declaration +# --------------------------- +# The declaration of the parser class ("class YYParser"), with all its +# qualifiers/annotations. +b4_percent_define_default([[api.parser.abstract]], [[false]]) +b4_percent_define_default([[api.parser.final]], [[false]]) +b4_percent_define_default([[api.parser.public]], [[false]]) + +m4_define([b4_parser_class_declaration], +[b4_percent_define_get3([api.parser.annotations], [], [ ])dnl +b4_percent_define_flag_if([api.parser.public], [public ])dnl +b4_percent_define_flag_if([api.parser.abstract], [abstract ])dnl +b4_percent_define_flag_if([api.parser.final], [final ])dnl +[class ]b4_parser_class[]dnl +b4_percent_define_if_get2([api.parser.extends], [api.parser.implements], [ : ])dnl +b4_percent_define_get([api.parser.extends])dnl +b4_percent_define_class_before_interface([api.parser.extends], [api.parser.implements])dnl +b4_percent_define_get([api.parser.implements])]) + + +# b4_lexer_if(TRUE, FALSE) +# ------------------------ +m4_define([b4_lexer_if], +[b4_percent_code_ifdef([[lexer]], [$1], [$2])]) + + +# b4_position_type_if(TRUE, FALSE) +# -------------------------------- +m4_define([b4_position_type_if], +[b4_percent_define_ifdef([[position_type]], [$1], [$2])]) + + +# b4_location_type_if(TRUE, FALSE) +# -------------------------------- +m4_define([b4_location_type_if], +[b4_percent_define_ifdef([[location_type]], [$1], [$2])]) + + +# b4_identification +# ----------------- +m4_define([b4_identification], +[[/** Version number for the Bison executable that generated this parser. */ + public static immutable string yy_bison_version = "]b4_version_string["; + + /** Name of the skeleton that generated this parser. */ + public static immutable string yy_bison_skeleton = ]b4_skeleton[; +]]) + + +## ------------ ## +## Data types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# MIN to MAX (included). +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-128], [127]), [1], [byte], + b4_ints_in($@, [-32768], [32767]), [1], [short], + [int])]) + +# b4_int_type_for(NAME) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# `NAME_min' to `NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + +# b4_null +# ------- +m4_define([b4_null], [null]) + + +# b4_integral_parser_table_define(NAME, DATA, COMMENT) +#----------------------------------------------------- +# Define "yy" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [b4_comment([$3], [ ])])dnl +private static immutable b4_int_type_for([$2])[[]] yy$1_ = +@{ + $2 +@};dnl +]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + +m4_define([b4_symbol(-2, id)], [[YYEMPTY]]) +b4_percent_define_default([[api.token.raw]], [[true]]) + +# b4_token_enum(TOKEN-NAME, TOKEN-NUMBER) +# --------------------------------------- +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_format([ %s = %s, +], [$1])]) + +# b4_token_enums +# -------------- +# Output the definition of the tokens as enums. +m4_define([b4_token_enums], +[/* Token kinds. */ +public enum TokenKind { + ]b4_symbol(empty, id)[ = -2, +b4_symbol_foreach([b4_token_enum])dnl +} +]) + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[_($1)]]) + + +# _b4_token_constructor_define(SYMBOL-NUM) +# ---------------------------------------- +# Define Symbol.FOO for SYMBOL-NUM. +m4_define([_b4_token_constructor_define], +[b4_token_visible_if([$1], +[[ + static auto ]b4_symbol([$1], [id])[(]b4_symbol_if([$1], [has_type], +[b4_union_if([b4_symbol([$1], [type]], +[[typeof(YYSemanticType.]b4_symbol([$1], [type])[]])) [val]])dnl +[]b4_locations_if([b4_symbol_if([$1], [has_type], [[, ]])[Location l]])[) + { + return Symbol(TokenKind.]b4_symbol([$1], [id])[]b4_symbol_if([$1], [has_type], + [[, val]])[]b4_locations_if([[, l]])[); + }]])]) + +# b4_token_constructor_define +# --------------------------- +# Define Symbol.FOO for each token kind FOO. +m4_define([b4_token_constructor_define], +[[ + /* Implementation of token constructors for each symbol type visible to + * the user. The code generates static methods that have the same names + * as the TokenKinds. + */]b4_symbol_foreach([_b4_token_constructor_define])dnl +]) + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[SymbolKind.b4_symbol_kind_base($@)]) + + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-30s %s], + m4_format([[%s = %s,]], + b4_symbol([$1], [kind_base]), + [$1]), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[ /* Symbol kinds. */ + struct SymbolKind + { + enum + { + ]b4_symbol(empty, kind_base)[ = -2, /* No symbol. */ +]b4_symbol_foreach([b4_symbol_enum])dnl +[ } + + private int yycode_; + alias yycode_ this; + + this(int code) + { + yycode_ = code; + } + + /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + final void toString(W)(W sink) const + if (isOutputRange!(W, char)) + { + immutable string[] yy_sname = @{ + ]b4_symbol_names[ + @};]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + immutable ]b4_int_type_for([b4_translatable])[[] yytranslatable = @{ + ]b4_translatable[ + @};]])[ + + put(sink, yy_sname[yycode_]); + } + } +]]) + + +# b4_case(ID, CODE, [COMMENTS]) +# ----------------------------- +m4_define([b4_case], [ case $1:m4_ifval([$3], [ b4_comment([$3])]) +$2 + break;]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +m4_define([b4_yystype], [b4_percent_define_get([[stype]])]) +b4_percent_define_default([[stype]], [[YYSemanticType]])]) + +# %name-prefix +m4_define_default([b4_prefix], [[YY]]) + +b4_percent_define_default([[api.parser.class]], [b4_prefix[]Parser])]) +m4_define([b4_parser_class], [b4_percent_define_get([[api.parser.class]])]) + +#b4_percent_define_default([[location_type]], [Location])]) +m4_define([b4_location_type], b4_percent_define_ifdef([[location_type]],[b4_percent_define_get([[location_type]])],[YYLocation])) + +#b4_percent_define_default([[position_type]], [Position])]) +m4_define([b4_position_type], b4_percent_define_ifdef([[position_type]],[b4_percent_define_get([[position_type]])],[YYPosition])) + + +## ---------------- ## +## api.value.type. ## +## ---------------- ## + + +# ---------------------- # +# api.value.type=union. # +# ---------------------- # + +# b4_symbol_type_register(SYMBOL-NUM) +# ----------------------------------- +# Symbol SYMBOL-NUM has a type (for union) instead of a type-tag. +# Extend the definition of %union's body (b4_union_members) with a +# field of that type, and extend the symbol's "type" field to point to +# the field name, instead of the type name. +m4_define([b4_symbol_type_register], +[m4_define([b4_symbol($1, type_tag)], + [b4_symbol_if([$1], [has_id], + [b4_symbol([$1], [id])], + [yykind_[]b4_symbol([$1], [number])])])dnl +m4_append([b4_union_members], +m4_expand([m4_format([ %-40s %s], + m4_expand([b4_symbol([$1], [type]) b4_symbol([$1], [type_tag]);]), + [b4_symbol_tag_comment([$1])])])) +]) + + +# b4_type_define_tag(SYMBOL1-NUM, ...) +# ------------------------------------ +# For the batch of symbols SYMBOL1-NUM... (which all have the same +# type), enhance the %union definition for each of them, and set +# there "type" field to the field tag name, instead of the type name. +m4_define([b4_type_define_tag], +[b4_symbol_if([$1], [has_type], + [m4_map([b4_symbol_type_register], [$@])]) +]) + + +# b4_symbol_value_union(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------------- +# Same of b4_symbol_value, but when api.value.type=union. +m4_define([b4_symbol_value_union], +[m4_ifval([$3], + [(*($3*)(&$1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type_tag]))], + [$1])], + [$1])])]) + + +# b4_value_type_setup_union +# ------------------------- +# Setup support for api.value.type=union. Symbols are defined with a +# type instead of a union member name: build the corresponding union, +# and give the symbols their tag. +m4_define([b4_value_type_setup_union], +[m4_define([b4_union_members]) +b4_type_foreach([b4_type_define_tag]) +m4_copy_force([b4_symbol_value_union], [b4_symbol_value]) +]) + + +# _b4_value_type_setup_keyword +# ---------------------------- +# api.value.type is defined with a keyword/string syntax. Check if +# that is properly defined, and prepare its use. +m4_define([_b4_value_type_setup_keyword], +[b4_percent_define_check_values([[[[api.value.type]], + [[none]], + [[union]], + [[union-directive]], + [[yystype]]]])dnl +m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_value_type_setup_union])]) + + +# b4_value_type_setup +# ------------------- +# Check if api.value.type is properly defined, and possibly prepare +# its use. +b4_define_silent([b4_value_type_setup], +[ +# Define default value. +b4_percent_define_ifdef([[api.value.type]], [], +[# %union => api.value.type=union-directive +m4_ifdef([b4_union_members], +[m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [union-directive])], +[# no tag seen => api.value.type={int} +m4_if(b4_tag_seen_flag, 0, +[m4_define([b4_percent_define_kind(api.value.type)], [code]) +m4_define([b4_percent_define(api.value.type)], [int])], +[# otherwise api.value.type=yystype +m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [yystype])])])]) + +# Set up. +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), + [keyword], [_b4_value_type_setup_keyword]) +]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. FIXME: factor in c-like? +m4_define([b4_symbol_value], +[m4_ifval([$3], + [($1.$3)], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type]))], + [$1])], + [$1])])]) + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([yyval], [$1], [$2])]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +# +# In this simple implementation, %token and %type have class names +# between the angle brackets. +m4_define([b4_rhs_value], +[b4_symbol_value([(yystack.valueAt (b4_subtract([$1], [$2])))], [$3], [$4])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[yystack.locationAt (b4_subtract($@))]) + + +# b4_lex_param +# b4_parse_param +# -------------- +# If defined, b4_lex_param arrives double quoted, but below we prefer +# it to be single quoted. Same for b4_parse_param. + +# TODO: should be in bison.m4 +m4_define_default([b4_lex_param], [[]])) +m4_define([b4_lex_param], b4_lex_param)) +m4_define([b4_parse_param], b4_parse_param)) + +# b4_lex_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_lex_param_decl], +[m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_decls(b4_lex_param))], + [$1])]) + +m4_define([b4_param_decls], + [m4_map([b4_param_decl], [$@])]) +m4_define([b4_param_decl], [, $1]) + +m4_define([b4_remove_comma], [m4_ifval(m4_quote($1), [$1, ], [])m4_shift2($@)]) + + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [b4_remove_comma([$1], + b4_param_decls(b4_parse_param))], + [$1])]) + + + +# b4_lex_param_call +# ------------------- +# Delegating the lexer parameters to the lexer constructor. +m4_define([b4_lex_param_call], + [m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_calls(b4_lex_param))], + [$1])]) +m4_define([b4_param_calls], + [m4_map([b4_param_call], [$@])]) +m4_define([b4_param_call], [, $2]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [b4_constructor_calls(b4_parse_param)])]) + +m4_define([b4_constructor_calls], + [m4_map([b4_constructor_call], [$@])]) +m4_define([b4_constructor_call], + [this.$2 = $2; + ]) + + + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + /* User arguments. */ +b4_var_decls(b4_parse_param)])]) + +m4_define([b4_var_decls], + [m4_map_sep([b4_var_decl], [ +], [$@])]) +m4_define([b4_var_decl], + [ protected $1;]) + + +# b4_public_types_declare +# ----------------------- +# Define the public types: token, semantic value, location, and so forth. +# Depending on %define token_lex, may be output in the header or source file. +m4_define([b4_public_types_declare], +[[ +alias Symbol = ]b4_parser_class[.Symbol; +alias Value = ]b4_yystype[;]b4_locations_if([[ +alias Location = ]b4_location_type[; +alias Position = ]b4_position_type[;]b4_push_if([[ +alias PUSH_MORE = ]b4_parser_class[.YYPUSH_MORE; +alias ABORT = ]b4_parser_class[.YYABORT; +alias ACCEPT = ]b4_parser_class[.YYACCEPT;]])[]])[ +]]) + + +# b4_basic_symbol_constructor_define +# ---------------------------------- +# Create Symbol struct constructors for all the visible types. +m4_define([b4_basic_symbol_constructor_define], +[b4_token_visible_if([$1], +[[ this(TokenKind token]b4_symbol_if([$1], [has_type], +[[, ]b4_union_if([], [[typeof(YYSemanticType.]])b4_symbol([$1], [type])dnl +[]b4_union_if([], [[) ]])[ val]])[]b4_locations_if([[, Location loc]])[) + { + kind = yytranslate_(token);]b4_union_if([b4_symbol_if([$1], [has_type], [[ + static foreach (member; __traits(allMembers, YYSemanticType)) + { + static if (is(typeof(mixin("value_." ~ member)) == ]b4_symbol([$1], [type])[)) + { + mixin("value_." ~ member ~ " = val;"); + } + }]])], [b4_symbol_if([$1], [has_type], [[ + value_.]b4_symbol([$1], [type])[ = val;]])])[]b4_locations_if([ + location_ = loc;])[ + } +]])]) + + +# b4_symbol_type_define +# --------------------- +# Define symbol_type, the external type for symbols used for symbol +# constructors. +m4_define([b4_symbol_type_define], +[[ + /** + * A complete symbol + */ + struct Symbol + { + private SymbolKind kind; + private Value value_;]b4_locations_if([[ + private Location location_;]])[ + +]b4_type_foreach([b4_basic_symbol_constructor_define])[ + SymbolKind token() { return kind; } + Value value() { return value_; }]b4_locations_if([[ + Location location() { return location_; }]])[ +]b4_token_ctor_if([b4_token_constructor_define])[ + } +]]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr.c b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr.c new file mode 100644 index 0000000..fab3733 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr.c @@ -0,0 +1,2763 @@ +# -*- C -*- + +# GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# If we are loaded by glr.cc, do not override c++.m4 definitions by +# those of c.m4. +m4_if(b4_skeleton, ["glr.c"], + [m4_include(b4_skeletonsdir/[c.m4])]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + +# Included header. +b4_percent_define_default([[api.header.include]], + [["@basename(]b4_spec_header_file[@)"]]) + +## ------------------------ ## +## Pure/impure interfaces. ## +## ------------------------ ## + +b4_define_flag_if([pure]) +# If glr.cc is including this file and thus has already set b4_pure_flag, +# do not change the value of b4_pure_flag, and do not record a use of api.pure. +m4_ifndef([b4_pure_flag], +[b4_percent_define_default([[api.pure]], [[false]]) + m4_define([b4_pure_flag], + [b4_percent_define_flag_if([[api.pure]], [[1]], [[0]])])]) + +# b4_yyerror_args +# --------------- +# Optional effective arguments passed to yyerror: user args plus yylloc, and +# a trailing comma. +m4_define([b4_yyerror_args], +[b4_pure_if([b4_locations_if([yylocp, ])])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + +# b4_lyyerror_args +# ---------------- +# Same as above, but on the lookahead, hence &yylloc instead of yylocp. +m4_define([b4_lyyerror_args], +[b4_pure_if([b4_locations_if([&yylloc, ])])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + +# b4_pure_args +# ------------ +# Same as b4_yyerror_args, but with a leading comma. +m4_define([b4_pure_args], +[b4_pure_if([b4_locations_if([, yylocp])])[]b4_user_args]) + + +# b4_lpure_args +# ------------- +# Same as above, but on the lookahead, hence &yylloc instead of yylocp. +m4_define([b4_lpure_args], +[b4_pure_if([b4_locations_if([, &yylloc])])[]b4_user_args]) + + + +# b4_pure_formals +# --------------- +# Arguments passed to yyerror: user formals plus yylocp with leading comma. +m4_define([b4_pure_formals], +[b4_pure_if([b4_locations_if([, YYLTYPE *yylocp])])[]b4_user_formals]) + + +# b4_locuser_formals(LOC = yylocp) +# -------------------------------- +# User formal arguments, possibly preceded by location argument. +m4_define([b4_locuser_formals], +[b4_locations_if([, YYLTYPE *m4_default([$1], [yylocp])])[]b4_user_formals]) + + +# b4_locuser_args(LOC = yylocp) +# ----------------------------- +m4_define([b4_locuser_args], +[b4_locations_if([, m4_default([$1], [yylocp])])[]b4_user_args]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([(*yyvalp)], [$1], [$2])]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[YY_CAST (yyGLRStackItem const *, yyvsp)@{YYFILL (b4_subtract([$2], [$1]))@}.yystate]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# Expansion of $$ or $$, for symbol SYMBOL-NUM. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).yysemantics.yyval], [$3], [$4])]) + + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(*yylocp)]) + + +# b4_rhs_location(RULE-LENGTH, NUM) +# --------------------------------- +# Expansion of @NUM, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(b4_rhs_data([$1], [$2]).yyloc)]) + + +# b4_call_merger(MERGER-NUM, MERGER-NAME, SYMBOL-SUM) +# --------------------------------------------------- +m4_define([b4_call_merger], +[b4_case([$1], + [ b4_symbol_if([$3], [has_type], + [yy0->b4_symbol($3, slot) = $2 (*yy0, *yy1);], + [*yy0 = $2 (*yy0, *yy1);])])]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + +# b4_shared_declarations +# ---------------------- +# Declaration that might either go into the header (if --header) +# or open coded in the parser body. glr.cc has its own definition. +m4_if(b4_skeleton, ["glr.c"], +[m4_define([b4_shared_declarations], +[b4_declare_yydebug[ +]b4_percent_code_get([[requires]])[ +]b4_token_enums[ +]b4_declare_yylstype[ +int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]b4_percent_code_get([[provides]])[]dnl +]) +]) + +## -------------- ## +## Output files. ## +## -------------- ## + +# Unfortunately the order of generation between the header and the +# implementation file matters (for glr.c) because of the current +# implementation of api.value.type=union. In that case we still use a +# union for YYSTYPE, but we generate the contents of this union when +# setting up YYSTYPE. This is needed for other aspects, such as +# defining yy_symbol_value_print, since we need to now the name of the +# members of this union. +# +# To avoid this issue, just generate the header before the +# implementation file. But we should also make them more independent. + +# ----------------- # +# The header file. # +# ----------------- # + +# glr.cc produces its own header. +b4_glr_cc_if([], +[b4_header_if( +[b4_output_begin([b4_spec_header_file]) +b4_copyright([Skeleton interface for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end[ +]])]) + + +# ------------------------- # +# The implementation file. # +# ------------------------- # + +b4_output_begin([b4_parser_file_name]) +b4_copyright([Skeleton implementation for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +/* C GLR parser skeleton written by Paul Hilfinger. */ + +]b4_disclaimer[ +]b4_identification[ + +]b4_percent_code_get([[top]])[ +]m4_if(b4_api_prefix, [yy], [], +[[/* Substitute the type names. */ +#define YYSTYPE ]b4_api_PREFIX[STYPE]b4_locations_if([[ +#define YYLTYPE ]b4_api_PREFIX[LTYPE]])])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define ]b4_glr_cc_if([yy_parse_impl], [yyparse])[ ]b4_prefix[]b4_glr_cc_if([_parse_impl], [parse])[ +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug]]b4_pure_if([], [[ +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char +#define yynerrs ]b4_prefix[nerrs]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])]))[ + +]b4_user_pre_prologue[ +]b4_cast_define[ +]b4_null_define[ + +]b4_header_if([[#include ]b4_percent_define_get([[api.header.include]])], + [b4_shared_declarations])[ + +]b4_glr_cc_if([b4_glr_cc_setup], + [b4_declare_symbol_enum])[ + +/* Default (constant) value used for initialization for null + right-hand sides. Unlike the standard yacc.c template, here we set + the default value of $$ to a zeroed-out value. Since the default + value is undefined, this behavior is technically correct. */ +static YYSTYPE yyval_default;]b4_locations_if([[ +static YYLTYPE yyloc_default][]b4_yyloc_default;])[ + +]b4_user_post_prologue[ +]b4_percent_code_get[]dnl + +[#include +#include +#include +#include +#include + +]b4_c99_int_type_define[ +]b4_sizes_types_define[ + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +#ifndef YYFREE +# define YYFREE free +#endif +#ifndef YYMALLOC +# define YYMALLOC malloc +#endif +#ifndef YYREALLOC +# define YYREALLOC realloc +#endif + +#ifdef __cplusplus + typedef bool yybool; +# define yytrue true +# define yyfalse false +#else + /* When we move to stdbool, get rid of the various casts to yybool. */ + typedef signed char yybool; +# define yytrue 1 +# define yyfalse 0 +#endif + +#ifndef YYSETJMP +# include +# define YYJMP_BUF jmp_buf +# define YYSETJMP(Env) setjmp (Env) +/* Pacify Clang and ICC. */ +# define YYLONGJMP(Env, Val) \ + do { \ + longjmp (Env, Val); \ + YY_ASSERT (0); \ + } while (yyfalse) +#endif + +]b4_attribute_define([noreturn])[ + +]b4_parse_assert_if([[#ifdef NDEBUG +# define YY_ASSERT(E) ((void) (0 && (E))) +#else +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_ASSERT(E) assert (E) +#endif +]], +[[#define YY_ASSERT(E) ((void) (0 && (E)))]])[ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ +/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */ +#define YYMAXRHS ]b4_r2_max[ +/* YYMAXLEFT -- Maximum number of symbols to the left of a handle + accessed by $0, $-1, etc., in any rule. */ +#define YYMAXLEFT ]b4_max_left_semantic_context[ + +/* YYMAXUTOK -- Last valid token kind. */ +#define YYMAXUTOK ]b4_code_max[ + +/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ +]b4_api_token_raw_if(dnl +[[#define YYTRANSLATE(YYX) YY_CAST (yysymbol_kind_t, YYX)]], +[[#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK \ + ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \ + : ]b4_symbol_prefix[YYUNDEF) + +/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM + as returned by yylex. */ +static const ]b4_int_type_for([b4_translate])[ yytranslate[] = +{ + ]b4_translate[ +};]])[ + +#if ]b4_api_PREFIX[DEBUG +/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ +static const ]b4_int_type_for([b4_rline])[ yyrline[] = +{ + ]b4_rline[ +}; +#endif + +#define YYPACT_NINF (]b4_pact_ninf[) +#define YYTABLE_NINF (]b4_table_ninf[) + +]b4_parser_tables_define[ + +/* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */ +static const ]b4_int_type_for([b4_dprec])[ yydprec[] = +{ + ]b4_dprec[ +}; + +/* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */ +static const ]b4_int_type_for([b4_merger])[ yymerger[] = +{ + ]b4_merger[ +}; + +/* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as + in the case of predicates. */ +static const yybool yyimmediate[] = +{ + ]b4_immediate[ +}; + +/* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of + list of conflicting reductions corresponding to action entry for + state STATE-NUM in yytable. 0 means no conflicts. The list in + yyconfl is terminated by a rule number of 0. */ +static const ]b4_int_type_for([b4_conflict_list_heads])[ yyconflp[] = +{ + ]b4_conflict_list_heads[ +}; + +/* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by + 0, pointed into by YYCONFLP. */ +]dnl Do not use b4_int_type_for here, since there are places where +dnl pointers onto yyconfl are taken, whose type is "short*". +dnl We probably ought to introduce a type for confl. +[static const short yyconfl[] = +{ + ]b4_conflicting_rules[ +}; + +]b4_locations_if([[ +]b4_yylloc_default_define[ +# define YYRHSLOC(Rhs, K) ((Rhs)[K].yystate.yyloc) +]])[ + +]b4_pure_if( +[ +#undef yynerrs +#define yynerrs (yystackp->yyerrcnt) +#undef yychar +#define yychar (yystackp->yyrawchar) +#undef yylval +#define yylval (yystackp->yyval) +#undef yylloc +#define yylloc (yystackp->yyloc) +m4_if(b4_prefix[], [yy], [], +[#define b4_prefix[]nerrs yynerrs +#define b4_prefix[]char yychar +#define b4_prefix[]lval yylval +#define b4_prefix[]lloc yylloc])], +[YYSTYPE yylval;]b4_locations_if([[ +YYLTYPE yylloc;]])[ + +int yynerrs; +int yychar;])[ + +enum { YYENOMEM = -2 }; + +typedef enum { yyok, yyaccept, yyabort, yyerr, yynomem } YYRESULTTAG; + +#define YYCHK(YYE) \ + do { \ + YYRESULTTAG yychk_flag = YYE; \ + if (yychk_flag != yyok) \ + return yychk_flag; \ + } while (0) + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif + +/* Minimum number of free items on the stack allowed after an + allocation. This is to allow allocation and initialization + to be completed by functions that call yyexpandGLRStack before the + stack is expanded, thus insuring that all necessary pointers get + properly redirected to new data. */ +#define YYHEADROOM 2 + +#ifndef YYSTACKEXPANDABLE +# define YYSTACKEXPANDABLE 1 +#endif + +#if YYSTACKEXPANDABLE +# define YY_RESERVE_GLRSTACK(Yystack) \ + do { \ + if (Yystack->yyspaceLeft < YYHEADROOM) \ + yyexpandGLRStack (Yystack); \ + } while (0) +#else +# define YY_RESERVE_GLRSTACK(Yystack) \ + do { \ + if (Yystack->yyspaceLeft < YYHEADROOM) \ + yyMemoryExhausted (Yystack); \ + } while (0) +#endif + +/** State numbers. */ +typedef int yy_state_t; + +/** Rule numbers. */ +typedef int yyRuleNum; + +/** Item references. */ +typedef short yyItemNum; + +typedef struct yyGLRState yyGLRState; +typedef struct yyGLRStateSet yyGLRStateSet; +typedef struct yySemanticOption yySemanticOption; +typedef union yyGLRStackItem yyGLRStackItem; +typedef struct yyGLRStack yyGLRStack; + +struct yyGLRState +{ + /** Type tag: always true. */ + yybool yyisState; + /** Type tag for yysemantics. If true, yyval applies, otherwise + * yyfirstVal applies. */ + yybool yyresolved; + /** Number of corresponding LALR(1) machine state. */ + yy_state_t yylrState; + /** Preceding state in this stack */ + yyGLRState* yypred; + /** Source position of the last token produced by my symbol */ + YYPTRDIFF_T yyposn; + union { + /** First in a chain of alternative reductions producing the + * nonterminal corresponding to this state, threaded through + * yynext. */ + yySemanticOption* yyfirstVal; + /** Semantic value for this state. */ + YYSTYPE yyval; + } yysemantics;]b4_locations_if([[ + /** Source location for this state. */ + YYLTYPE yyloc;]])[ +}; + +struct yyGLRStateSet +{ + yyGLRState** yystates; + /** During nondeterministic operation, yylookaheadNeeds tracks which + * stacks have actually needed the current lookahead. During deterministic + * operation, yylookaheadNeeds[0] is not maintained since it would merely + * duplicate yychar != ]b4_symbol(empty, id)[. */ + yybool* yylookaheadNeeds; + YYPTRDIFF_T yysize; + YYPTRDIFF_T yycapacity; +}; + +struct yySemanticOption +{ + /** Type tag: always false. */ + yybool yyisState; + /** Rule number for this reduction */ + yyRuleNum yyrule; + /** The last RHS state in the list of states to be reduced. */ + yyGLRState* yystate; + /** The lookahead for this reduction. */ + int yyrawchar; + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ + /** Next sibling in chain of options. To facilitate merging, + * options are chained in decreasing order by address. */ + yySemanticOption* yynext; +}; + +/** Type of the items in the GLR stack. The yyisState field + * indicates which item of the union is valid. */ +union yyGLRStackItem { + yyGLRState yystate; + yySemanticOption yyoption; +}; + +struct yyGLRStack { + int yyerrState; +]b4_locations_if([[ /* To compute the location of the error token. */ + yyGLRStackItem yyerror_range[3];]])[ +]b4_pure_if( +[ + int yyerrcnt; + int yyrawchar; + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ +])[ + YYJMP_BUF yyexception_buffer; + yyGLRStackItem* yyitems; + yyGLRStackItem* yynextFree; + YYPTRDIFF_T yyspaceLeft; + yyGLRState* yysplitPoint; + yyGLRState* yylastDeleted; + yyGLRStateSet yytops; +}; + +#if YYSTACKEXPANDABLE +static void yyexpandGLRStack (yyGLRStack* yystackp); +#endif + +_Noreturn static void +yyFail (yyGLRStack* yystackp]b4_pure_formals[, const char* yymsg) +{ + if (yymsg != YY_NULLPTR) + yyerror (]b4_yyerror_args[yymsg); + YYLONGJMP (yystackp->yyexception_buffer, 1); +} + +_Noreturn static void +yyMemoryExhausted (yyGLRStack* yystackp) +{ + YYLONGJMP (yystackp->yyexception_buffer, 2); +} + +/** Accessing symbol of state YYSTATE. */ +static inline yysymbol_kind_t +yy_accessing_symbol (yy_state_t yystate) +{ + return YY_CAST (yysymbol_kind_t, yystos[yystate]); +} + +#if ]b4_parse_error_case([simple], [b4_api_PREFIX[DEBUG || ]b4_token_table_flag], [[1]])[ +/* The user-facing name of the symbol whose (internal) number is + YYSYMBOL. No bounds checking. */ +static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED; + +]b4_parse_error_bmatch([simple\|verbose], +[[/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + ]b4_tname[ +}; + +static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + return yytname[yysymbol]; +}]], +[[static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ +}]])[ +#endif + +/** Left-hand-side symbol for rule #YYRULE. */ +static inline yysymbol_kind_t +yylhsNonterm (yyRuleNum yyrule) +{ + return YY_CAST (yysymbol_kind_t, yyr1[yyrule]); +} + +#if ]b4_api_PREFIX[DEBUG + +# ifndef YYFPRINTF +# define YYFPRINTF fprintf +# endif + +# define YY_FPRINTF \ + YY_IGNORE_USELESS_CAST_BEGIN YY_FPRINTF_ + +# define YY_FPRINTF_(Args) \ + do { \ + YYFPRINTF Args; \ + YY_IGNORE_USELESS_CAST_END \ + } while (0) + +# define YY_DPRINTF \ + YY_IGNORE_USELESS_CAST_BEGIN YY_DPRINTF_ + +# define YY_DPRINTF_(Args) \ + do { \ + if (yydebug) \ + YYFPRINTF Args; \ + YY_IGNORE_USELESS_CAST_END \ + } while (0) + +]b4_yylocation_print_define[ + +]b4_yy_symbol_print_define[ + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ + do { \ + if (yydebug) \ + { \ + YY_FPRINTF ((stderr, "%s ", Title)); \ + yy_symbol_print (stderr, Kind, Value]b4_locuser_args([Location])[); \ + YY_FPRINTF ((stderr, "\n")); \ + } \ + } while (0) + +static inline void +yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, YYPTRDIFF_T yyk, + yyRuleNum yyrule]b4_user_formals[); + +# define YY_REDUCE_PRINT(Args) \ + do { \ + if (yydebug) \ + yy_reduce_print Args; \ + } while (0) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; + +static void yypstack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) + YY_ATTRIBUTE_UNUSED; +static void yypdumpstack (yyGLRStack* yystackp) + YY_ATTRIBUTE_UNUSED; + +#else /* !]b4_api_PREFIX[DEBUG */ + +# define YY_DPRINTF(Args) do {} while (yyfalse) +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) +# define YY_REDUCE_PRINT(Args) + +#endif /* !]b4_api_PREFIX[DEBUG */ + +]b4_parse_error_case( + [simple], +[[]], +[[#ifndef yystrlen +# define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S))) +#endif + +]b4_parse_error_bmatch( + [detailed\|verbose], +[[#ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +static char * +yystpcpy (char *yydest, const char *yysrc) +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +#endif]])[ + +]b4_parse_error_case( + [verbose], +[[#ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYPTRDIFF_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYPTRDIFF_T yyn = 0; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else + return yystrlen (yystr); +} +#endif +]])])[ + +/** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting + * at YYVSP[YYLOW0].yystate.yypred. Leaves YYVSP[YYLOW1].yystate.yypred + * containing the pointer to the next state in the chain. */ +static void yyfillin (yyGLRStackItem *, int, int) YY_ATTRIBUTE_UNUSED; +static void +yyfillin (yyGLRStackItem *yyvsp, int yylow0, int yylow1) +{ + int i; + yyGLRState *s = yyvsp[yylow0].yystate.yypred; + for (i = yylow0-1; i >= yylow1; i -= 1) + { +#if ]b4_api_PREFIX[DEBUG + yyvsp[i].yystate.yylrState = s->yylrState; +#endif + yyvsp[i].yystate.yyresolved = s->yyresolved; + if (s->yyresolved) + yyvsp[i].yystate.yysemantics.yyval = s->yysemantics.yyval; + else + /* The effect of using yyval or yyloc (in an immediate rule) is + * undefined. */ + yyvsp[i].yystate.yysemantics.yyfirstVal = YY_NULLPTR;]b4_locations_if([[ + yyvsp[i].yystate.yyloc = s->yyloc;]])[ + s = yyvsp[i].yystate.yypred = s->yypred; + } +} + +]m4_define([b4_yygetToken_call], + [[yygetToken (&yychar][]b4_pure_if([, yystackp])[]b4_user_args[)]])[ +/** If yychar is empty, fetch the next token. */ +static inline yysymbol_kind_t +yygetToken (int *yycharp][]b4_pure_if([, yyGLRStack* yystackp])[]b4_user_formals[) +{ + yysymbol_kind_t yytoken; +]b4_parse_param_use()dnl +[ if (*yycharp == ]b4_symbol(empty, id)[) + { + YY_DPRINTF ((stderr, "Reading a token\n"));]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + try + { +#endif // YY_EXCEPTIONS + *yycharp = ]b4_yylex[; +#if YY_EXCEPTIONS + } + catch (const ]b4_namespace_ref[::]b4_parser_class[::syntax_error& yyexc) + { + YY_DPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ + yylloc = yyexc.location;])[ + yyerror (]b4_lyyerror_args[yyexc.what ()); + // Map errors caught in the scanner to the undefined token, + // so that error handling is started. However, record this + // with this special value of yychar. + *yycharp = ]b4_symbol(error, id)[; + } +#endif // YY_EXCEPTIONS]], [[ + *yycharp = ]b4_yylex[;]])[ + } + if (*yycharp <= ]b4_symbol(eof, [id])[) + { + *yycharp = ]b4_symbol(eof, [id])[; + yytoken = ]b4_symbol_prefix[YYEOF; + YY_DPRINTF ((stderr, "Now at end of input.\n")); + } + else + { + yytoken = YYTRANSLATE (*yycharp); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + return yytoken; +} + +/* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in + * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1. + * For convenience, always return YYLOW1. */ +static inline int yyfill (yyGLRStackItem *, int *, int, yybool) + YY_ATTRIBUTE_UNUSED; +static inline int +yyfill (yyGLRStackItem *yyvsp, int *yylow, int yylow1, yybool yynormal) +{ + if (!yynormal && yylow1 < *yylow) + { + yyfillin (yyvsp, *yylow, yylow1); + *yylow = yylow1; + } + return yylow1; +} + +/** Perform user action for rule number YYN, with RHS length YYRHSLEN, + * and top stack item YYVSP. YYLVALP points to place to put semantic + * value ($$), and yylocp points to place for location information + * (@@$). Returns yyok for normal return, yyaccept for YYACCEPT, + * yyerr for YYERROR, yyabort for YYABORT, yynomem for YYNOMEM. */ +static YYRESULTTAG +yyuserAction (yyRuleNum yyrule, int yyrhslen, yyGLRStackItem* yyvsp, + yyGLRStack* yystackp, YYPTRDIFF_T yyk, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + const yybool yynormal YY_ATTRIBUTE_UNUSED = yystackp->yysplitPoint == YY_NULLPTR; + int yylow = 1; +]b4_parse_param_use([yyvalp], [yylocp])dnl +[ YY_USE (yyk); + YY_USE (yyrhslen); +# undef yyerrok +# define yyerrok (yystackp->yyerrState = 0) +# undef YYACCEPT +# define YYACCEPT return yyaccept +# undef YYABORT +# define YYABORT return yyabort +# undef YYNOMEM +# define YYNOMEM return yynomem +# undef YYERROR +# define YYERROR return yyerrok, yyerr +# undef YYRECOVERING +# define YYRECOVERING() (yystackp->yyerrState != 0) +# undef yyclearin +# define yyclearin (yychar = ]b4_symbol(empty, id)[) +# undef YYFILL +# define YYFILL(N) yyfill (yyvsp, &yylow, (N), yynormal) +# undef YYBACKUP +# define YYBACKUP(Token, Value) \ + return yyerror (]b4_yyerror_args[YY_("syntax error: cannot back up")), \ + yyerrok, yyerr + + if (yyrhslen == 0) + *yyvalp = yyval_default; + else + *yyvalp = yyvsp[YYFILL (1-yyrhslen)].yystate.yysemantics.yyval;]b4_locations_if([[ + /* Default location. */ + YYLLOC_DEFAULT ((*yylocp), (yyvsp - yyrhslen), yyrhslen); + yystackp->yyerror_range[1].yystate.yyloc = *yylocp;]])[ + /* If yyk == -1, we are running a deferred action on a temporary + stack. In that case, YY_REDUCE_PRINT must not play with YYFILL, + so pretend the stack is "normal". */ + YY_REDUCE_PRINT ((yynormal || yyk == -1, yyvsp, yyk, yyrule]b4_user_args[));]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + typedef ]b4_namespace_ref[::]b4_parser_class[::syntax_error syntax_error; + try + { +#endif // YY_EXCEPTIONS]])[ + switch (yyrule) + { +]b4_user_actions[ + default: break; + }]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + } + catch (const syntax_error& yyexc) + { + YY_DPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ + *yylocp = yyexc.location;])[ + yyerror (]b4_yyerror_args[yyexc.what ()); + YYERROR; + } +#endif // YY_EXCEPTIONS]])[ + YY_SYMBOL_PRINT ("-> $$ =", yylhsNonterm (yyrule), yyvalp, yylocp); + + return yyok; +# undef yyerrok +# undef YYABORT +# undef YYACCEPT +# undef YYNOMEM +# undef YYERROR +# undef YYBACKUP +# undef yyclearin +# undef YYRECOVERING +} + + +static void +yyuserMerge (int yyn, YYSTYPE* yy0, YYSTYPE* yy1) +{ + YY_USE (yy0); + YY_USE (yy1); + + switch (yyn) + { +]b4_mergers[ + default: break; + } +} + + /* Bison grammar-table manipulation. */ + +]b4_yydestruct_define[ + +/** Number of symbols composing the right hand side of rule #RULE. */ +static inline int +yyrhsLength (yyRuleNum yyrule) +{ + return yyr2[yyrule]; +} + +static void +yydestroyGLRState (char const *yymsg, yyGLRState *yys]b4_user_formals[) +{ + if (yys->yyresolved) + yydestruct (yymsg, yy_accessing_symbol (yys->yylrState), + &yys->yysemantics.yyval]b4_locuser_args([&yys->yyloc])[); + else + { +#if ]b4_api_PREFIX[DEBUG + if (yydebug) + { + if (yys->yysemantics.yyfirstVal) + YY_FPRINTF ((stderr, "%s unresolved", yymsg)); + else + YY_FPRINTF ((stderr, "%s incomplete", yymsg)); + YY_SYMBOL_PRINT ("", yy_accessing_symbol (yys->yylrState), YY_NULLPTR, &yys->yyloc); + } +#endif + + if (yys->yysemantics.yyfirstVal) + { + yySemanticOption *yyoption = yys->yysemantics.yyfirstVal; + yyGLRState *yyrh; + int yyn; + for (yyrh = yyoption->yystate, yyn = yyrhsLength (yyoption->yyrule); + yyn > 0; + yyrh = yyrh->yypred, yyn -= 1) + yydestroyGLRState (yymsg, yyrh]b4_user_args[); + } + } +} + +#define yypact_value_is_default(Yyn) \ + ]b4_table_value_equals([[pact]], [[Yyn]], [b4_pact_ninf], [YYPACT_NINF])[ + +/** True iff LR state YYSTATE has only a default reduction (regardless + * of token). */ +static inline yybool +yyisDefaultedState (yy_state_t yystate) +{ + return yypact_value_is_default (yypact[yystate]); +} + +/** The default reduction for YYSTATE, assuming it has one. */ +static inline yyRuleNum +yydefaultAction (yy_state_t yystate) +{ + return yydefact[yystate]; +} + +#define yytable_value_is_error(Yyn) \ + ]b4_table_value_equals([[table]], [[Yyn]], [b4_table_ninf], [YYTABLE_NINF])[ + +/** The action to take in YYSTATE on seeing YYTOKEN. + * Result R means + * R < 0: Reduce on rule -R. + * R = 0: Error. + * R > 0: Shift to state R. + * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list + * of conflicting reductions. + */ +static inline int +yygetLRActions (yy_state_t yystate, yysymbol_kind_t yytoken, const short** yyconflicts) +{ + int yyindex = yypact[yystate] + yytoken; + if (yytoken == ]b4_symbol(error, kind)[) + { + // This is the error token. + *yyconflicts = yyconfl; + return 0; + } + else if (yyisDefaultedState (yystate) + || yyindex < 0 || YYLAST < yyindex || yycheck[yyindex] != yytoken) + { + *yyconflicts = yyconfl; + return -yydefact[yystate]; + } + else if (! yytable_value_is_error (yytable[yyindex])) + { + *yyconflicts = yyconfl + yyconflp[yyindex]; + return yytable[yyindex]; + } + else + { + *yyconflicts = yyconfl + yyconflp[yyindex]; + return 0; + } +} + +/** Compute post-reduction state. + * \param yystate the current state + * \param yysym the nonterminal to push on the stack + */ +static inline yy_state_t +yyLRgotoState (yy_state_t yystate, yysymbol_kind_t yysym) +{ + int yyr = yypgoto[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= YYLAST && yycheck[yyr] == yystate) + return yytable[yyr]; + else + return yydefgoto[yysym - YYNTOKENS]; +} + +static inline yybool +yyisShiftAction (int yyaction) +{ + return 0 < yyaction; +} + +static inline yybool +yyisErrorAction (int yyaction) +{ + return yyaction == 0; +} + + /* GLRStates */ + +/** Return a fresh GLRStackItem in YYSTACKP. The item is an LR state + * if YYISSTATE, and otherwise a semantic option. Callers should call + * YY_RESERVE_GLRSTACK afterwards to make sure there is sufficient + * headroom. */ + +static inline yyGLRStackItem* +yynewGLRStackItem (yyGLRStack* yystackp, yybool yyisState) +{ + yyGLRStackItem* yynewItem = yystackp->yynextFree; + yystackp->yyspaceLeft -= 1; + yystackp->yynextFree += 1; + yynewItem->yystate.yyisState = yyisState; + return yynewItem; +} + +/** Add a new semantic action that will execute the action for rule + * YYRULE on the semantic values in YYRHS to the list of + * alternative actions for YYSTATE. Assumes that YYRHS comes from + * stack #YYK of *YYSTACKP. */ +static void +yyaddDeferredAction (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyGLRState* yystate, + yyGLRState* yyrhs, yyRuleNum yyrule) +{ + yySemanticOption* yynewOption = + &yynewGLRStackItem (yystackp, yyfalse)->yyoption; + YY_ASSERT (!yynewOption->yyisState); + yynewOption->yystate = yyrhs; + yynewOption->yyrule = yyrule; + if (yystackp->yytops.yylookaheadNeeds[yyk]) + { + yynewOption->yyrawchar = yychar; + yynewOption->yyval = yylval;]b4_locations_if([ + yynewOption->yyloc = yylloc;])[ + } + else + yynewOption->yyrawchar = ]b4_symbol(empty, id)[; + yynewOption->yynext = yystate->yysemantics.yyfirstVal; + yystate->yysemantics.yyfirstVal = yynewOption; + + YY_RESERVE_GLRSTACK (yystackp); +} + + /* GLRStacks */ + +/** Initialize YYSET to a singleton set containing an empty stack. */ +static yybool +yyinitStateSet (yyGLRStateSet* yyset) +{ + yyset->yysize = 1; + yyset->yycapacity = 16; + yyset->yystates + = YY_CAST (yyGLRState**, + YYMALLOC (YY_CAST (YYSIZE_T, yyset->yycapacity) + * sizeof yyset->yystates[0])); + if (! yyset->yystates) + return yyfalse; + yyset->yystates[0] = YY_NULLPTR; + yyset->yylookaheadNeeds + = YY_CAST (yybool*, + YYMALLOC (YY_CAST (YYSIZE_T, yyset->yycapacity) + * sizeof yyset->yylookaheadNeeds[0])); + if (! yyset->yylookaheadNeeds) + { + YYFREE (yyset->yystates); + return yyfalse; + } + memset (yyset->yylookaheadNeeds, + 0, + YY_CAST (YYSIZE_T, yyset->yycapacity) * sizeof yyset->yylookaheadNeeds[0]); + return yytrue; +} + +static void yyfreeStateSet (yyGLRStateSet* yyset) +{ + YYFREE (yyset->yystates); + YYFREE (yyset->yylookaheadNeeds); +} + +/** Initialize *YYSTACKP to a single empty stack, with total maximum + * capacity for all stacks of YYSIZE. */ +static yybool +yyinitGLRStack (yyGLRStack* yystackp, YYPTRDIFF_T yysize) +{ + yystackp->yyerrState = 0; + yynerrs = 0; + yystackp->yyspaceLeft = yysize; + yystackp->yyitems + = YY_CAST (yyGLRStackItem*, + YYMALLOC (YY_CAST (YYSIZE_T, yysize) + * sizeof yystackp->yynextFree[0])); + if (!yystackp->yyitems) + return yyfalse; + yystackp->yynextFree = yystackp->yyitems; + yystackp->yysplitPoint = YY_NULLPTR; + yystackp->yylastDeleted = YY_NULLPTR; + return yyinitStateSet (&yystackp->yytops); +} + + +#if YYSTACKEXPANDABLE +# define YYRELOC(YYFROMITEMS, YYTOITEMS, YYX, YYTYPE) \ + &((YYTOITEMS) \ + - ((YYFROMITEMS) - YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX))))->YYTYPE + +/** If *YYSTACKP is expandable, extend it. WARNING: Pointers into the + stack from outside should be considered invalid after this call. + We always expand when there are 1 or fewer items left AFTER an + allocation, so that we can avoid having external pointers exist + across an allocation. */ +static void +yyexpandGLRStack (yyGLRStack* yystackp) +{ + yyGLRStackItem* yynewItems; + yyGLRStackItem* yyp0, *yyp1; + YYPTRDIFF_T yynewSize; + YYPTRDIFF_T yyn; + YYPTRDIFF_T yysize = yystackp->yynextFree - yystackp->yyitems; + if (YYMAXDEPTH - YYHEADROOM < yysize) + yyMemoryExhausted (yystackp); + yynewSize = 2*yysize; + if (YYMAXDEPTH < yynewSize) + yynewSize = YYMAXDEPTH; + yynewItems + = YY_CAST (yyGLRStackItem*, + YYMALLOC (YY_CAST (YYSIZE_T, yynewSize) + * sizeof yynewItems[0])); + if (! yynewItems) + yyMemoryExhausted (yystackp); + for (yyp0 = yystackp->yyitems, yyp1 = yynewItems, yyn = yysize; + 0 < yyn; + yyn -= 1, yyp0 += 1, yyp1 += 1) + { + *yyp1 = *yyp0; + if (*YY_REINTERPRET_CAST (yybool *, yyp0)) + { + yyGLRState* yys0 = &yyp0->yystate; + yyGLRState* yys1 = &yyp1->yystate; + if (yys0->yypred != YY_NULLPTR) + yys1->yypred = + YYRELOC (yyp0, yyp1, yys0->yypred, yystate); + if (! yys0->yyresolved && yys0->yysemantics.yyfirstVal != YY_NULLPTR) + yys1->yysemantics.yyfirstVal = + YYRELOC (yyp0, yyp1, yys0->yysemantics.yyfirstVal, yyoption); + } + else + { + yySemanticOption* yyv0 = &yyp0->yyoption; + yySemanticOption* yyv1 = &yyp1->yyoption; + if (yyv0->yystate != YY_NULLPTR) + yyv1->yystate = YYRELOC (yyp0, yyp1, yyv0->yystate, yystate); + if (yyv0->yynext != YY_NULLPTR) + yyv1->yynext = YYRELOC (yyp0, yyp1, yyv0->yynext, yyoption); + } + } + if (yystackp->yysplitPoint != YY_NULLPTR) + yystackp->yysplitPoint = YYRELOC (yystackp->yyitems, yynewItems, + yystackp->yysplitPoint, yystate); + + for (yyn = 0; yyn < yystackp->yytops.yysize; yyn += 1) + if (yystackp->yytops.yystates[yyn] != YY_NULLPTR) + yystackp->yytops.yystates[yyn] = + YYRELOC (yystackp->yyitems, yynewItems, + yystackp->yytops.yystates[yyn], yystate); + YYFREE (yystackp->yyitems); + yystackp->yyitems = yynewItems; + yystackp->yynextFree = yynewItems + yysize; + yystackp->yyspaceLeft = yynewSize - yysize; +} +#endif + +static void +yyfreeGLRStack (yyGLRStack* yystackp) +{ + YYFREE (yystackp->yyitems); + yyfreeStateSet (&yystackp->yytops); +} + +/** Assuming that YYS is a GLRState somewhere on *YYSTACKP, update the + * splitpoint of *YYSTACKP, if needed, so that it is at least as deep as + * YYS. */ +static inline void +yyupdateSplit (yyGLRStack* yystackp, yyGLRState* yys) +{ + if (yystackp->yysplitPoint != YY_NULLPTR && yystackp->yysplitPoint > yys) + yystackp->yysplitPoint = yys; +} + +/** Invalidate stack #YYK in *YYSTACKP. */ +static inline void +yymarkStackDeleted (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + if (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + yystackp->yylastDeleted = yystackp->yytops.yystates[yyk]; + yystackp->yytops.yystates[yyk] = YY_NULLPTR; +} + +/** Undelete the last stack in *YYSTACKP that was marked as deleted. Can + only be done once after a deletion, and only when all other stacks have + been deleted. */ +static void +yyundeleteLastStack (yyGLRStack* yystackp) +{ + if (yystackp->yylastDeleted == YY_NULLPTR || yystackp->yytops.yysize != 0) + return; + yystackp->yytops.yystates[0] = yystackp->yylastDeleted; + yystackp->yytops.yysize = 1; + YY_DPRINTF ((stderr, "Restoring last deleted stack as stack #0.\n")); + yystackp->yylastDeleted = YY_NULLPTR; +} + +static inline void +yyremoveDeletes (yyGLRStack* yystackp) +{ + YYPTRDIFF_T yyi, yyj; + yyi = yyj = 0; + while (yyj < yystackp->yytops.yysize) + { + if (yystackp->yytops.yystates[yyi] == YY_NULLPTR) + { + if (yyi == yyj) + YY_DPRINTF ((stderr, "Removing dead stacks.\n")); + yystackp->yytops.yysize -= 1; + } + else + { + yystackp->yytops.yystates[yyj] = yystackp->yytops.yystates[yyi]; + /* In the current implementation, it's unnecessary to copy + yystackp->yytops.yylookaheadNeeds[yyi] since, after + yyremoveDeletes returns, the parser immediately either enters + deterministic operation or shifts a token. However, it doesn't + hurt, and the code might evolve to need it. */ + yystackp->yytops.yylookaheadNeeds[yyj] = + yystackp->yytops.yylookaheadNeeds[yyi]; + if (yyj != yyi) + YY_DPRINTF ((stderr, "Rename stack %ld -> %ld.\n", + YY_CAST (long, yyi), YY_CAST (long, yyj))); + yyj += 1; + } + yyi += 1; + } +} + +/** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic + * value *YYVALP and source location *YYLOCP. */ +static inline void +yyglrShift (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yy_state_t yylrState, + YYPTRDIFF_T yyposn, + YYSTYPE* yyvalp]b4_locations_if([, YYLTYPE* yylocp])[) +{ + yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate; + + yynewState->yylrState = yylrState; + yynewState->yyposn = yyposn; + yynewState->yyresolved = yytrue; + yynewState->yypred = yystackp->yytops.yystates[yyk]; + yynewState->yysemantics.yyval = *yyvalp;]b4_locations_if([ + yynewState->yyloc = *yylocp;])[ + yystackp->yytops.yystates[yyk] = yynewState; + + YY_RESERVE_GLRSTACK (yystackp); +} + +/** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with the (unresolved) + * semantic value of YYRHS under the action for YYRULE. */ +static inline void +yyglrShiftDefer (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yy_state_t yylrState, + YYPTRDIFF_T yyposn, yyGLRState* yyrhs, yyRuleNum yyrule) +{ + yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate; + YY_ASSERT (yynewState->yyisState); + + yynewState->yylrState = yylrState; + yynewState->yyposn = yyposn; + yynewState->yyresolved = yyfalse; + yynewState->yypred = yystackp->yytops.yystates[yyk]; + yynewState->yysemantics.yyfirstVal = YY_NULLPTR; + yystackp->yytops.yystates[yyk] = yynewState; + + /* Invokes YY_RESERVE_GLRSTACK. */ + yyaddDeferredAction (yystackp, yyk, yynewState, yyrhs, yyrule); +} + +#if ]b4_api_PREFIX[DEBUG + +/*----------------------------------------------------------------------. +| Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. | +`----------------------------------------------------------------------*/ + +static inline void +yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, YYPTRDIFF_T yyk, + yyRuleNum yyrule]b4_user_formals[) +{ + int yynrhs = yyrhsLength (yyrule);]b4_locations_if([ + int yylow = 1;])[ + int yyi; + YY_FPRINTF ((stderr, "Reducing stack %ld by rule %d (line %d):\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule])); + if (! yynormal) + yyfillin (yyvsp, 1, -yynrhs); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YY_FPRINTF ((stderr, " $%d = ", yyi + 1)); + yy_symbol_print (stderr, + yy_accessing_symbol (yyvsp[yyi - yynrhs + 1].yystate.yylrState), + &yyvsp[yyi - yynrhs + 1].yystate.yysemantics.yyval]b4_locations_if([, + &]b4_rhs_location(yynrhs, yyi + 1))[]dnl + b4_user_args[); + if (!yyvsp[yyi - yynrhs + 1].yystate.yyresolved) + YY_FPRINTF ((stderr, " (unresolved)")); + YY_FPRINTF ((stderr, "\n")); + } +} +#endif + +/** Pop the symbols consumed by reduction #YYRULE from the top of stack + * #YYK of *YYSTACKP, and perform the appropriate semantic action on their + * semantic values. Assumes that all ambiguities in semantic values + * have been previously resolved. Set *YYVALP to the resulting value, + * and *YYLOCP to the computed location (if any). Return value is as + * for userAction. */ +static inline YYRESULTTAG +yydoAction (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyRuleNum yyrule, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + int yynrhs = yyrhsLength (yyrule); + + if (yystackp->yysplitPoint == YY_NULLPTR) + { + /* Standard special case: single stack. */ + yyGLRStackItem* yyrhs + = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yytops.yystates[yyk]); + YY_ASSERT (yyk == 0); + yystackp->yynextFree -= yynrhs; + yystackp->yyspaceLeft += yynrhs; + yystackp->yytops.yystates[0] = & yystackp->yynextFree[-1].yystate; + return yyuserAction (yyrule, yynrhs, yyrhs, yystackp, yyk, + yyvalp]b4_locuser_args[); + } + else + { + yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + yyGLRState* yys = yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred + = yystackp->yytops.yystates[yyk]; + int yyi;]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].yystate.yyloc = yys->yyloc;]])[ + for (yyi = 0; yyi < yynrhs; yyi += 1) + { + yys = yys->yypred; + YY_ASSERT (yys); + } + yyupdateSplit (yystackp, yys); + yystackp->yytops.yystates[yyk] = yys; + return yyuserAction (yyrule, yynrhs, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yystackp, yyk, yyvalp]b4_locuser_args[); + } +} + +/** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE, + * and push back on the resulting nonterminal symbol. Perform the + * semantic action associated with YYRULE and store its value with the + * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently + * unambiguous. Otherwise, store the deferred semantic action with + * the new state. If the new state would have an identical input + * position, LR state, and predecessor to an existing state on the stack, + * it is identified with that existing state, eliminating stack #YYK from + * *YYSTACKP. In this case, the semantic value is + * added to the options for the existing state's semantic value. + */ +static inline YYRESULTTAG +yyglrReduce (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyRuleNum yyrule, + yybool yyforceEval]b4_user_formals[) +{ + YYPTRDIFF_T yyposn = yystackp->yytops.yystates[yyk]->yyposn; + + if (yyforceEval || yystackp->yysplitPoint == YY_NULLPTR) + { + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ + + YYRESULTTAG yyflag = yydoAction (yystackp, yyk, yyrule, &yyval]b4_locuser_args([&yyloc])[); + if (yyflag == yyerr && yystackp->yysplitPoint != YY_NULLPTR) + YY_DPRINTF ((stderr, + "Parse on stack %ld rejected by rule %d (line %d).\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule])); + if (yyflag != yyok) + return yyflag; + yyglrShift (yystackp, yyk, + yyLRgotoState (yystackp->yytops.yystates[yyk]->yylrState, + yylhsNonterm (yyrule)), + yyposn, &yyval]b4_locations_if([, &yyloc])[); + } + else + { + YYPTRDIFF_T yyi; + int yyn; + yyGLRState* yys, *yys0 = yystackp->yytops.yystates[yyk]; + yy_state_t yynewLRState; + + for (yys = yystackp->yytops.yystates[yyk], yyn = yyrhsLength (yyrule); + 0 < yyn; yyn -= 1) + { + yys = yys->yypred; + YY_ASSERT (yys); + } + yyupdateSplit (yystackp, yys); + yynewLRState = yyLRgotoState (yys->yylrState, yylhsNonterm (yyrule)); + YY_DPRINTF ((stderr, + "Reduced stack %ld by rule %d (line %d); action deferred. " + "Now in state %d.\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule], + yynewLRState)); + for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) + if (yyi != yyk && yystackp->yytops.yystates[yyi] != YY_NULLPTR) + { + yyGLRState *yysplit = yystackp->yysplitPoint; + yyGLRState *yyp = yystackp->yytops.yystates[yyi]; + while (yyp != yys && yyp != yysplit && yyp->yyposn >= yyposn) + { + if (yyp->yylrState == yynewLRState && yyp->yypred == yys) + { + yyaddDeferredAction (yystackp, yyk, yyp, yys0, yyrule); + yymarkStackDeleted (yystackp, yyk); + YY_DPRINTF ((stderr, "Merging stack %ld into stack %ld.\n", + YY_CAST (long, yyk), YY_CAST (long, yyi))); + return yyok; + } + yyp = yyp->yypred; + } + } + yystackp->yytops.yystates[yyk] = yys; + yyglrShiftDefer (yystackp, yyk, yynewLRState, yyposn, yys0, yyrule); + } + return yyok; +} + +static YYPTRDIFF_T +yysplitStack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + if (yystackp->yysplitPoint == YY_NULLPTR) + { + YY_ASSERT (yyk == 0); + yystackp->yysplitPoint = yystackp->yytops.yystates[yyk]; + } + if (yystackp->yytops.yycapacity <= yystackp->yytops.yysize) + { + YYPTRDIFF_T state_size = YYSIZEOF (yystackp->yytops.yystates[0]); + YYPTRDIFF_T half_max_capacity = YYSIZE_MAXIMUM / 2 / state_size; + if (half_max_capacity < yystackp->yytops.yycapacity) + yyMemoryExhausted (yystackp); + yystackp->yytops.yycapacity *= 2; + + { + yyGLRState** yynewStates + = YY_CAST (yyGLRState**, + YYREALLOC (yystackp->yytops.yystates, + (YY_CAST (YYSIZE_T, yystackp->yytops.yycapacity) + * sizeof yynewStates[0]))); + if (yynewStates == YY_NULLPTR) + yyMemoryExhausted (yystackp); + yystackp->yytops.yystates = yynewStates; + } + + { + yybool* yynewLookaheadNeeds + = YY_CAST (yybool*, + YYREALLOC (yystackp->yytops.yylookaheadNeeds, + (YY_CAST (YYSIZE_T, yystackp->yytops.yycapacity) + * sizeof yynewLookaheadNeeds[0]))); + if (yynewLookaheadNeeds == YY_NULLPTR) + yyMemoryExhausted (yystackp); + yystackp->yytops.yylookaheadNeeds = yynewLookaheadNeeds; + } + } + yystackp->yytops.yystates[yystackp->yytops.yysize] + = yystackp->yytops.yystates[yyk]; + yystackp->yytops.yylookaheadNeeds[yystackp->yytops.yysize] + = yystackp->yytops.yylookaheadNeeds[yyk]; + yystackp->yytops.yysize += 1; + return yystackp->yytops.yysize - 1; +} + +/** True iff YYY0 and YYY1 represent identical options at the top level. + * That is, they represent the same rule applied to RHS symbols + * that produce the same terminal symbols. */ +static yybool +yyidenticalOptions (yySemanticOption* yyy0, yySemanticOption* yyy1) +{ + if (yyy0->yyrule == yyy1->yyrule) + { + yyGLRState *yys0, *yys1; + int yyn; + for (yys0 = yyy0->yystate, yys1 = yyy1->yystate, + yyn = yyrhsLength (yyy0->yyrule); + yyn > 0; + yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1) + if (yys0->yyposn != yys1->yyposn) + return yyfalse; + return yytrue; + } + else + return yyfalse; +} + +/** Assuming identicalOptions (YYY0,YYY1), destructively merge the + * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */ +static void +yymergeOptionSets (yySemanticOption* yyy0, yySemanticOption* yyy1) +{ + yyGLRState *yys0, *yys1; + int yyn; + for (yys0 = yyy0->yystate, yys1 = yyy1->yystate, + yyn = yyrhsLength (yyy0->yyrule); + 0 < yyn; + yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1) + { + if (yys0 == yys1) + break; + else if (yys0->yyresolved) + { + yys1->yyresolved = yytrue; + yys1->yysemantics.yyval = yys0->yysemantics.yyval; + } + else if (yys1->yyresolved) + { + yys0->yyresolved = yytrue; + yys0->yysemantics.yyval = yys1->yysemantics.yyval; + } + else + { + yySemanticOption** yyz0p = &yys0->yysemantics.yyfirstVal; + yySemanticOption* yyz1 = yys1->yysemantics.yyfirstVal; + while (yytrue) + { + if (yyz1 == *yyz0p || yyz1 == YY_NULLPTR) + break; + else if (*yyz0p == YY_NULLPTR) + { + *yyz0p = yyz1; + break; + } + else if (*yyz0p < yyz1) + { + yySemanticOption* yyz = *yyz0p; + *yyz0p = yyz1; + yyz1 = yyz1->yynext; + (*yyz0p)->yynext = yyz; + } + yyz0p = &(*yyz0p)->yynext; + } + yys1->yysemantics.yyfirstVal = yys0->yysemantics.yyfirstVal; + } + } +} + +/** Y0 and Y1 represent two possible actions to take in a given + * parsing state; return 0 if no combination is possible, + * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */ +static int +yypreference (yySemanticOption* y0, yySemanticOption* y1) +{ + yyRuleNum r0 = y0->yyrule, r1 = y1->yyrule; + int p0 = yydprec[r0], p1 = yydprec[r1]; + + if (p0 == p1) + { + if (yymerger[r0] == 0 || yymerger[r0] != yymerger[r1]) + return 0; + else + return 1; + } + if (p0 == 0 || p1 == 0) + return 0; + if (p0 < p1) + return 3; + if (p1 < p0) + return 2; + return 0; +} + +static YYRESULTTAG +yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp]b4_user_formals[); + + +/** Resolve the previous YYN states starting at and including state YYS + * on *YYSTACKP. If result != yyok, some states may have been left + * unresolved possibly with empty semantic option chains. Regardless + * of whether result = yyok, each state has been left with consistent + * data so that yydestroyGLRState can be invoked if necessary. */ +static YYRESULTTAG +yyresolveStates (yyGLRState* yys, int yyn, + yyGLRStack* yystackp]b4_user_formals[) +{ + if (0 < yyn) + { + YY_ASSERT (yys->yypred); + YYCHK (yyresolveStates (yys->yypred, yyn-1, yystackp]b4_user_args[)); + if (! yys->yyresolved) + YYCHK (yyresolveValue (yys, yystackp]b4_user_args[)); + } + return yyok; +} + +/** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its + * user action, and return the semantic value and location in *YYVALP + * and *YYLOCP. Regardless of whether result = yyok, all RHS states + * have been destroyed (assuming the user action destroys all RHS + * semantic values if invoked). */ +static YYRESULTTAG +yyresolveAction (yySemanticOption* yyopt, yyGLRStack* yystackp, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + int yynrhs = yyrhsLength (yyopt->yyrule); + YYRESULTTAG yyflag = + yyresolveStates (yyopt->yystate, yynrhs, yystackp]b4_user_args[); + if (yyflag != yyok) + { + yyGLRState *yys; + for (yys = yyopt->yystate; yynrhs > 0; yys = yys->yypred, yynrhs -= 1) + yydestroyGLRState ("Cleanup: popping", yys]b4_user_args[); + return yyflag; + } + + yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred = yyopt->yystate;]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].yystate.yyloc = yyopt->yystate->yyloc;]])[ + { + int yychar_current = yychar; + YYSTYPE yylval_current = yylval;]b4_locations_if([ + YYLTYPE yylloc_current = yylloc;])[ + yychar = yyopt->yyrawchar; + yylval = yyopt->yyval;]b4_locations_if([ + yylloc = yyopt->yyloc;])[ + yyflag = yyuserAction (yyopt->yyrule, yynrhs, + yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yystackp, -1, yyvalp]b4_locuser_args[); + yychar = yychar_current; + yylval = yylval_current;]b4_locations_if([ + yylloc = yylloc_current;])[ + } + return yyflag; +} + +#if ]b4_api_PREFIX[DEBUG +static void +yyreportTree (yySemanticOption* yyx, int yyindent) +{ + int yynrhs = yyrhsLength (yyx->yyrule); + int yyi; + yyGLRState* yys; + yyGLRState* yystates[1 + YYMAXRHS]; + yyGLRState yyleftmost_state; + + for (yyi = yynrhs, yys = yyx->yystate; 0 < yyi; yyi -= 1, yys = yys->yypred) + yystates[yyi] = yys; + if (yys == YY_NULLPTR) + { + yyleftmost_state.yyposn = 0; + yystates[0] = &yyleftmost_state; + } + else + yystates[0] = yys; + + if (yyx->yystate->yyposn < yys->yyposn + 1) + YY_FPRINTF ((stderr, "%*s%s -> \n", + yyindent, "", yysymbol_name (yylhsNonterm (yyx->yyrule)), + yyx->yyrule - 1)); + else + YY_FPRINTF ((stderr, "%*s%s -> \n", + yyindent, "", yysymbol_name (yylhsNonterm (yyx->yyrule)), + yyx->yyrule - 1, YY_CAST (long, yys->yyposn + 1), + YY_CAST (long, yyx->yystate->yyposn))); + for (yyi = 1; yyi <= yynrhs; yyi += 1) + { + if (yystates[yyi]->yyresolved) + { + if (yystates[yyi-1]->yyposn+1 > yystates[yyi]->yyposn) + YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "", + yysymbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)))); + else + YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "", + yysymbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)), + YY_CAST (long, yystates[yyi-1]->yyposn + 1), + YY_CAST (long, yystates[yyi]->yyposn))); + } + else + yyreportTree (yystates[yyi]->yysemantics.yyfirstVal, yyindent+2); + } +} +#endif + +static YYRESULTTAG +yyreportAmbiguity (yySemanticOption* yyx0, + yySemanticOption* yyx1]b4_pure_formals[) +{ + YY_USE (yyx0); + YY_USE (yyx1); + +#if ]b4_api_PREFIX[DEBUG + YY_FPRINTF ((stderr, "Ambiguity detected.\n")); + YY_FPRINTF ((stderr, "Option 1,\n")); + yyreportTree (yyx0, 2); + YY_FPRINTF ((stderr, "\nOption 2,\n")); + yyreportTree (yyx1, 2); + YY_FPRINTF ((stderr, "\n")); +#endif + + yyerror (]b4_yyerror_args[YY_("syntax is ambiguous")); + return yyabort; +}]b4_locations_if([[ + +/** Resolve the locations for each of the YYN1 states in *YYSTACKP, + * ending at YYS1. Has no effect on previously resolved states. + * The first semantic option of a state is always chosen. */ +static void +yyresolveLocations (yyGLRState *yys1, int yyn1, + yyGLRStack *yystackp]b4_user_formals[) +{ + if (0 < yyn1) + { + yyresolveLocations (yys1->yypred, yyn1 - 1, yystackp]b4_user_args[); + if (!yys1->yyresolved) + { + yyGLRStackItem yyrhsloc[1 + YYMAXRHS]; + int yynrhs; + yySemanticOption *yyoption = yys1->yysemantics.yyfirstVal; + YY_ASSERT (yyoption); + yynrhs = yyrhsLength (yyoption->yyrule); + if (0 < yynrhs) + { + yyGLRState *yys; + int yyn; + yyresolveLocations (yyoption->yystate, yynrhs, + yystackp]b4_user_args[); + for (yys = yyoption->yystate, yyn = yynrhs; + yyn > 0; + yys = yys->yypred, yyn -= 1) + yyrhsloc[yyn].yystate.yyloc = yys->yyloc; + } + else + { + /* Both yyresolveAction and yyresolveLocations traverse the GSS + in reverse rightmost order. It is only necessary to invoke + yyresolveLocations on a subforest for which yyresolveAction + would have been invoked next had an ambiguity not been + detected. Thus the location of the previous state (but not + necessarily the previous state itself) is guaranteed to be + resolved already. */ + yyGLRState *yyprevious = yyoption->yystate; + yyrhsloc[0].yystate.yyloc = yyprevious->yyloc; + } + YYLLOC_DEFAULT ((yys1->yyloc), yyrhsloc, yynrhs); + } + } +}]])[ + +/** Resolve the ambiguity represented in state YYS in *YYSTACKP, + * perform the indicated actions, and set the semantic value of YYS. + * If result != yyok, the chain of semantic options in YYS has been + * cleared instead or it has been left unmodified except that + * redundant options may have been removed. Regardless of whether + * result = yyok, YYS has been left with consistent data so that + * yydestroyGLRState can be invoked if necessary. */ +static YYRESULTTAG +yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp]b4_user_formals[) +{ + yySemanticOption* yyoptionList = yys->yysemantics.yyfirstVal; + yySemanticOption* yybest = yyoptionList; + yySemanticOption** yypp; + yybool yymerge = yyfalse; + YYSTYPE yyval; + YYRESULTTAG yyflag;]b4_locations_if([ + YYLTYPE *yylocp = &yys->yyloc;])[ + + for (yypp = &yyoptionList->yynext; *yypp != YY_NULLPTR; ) + { + yySemanticOption* yyp = *yypp; + + if (yyidenticalOptions (yybest, yyp)) + { + yymergeOptionSets (yybest, yyp); + *yypp = yyp->yynext; + } + else + { + switch (yypreference (yybest, yyp)) + { + case 0:]b4_locations_if([[ + yyresolveLocations (yys, 1, yystackp]b4_user_args[);]])[ + return yyreportAmbiguity (yybest, yyp]b4_pure_args[); + break; + case 1: + yymerge = yytrue; + break; + case 2: + break; + case 3: + yybest = yyp; + yymerge = yyfalse; + break; + default: + /* This cannot happen so it is not worth a YY_ASSERT (yyfalse), + but some compilers complain if the default case is + omitted. */ + break; + } + yypp = &yyp->yynext; + } + } + + if (yymerge) + { + yySemanticOption* yyp; + int yyprec = yydprec[yybest->yyrule]; + yyflag = yyresolveAction (yybest, yystackp, &yyval]b4_locuser_args[); + if (yyflag == yyok) + for (yyp = yybest->yynext; yyp != YY_NULLPTR; yyp = yyp->yynext) + { + if (yyprec == yydprec[yyp->yyrule]) + { + YYSTYPE yyval_other;]b4_locations_if([ + YYLTYPE yydummy;])[ + yyflag = yyresolveAction (yyp, yystackp, &yyval_other]b4_locuser_args([&yydummy])[); + if (yyflag != yyok) + { + yydestruct ("Cleanup: discarding incompletely merged value for", + yy_accessing_symbol (yys->yylrState), + &yyval]b4_locuser_args[); + break; + } + yyuserMerge (yymerger[yyp->yyrule], &yyval, &yyval_other); + } + } + } + else + yyflag = yyresolveAction (yybest, yystackp, &yyval]b4_locuser_args([yylocp])[); + + if (yyflag == yyok) + { + yys->yyresolved = yytrue; + yys->yysemantics.yyval = yyval; + } + else + yys->yysemantics.yyfirstVal = YY_NULLPTR; + return yyflag; +} + +static YYRESULTTAG +yyresolveStack (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yysplitPoint != YY_NULLPTR) + { + yyGLRState* yys; + int yyn; + + for (yyn = 0, yys = yystackp->yytops.yystates[0]; + yys != yystackp->yysplitPoint; + yys = yys->yypred, yyn += 1) + continue; + YYCHK (yyresolveStates (yystackp->yytops.yystates[0], yyn, yystackp + ]b4_user_args[)); + } + return yyok; +} + +/** Called when returning to deterministic operation to clean up the extra + * stacks. */ +static void +yycompressStack (yyGLRStack* yystackp) +{ + /* yyr is the state after the split point. */ + yyGLRState *yyr; + + if (yystackp->yytops.yysize != 1 || yystackp->yysplitPoint == YY_NULLPTR) + return; + + { + yyGLRState *yyp, *yyq; + for (yyp = yystackp->yytops.yystates[0], yyq = yyp->yypred, yyr = YY_NULLPTR; + yyp != yystackp->yysplitPoint; + yyr = yyp, yyp = yyq, yyq = yyp->yypred) + yyp->yypred = yyr; + } + + yystackp->yyspaceLeft += yystackp->yynextFree - yystackp->yyitems; + yystackp->yynextFree = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yysplitPoint) + 1; + yystackp->yyspaceLeft -= yystackp->yynextFree - yystackp->yyitems; + yystackp->yysplitPoint = YY_NULLPTR; + yystackp->yylastDeleted = YY_NULLPTR; + + while (yyr != YY_NULLPTR) + { + yystackp->yynextFree->yystate = *yyr; + yyr = yyr->yypred; + yystackp->yynextFree->yystate.yypred = &yystackp->yynextFree[-1].yystate; + yystackp->yytops.yystates[0] = &yystackp->yynextFree->yystate; + yystackp->yynextFree += 1; + yystackp->yyspaceLeft -= 1; + } +} + +static YYRESULTTAG +yyprocessOneStack (yyGLRStack* yystackp, YYPTRDIFF_T yyk, + YYPTRDIFF_T yyposn]b4_pure_formals[) +{ + while (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + { + yy_state_t yystate = yystackp->yytops.yystates[yyk]->yylrState; + YY_DPRINTF ((stderr, "Stack %ld Entering state %d\n", + YY_CAST (long, yyk), yystate)); + + YY_ASSERT (yystate != YYFINAL); + + if (yyisDefaultedState (yystate)) + { + YYRESULTTAG yyflag; + yyRuleNum yyrule = yydefaultAction (yystate); + if (yyrule == 0) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + return yyok; + } + yyflag = yyglrReduce (yystackp, yyk, yyrule, yyimmediate[yyrule]]b4_user_args[); + if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, + "Stack %ld dies " + "(predicate failure or explicit user error).\n", + YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + return yyok; + } + if (yyflag != yyok) + return yyflag; + } + else + { + yysymbol_kind_t yytoken = ]b4_yygetToken_call[; + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts); + yystackp->yytops.yylookaheadNeeds[yyk] = yytrue; + + for (/* nothing */; *yyconflicts; yyconflicts += 1) + { + YYRESULTTAG yyflag; + YYPTRDIFF_T yynewStack = yysplitStack (yystackp, yyk); + YY_DPRINTF ((stderr, "Splitting off stack %ld from %ld.\n", + YY_CAST (long, yynewStack), YY_CAST (long, yyk))); + yyflag = yyglrReduce (yystackp, yynewStack, + *yyconflicts, + yyimmediate[*yyconflicts]]b4_user_args[); + if (yyflag == yyok) + YYCHK (yyprocessOneStack (yystackp, yynewStack, + yyposn]b4_pure_args[)); + else if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yynewStack))); + yymarkStackDeleted (yystackp, yynewStack); + } + else + return yyflag; + } + + if (yyisShiftAction (yyaction)) + break; + else if (yyisErrorAction (yyaction)) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + break; + } + else + { + YYRESULTTAG yyflag = yyglrReduce (yystackp, yyk, -yyaction, + yyimmediate[-yyaction]]b4_user_args[); + if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, + "Stack %ld dies " + "(predicate failure or explicit user error).\n", + YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + break; + } + else if (yyflag != yyok) + return yyflag; + } + } + } + return yyok; +} + +]b4_parse_error_case([simple], [], +[[/* Put in YYARG at most YYARGN of the expected tokens given the + current YYSTACKP, and return the number of tokens stored in YYARG. If + YYARG is null, return the number of expected tokens (guaranteed to + be less than YYNTOKENS). */ +static int +yypcontext_expected_tokens (const yyGLRStack* yystackp, + yysymbol_kind_t yyarg[], int yyargn) +{ + /* Actual size of YYARG. */ + int yycount = 0; + int yyn = yypact[yystackp->yytops.yystates[0]->yylrState]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (yysymbol_kind_t, yyx); + } + } + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; +}]])[ + +]b4_parse_error_bmatch( + [custom], +[[/* User defined function to report a syntax error. */ +typedef yyGLRStack yypcontext_t; +static int +yyreport_syntax_error (const yyGLRStack* yystackp]b4_user_formals[); + +/* The kind of the lookahead of this context. */ +static yysymbol_kind_t +yypcontext_token (const yyGLRStack *yystackp) YY_ATTRIBUTE_UNUSED; + +static yysymbol_kind_t +yypcontext_token (const yyGLRStack *yystackp) +{ + YY_USE (yystackp); + yysymbol_kind_t yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + return yytoken; +} + +]b4_locations_if([[/* The location of the lookahead of this context. */ +static const YYLTYPE * +yypcontext_location (const yyGLRStack *yystackp) YY_ATTRIBUTE_UNUSED; + +static const YYLTYPE * +yypcontext_location (const yyGLRStack *yystackp) +{ + YY_USE (yystackp); + return &yylloc; +}]])], + [detailed\|verbose], +[[static int +yy_syntax_error_arguments (const yyGLRStack* yystackp, + yysymbol_kind_t yyarg[], int yyargn) +{ + yysymbol_kind_t yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + /* Actual size of YYARG. */ + int yycount = 0; + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != ]b4_symbol(empty, kind)[) + { + int yyn; + if (yyarg) + yyarg[yycount] = yytoken; + ++yycount; + yyn = yypcontext_expected_tokens (yystackp, + yyarg ? yyarg + 1 : yyarg, yyargn - 1); + if (yyn == YYENOMEM) + return YYENOMEM; + else + yycount += yyn; + } + return yycount; +} +]])[ + + +static void +yyreportSyntaxError (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yyerrState != 0) + return; +]b4_parse_error_case( + [custom], +[[ if (yyreport_syntax_error (yystackp]b4_user_args[)) + yyMemoryExhausted (yystackp);]], + [simple], +[[ yyerror (]b4_lyyerror_args[YY_("syntax error"));]], +[[ { + yybool yysize_overflow = yyfalse; + char* yymsg = YY_NULLPTR; + enum { YYARGS_MAX = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULLPTR; + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ + yysymbol_kind_t yyarg[YYARGS_MAX]; + /* Cumulated lengths of YYARG. */ + YYPTRDIFF_T yysize = 0; + + /* Actual size of YYARG. */ + int yycount + = yy_syntax_error_arguments (yystackp, yyarg, YYARGS_MAX); + if (yycount == YYENOMEM) + yyMemoryExhausted (yystackp); + + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: /* Avoid compiler warnings. */ + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + /* Compute error message size. Don't count the "%s"s, but reserve + room for the terminator. */ + yysize = yystrlen (yyformat) - 2 * yycount + 1; + { + int yyi; + for (yyi = 0; yyi < yycount; ++yyi) + { + YYPTRDIFF_T yysz + = ]b4_parse_error_case( + [verbose], [[yytnamerr (YY_NULLPTR, yytname[yyarg[yyi]])]], + [[yystrlen (yysymbol_name (yyarg[yyi]))]]);[ + if (YYSIZE_MAXIMUM - yysize < yysz) + yysize_overflow = yytrue; + else + yysize += yysz; + } + } + + if (!yysize_overflow) + yymsg = YY_CAST (char *, YYMALLOC (YY_CAST (YYSIZE_T, yysize))); + + if (yymsg) + { + char *yyp = yymsg; + int yyi = 0; + while ((*yyp = *yyformat)) + { + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + {]b4_parse_error_case([verbose], [[ + yyp += yytnamerr (yyp, yytname[yyarg[yyi++]]);]], [[ + yyp = yystpcpy (yyp, yysymbol_name (yyarg[yyi++]));]])[ + yyformat += 2; + } + else + { + ++yyp; + ++yyformat; + } + } + yyerror (]b4_lyyerror_args[yymsg); + YYFREE (yymsg); + } + else + { + yyerror (]b4_lyyerror_args[YY_("syntax error")); + yyMemoryExhausted (yystackp); + } + }]])[ + yynerrs += 1; +} + +/* Recover from a syntax error on *YYSTACKP, assuming that *YYSTACKP->YYTOKENP, + yylval, and yylloc are the syntactic category, semantic value, and location + of the lookahead. */ +static void +yyrecoverSyntaxError (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yyerrState == 3) + /* We just shifted the error token and (perhaps) took some + reductions. Skip tokens until we can proceed. */ + while (yytrue) + { + yysymbol_kind_t yytoken; + int yyj; + if (yychar == ]b4_symbol(eof, [id])[) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); + if (yychar != ]b4_symbol(empty, id)[) + {]b4_locations_if([[ + /* We throw away the lookahead, but the error range + of the shifted error token must take it into account. */ + yyGLRState *yys = yystackp->yytops.yystates[0]; + yyGLRStackItem yyerror_range[3]; + yyerror_range[1].yystate.yyloc = yys->yyloc; + yyerror_range[2].yystate.yyloc = yylloc; + YYLLOC_DEFAULT ((yys->yyloc), yyerror_range, 2);]])[ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Error: discarding", + yytoken, &yylval]b4_locuser_args([&yylloc])[); + yychar = ]b4_symbol(empty, id)[; + } + yytoken = ]b4_yygetToken_call[; + yyj = yypact[yystackp->yytops.yystates[0]->yylrState]; + if (yypact_value_is_default (yyj)) + return; + yyj += yytoken; + if (yyj < 0 || YYLAST < yyj || yycheck[yyj] != yytoken) + { + if (yydefact[yystackp->yytops.yystates[0]->yylrState] != 0) + return; + } + else if (! yytable_value_is_error (yytable[yyj])) + return; + } + + /* Reduce to one stack. */ + { + YYPTRDIFF_T yyk; + for (yyk = 0; yyk < yystackp->yytops.yysize; yyk += 1) + if (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + break; + if (yyk >= yystackp->yytops.yysize) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); + for (yyk += 1; yyk < yystackp->yytops.yysize; yyk += 1) + yymarkStackDeleted (yystackp, yyk); + yyremoveDeletes (yystackp); + yycompressStack (yystackp); + } + + /* Pop stack until we find a state that shifts the error token. */ + yystackp->yyerrState = 3; + while (yystackp->yytops.yystates[0] != YY_NULLPTR) + { + yyGLRState *yys = yystackp->yytops.yystates[0]; + int yyj = yypact[yys->yylrState]; + if (! yypact_value_is_default (yyj)) + { + yyj += ]b4_symbol(error, kind)[; + if (0 <= yyj && yyj <= YYLAST && yycheck[yyj] == ]b4_symbol(error, kind)[ + && yyisShiftAction (yytable[yyj])) + { + /* Shift the error token. */ + int yyaction = yytable[yyj];]b4_locations_if([[ + /* First adjust its location.*/ + YYLTYPE yyerrloc; + yystackp->yyerror_range[2].yystate.yyloc = yylloc; + YYLLOC_DEFAULT (yyerrloc, (yystackp->yyerror_range), 2);]])[ + YY_SYMBOL_PRINT ("Shifting", yy_accessing_symbol (yyaction), + &yylval, &yyerrloc); + yyglrShift (yystackp, 0, yyaction, + yys->yyposn, &yylval]b4_locations_if([, &yyerrloc])[); + yys = yystackp->yytops.yystates[0]; + break; + } + }]b4_locations_if([[ + yystackp->yyerror_range[1].yystate.yyloc = yys->yyloc;]])[ + if (yys->yypred != YY_NULLPTR) + yydestroyGLRState ("Error: popping", yys]b4_user_args[); + yystackp->yytops.yystates[0] = yys->yypred; + yystackp->yynextFree -= 1; + yystackp->yyspaceLeft += 1; + } + if (yystackp->yytops.yystates[0] == YY_NULLPTR) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); +} + +#define YYCHK1(YYE) \ + do { \ + switch (YYE) { \ + case yyok: break; \ + case yyabort: goto yyabortlab; \ + case yyaccept: goto yyacceptlab; \ + case yyerr: goto yyuser_error; \ + case yynomem: goto yyexhaustedlab; \ + default: goto yybuglab; \ + } \ + } while (0) + +/*----------. +| yyparse. | +`----------*/ + +int +]b4_glr_cc_if([yy_parse_impl], [yyparse])[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + int yyresult; + yyGLRStack yystack; + yyGLRStack* const yystackp = &yystack; + YYPTRDIFF_T yyposn; + + YY_DPRINTF ((stderr, "Starting parse\n")); + + yychar = ]b4_symbol(empty, id)[; + yylval = yyval_default;]b4_locations_if([ + yylloc = yyloc_default;])[ +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl +[ + if (! yyinitGLRStack (yystackp, YYINITDEPTH)) + goto yyexhaustedlab; + switch (YYSETJMP (yystack.yyexception_buffer)) + { + case 0: break; + case 1: goto yyabortlab; + case 2: goto yyexhaustedlab; + default: goto yybuglab; + } + yyglrShift (&yystack, 0, 0, 0, &yylval]b4_locations_if([, &yylloc])[); + yyposn = 0; + + while (yytrue) + { + /* For efficiency, we have two loops, the first of which is + specialized to deterministic operation (single stack, no + potential ambiguity). */ + /* Standard mode. */ + while (yytrue) + { + yy_state_t yystate = yystack.yytops.yystates[0]->yylrState; + YY_DPRINTF ((stderr, "Entering state %d\n", yystate)); + if (yystate == YYFINAL) + goto yyacceptlab; + if (yyisDefaultedState (yystate)) + { + yyRuleNum yyrule = yydefaultAction (yystate); + if (yyrule == 0) + {]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + YYCHK1 (yyglrReduce (&yystack, 0, yyrule, yytrue]b4_user_args[)); + } + else + { + yysymbol_kind_t yytoken = ]b4_yygetToken_call;[ + const short* yyconflicts; + int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts); + if (*yyconflicts) + /* Enter nondeterministic mode. */ + break; + if (yyisShiftAction (yyaction)) + { + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + yychar = ]b4_symbol(empty, id)[; + yyposn += 1; + yyglrShift (&yystack, 0, yyaction, yyposn, &yylval]b4_locations_if([, &yylloc])[); + if (0 < yystack.yyerrState) + yystack.yyerrState -= 1; + } + else if (yyisErrorAction (yyaction)) + {]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + /* Issue an error message unless the scanner already + did. */ + if (yychar != ]b4_symbol(error, id)[) + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + else + YYCHK1 (yyglrReduce (&yystack, 0, -yyaction, yytrue]b4_user_args[)); + } + } + + /* Nondeterministic mode. */ + while (yytrue) + { + yysymbol_kind_t yytoken_to_shift; + YYPTRDIFF_T yys; + + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + yystackp->yytops.yylookaheadNeeds[yys] = yychar != ]b4_symbol(empty, id)[; + + /* yyprocessOneStack returns one of three things: + + - An error flag. If the caller is yyprocessOneStack, it + immediately returns as well. When the caller is finally + yyparse, it jumps to an error label via YYCHK1. + + - yyok, but yyprocessOneStack has invoked yymarkStackDeleted + (&yystack, yys), which sets the top state of yys to NULL. Thus, + yyparse's following invocation of yyremoveDeletes will remove + the stack. + + - yyok, when ready to shift a token. + + Except in the first case, yyparse will invoke yyremoveDeletes and + then shift the next token onto all remaining stacks. This + synchronization of the shift (that is, after all preceding + reductions on all stacks) helps prevent double destructor calls + on yylval in the event of memory exhaustion. */ + + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + YYCHK1 (yyprocessOneStack (&yystack, yys, yyposn]b4_lpure_args[)); + yyremoveDeletes (&yystack); + if (yystack.yytops.yysize == 0) + { + yyundeleteLastStack (&yystack); + if (yystack.yytops.yysize == 0) + yyFail (&yystack][]b4_lpure_args[, YY_("syntax error")); + YYCHK1 (yyresolveStack (&yystack]b4_user_args[)); + YY_DPRINTF ((stderr, "Returning to deterministic operation.\n"));]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + + /* If any yyglrShift call fails, it will fail after shifting. Thus, + a copy of yylval will already be on stack 0 in the event of a + failure in the following loop. Thus, yychar is set to ]b4_symbol(empty, id)[ + before the loop to make sure the user destructor for yylval isn't + called twice. */ + yytoken_to_shift = YYTRANSLATE (yychar); + yychar = ]b4_symbol(empty, id)[; + yyposn += 1; + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + { + yy_state_t yystate = yystack.yytops.yystates[yys]->yylrState; + const short* yyconflicts; + int yyaction = yygetLRActions (yystate, yytoken_to_shift, + &yyconflicts); + /* Note that yyconflicts were handled by yyprocessOneStack. */ + YY_DPRINTF ((stderr, "On stack %ld, ", YY_CAST (long, yys))); + YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, &yylval, &yylloc); + yyglrShift (&yystack, yys, yyaction, yyposn, + &yylval]b4_locations_if([, &yylloc])[); + YY_DPRINTF ((stderr, "Stack %ld now in state %d\n", + YY_CAST (long, yys), + yystack.yytops.yystates[yys]->yylrState)); + } + + if (yystack.yytops.yysize == 1) + { + YYCHK1 (yyresolveStack (&yystack]b4_user_args[)); + YY_DPRINTF ((stderr, "Returning to deterministic operation.\n")); + yycompressStack (&yystack); + break; + } + } + continue; + yyuser_error: + yyrecoverSyntaxError (&yystack]b4_user_args[); + yyposn = yystack.yytops.yystates[0]->yyposn; + } + + yyacceptlab: + yyresult = 0; + goto yyreturnlab; + + yybuglab: + YY_ASSERT (yyfalse); + goto yyabortlab; + + yyabortlab: + yyresult = 1; + goto yyreturnlab; + + yyexhaustedlab: + yyerror (]b4_lyyerror_args[YY_("memory exhausted")); + yyresult = 2; + goto yyreturnlab; + + yyreturnlab: + if (yychar != ]b4_symbol(empty, id)[) + yydestruct ("Cleanup: discarding lookahead", + YYTRANSLATE (yychar), &yylval]b4_locuser_args([&yylloc])[); + + /* If the stack is well-formed, pop the stack until it is empty, + destroying its entries as we go. But free the stack regardless + of whether it is well-formed. */ + if (yystack.yyitems) + { + yyGLRState** yystates = yystack.yytops.yystates; + if (yystates) + { + YYPTRDIFF_T yysize = yystack.yytops.yysize; + YYPTRDIFF_T yyk; + for (yyk = 0; yyk < yysize; yyk += 1) + if (yystates[yyk]) + { + while (yystates[yyk]) + { + yyGLRState *yys = yystates[yyk];]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yys->yyloc;]])[ + if (yys->yypred != YY_NULLPTR) + yydestroyGLRState ("Cleanup: popping", yys]b4_user_args[); + yystates[yyk] = yys->yypred; + yystack.yynextFree -= 1; + yystack.yyspaceLeft += 1; + } + break; + } + } + yyfreeGLRStack (&yystack); + } + + return yyresult; +} + +/* DEBUGGING ONLY */ +#if ]b4_api_PREFIX[DEBUG +/* Print *YYS and its predecessors. */ +static void +yy_yypstack (yyGLRState* yys) +{ + if (yys->yypred) + { + yy_yypstack (yys->yypred); + YY_FPRINTF ((stderr, " -> ")); + } + YY_FPRINTF ((stderr, "%d@@%ld", yys->yylrState, YY_CAST (long, yys->yyposn))); +} + +/* Print YYS (possibly NULL) and its predecessors. */ +static void +yypstates (yyGLRState* yys) +{ + if (yys == YY_NULLPTR) + YY_FPRINTF ((stderr, "")); + else + yy_yypstack (yys); + YY_FPRINTF ((stderr, "\n")); +} + +/* Print the stack #YYK. */ +static void +yypstack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + yypstates (yystackp->yytops.yystates[yyk]); +} + +/* Print all the stacks. */ +static void +yypdumpstack (yyGLRStack* yystackp) +{ +#define YYINDEX(YYX) \ + YY_CAST (long, \ + ((YYX) \ + ? YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX)) - yystackp->yyitems \ + : -1)) + + yyGLRStackItem* yyp; + for (yyp = yystackp->yyitems; yyp < yystackp->yynextFree; yyp += 1) + { + YY_FPRINTF ((stderr, "%3ld. ", + YY_CAST (long, yyp - yystackp->yyitems))); + if (*YY_REINTERPRET_CAST (yybool *, yyp)) + { + YY_ASSERT (yyp->yystate.yyisState); + YY_ASSERT (yyp->yyoption.yyisState); + YY_FPRINTF ((stderr, "Res: %d, LR State: %d, posn: %ld, pred: %ld", + yyp->yystate.yyresolved, yyp->yystate.yylrState, + YY_CAST (long, yyp->yystate.yyposn), + YYINDEX (yyp->yystate.yypred))); + if (! yyp->yystate.yyresolved) + YY_FPRINTF ((stderr, ", firstVal: %ld", + YYINDEX (yyp->yystate.yysemantics.yyfirstVal))); + } + else + { + YY_ASSERT (!yyp->yystate.yyisState); + YY_ASSERT (!yyp->yyoption.yyisState); + YY_FPRINTF ((stderr, "Option. rule: %d, state: %ld, next: %ld", + yyp->yyoption.yyrule - 1, + YYINDEX (yyp->yyoption.yystate), + YYINDEX (yyp->yyoption.yynext))); + } + YY_FPRINTF ((stderr, "\n")); + } + + YY_FPRINTF ((stderr, "Tops:")); + { + YYPTRDIFF_T yyi; + for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) + YY_FPRINTF ((stderr, "%ld: %ld; ", YY_CAST (long, yyi), + YYINDEX (yystackp->yytops.yystates[yyi]))); + YY_FPRINTF ((stderr, "\n")); + } +#undef YYINDEX +} +#endif + +#undef yylval +#undef yychar +#undef yynerrs]b4_locations_if([ +#undef yylloc]) + +m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define yyparse ]b4_prefix[parse +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char +#define yydebug ]b4_prefix[debug +#define yynerrs ]b4_prefix[nerrs]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])])[ + +]b4_glr_cc_if([b4_glr_cc_pre_epilogue +b4_glr_cc_cleanup])[ +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr.cc b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr.cc new file mode 100644 index 0000000..7181402 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr.cc @@ -0,0 +1,397 @@ +# C++ GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# This skeleton produces a C++ class that encapsulates a C glr parser. +# This is in order to reduce the maintenance burden. The glr.c +# skeleton is clean and pure enough so that there are no real +# problems. The C++ interface is the same as that of lalr1.cc. In +# fact, glr.c can replace yacc.c without the user noticing any +# difference, and similarly for glr.cc replacing lalr1.cc. +# +# The passing of parse-params +# +# The additional arguments are stored as members of the parser +# object, yyparser. The C routines need to carry yyparser +# throughout the C parser; that's easy: make yyparser an +# additional parse-param. But because the C++ skeleton needs to +# know the "real" original parse-param, we save them +# (b4_parse_param_orig). Note that b4_parse_param is overquoted +# (and c.m4 strips one level of quotes). This is a PITA, and +# explains why there are so many levels of quotes. +# +# The locations +# +# We use location.cc just like lalr1.cc, but because glr.c stores +# the locations in a union, the position and location classes +# must not have a constructor. Therefore, contrary to lalr1.cc, we +# must not define "b4_location_constructors". As a consequence the +# user must initialize the first positions (in particular the +# filename member). + +# We require a pure interface. +m4_define([b4_pure_flag], [1]) + +m4_include(b4_skeletonsdir/[c++.m4]) +b4_bison_locations_if([m4_include(b4_skeletonsdir/[location.cc])]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +# Save the parse parameters. +m4_define([b4_parse_param_orig], m4_defn([b4_parse_param])) + +# b4_parse_param_wrap +# ------------------- +# New ones. +m4_ifset([b4_parse_param], +[m4_define([b4_parse_param_wrap], + [[b4_namespace_ref::b4_parser_class[& yyparser], [[yyparser]]],] +m4_defn([b4_parse_param]))], +[m4_define([b4_parse_param_wrap], + [[b4_namespace_ref::b4_parser_class[& yyparser], [[yyparser]]]]) +]) + + +# b4_yy_symbol_print_define +# ------------------------- +# Bypass the default implementation to generate the "yy_symbol_print" +# and "yy_symbol_value_print" functions. +m4_define([b4_yy_symbol_print_define], +[[/*--------------------. +| Print this symbol. | +`--------------------*/ + +static void +yy_symbol_print (FILE *, ]b4_namespace_ref::b4_parser_class[::symbol_kind_type yytoken, + const ]b4_namespace_ref::b4_parser_class[::value_type *yyvaluep]b4_locations_if([[, + const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp]])[]b4_user_formals[) +{ +]b4_parse_param_use[]dnl +[ yyparser.yy_symbol_print_ (yytoken, yyvaluep]b4_locations_if([, yylocationp])[); +} +]])[ + +# Hijack the initial action to initialize the locations. +]b4_bison_locations_if([m4_define([b4_initial_action], +[yylloc.initialize ();]m4_ifdef([b4_initial_action], [ +m4_defn([b4_initial_action])]))])[ + +# Hijack the post prologue to declare yyerror. +]m4_append([b4_post_prologue], +[b4_syncline([@oline@], [@ofile@])dnl +[static void +yyerror (]b4_locations_if([[const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp, + ]])[]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param), + ])[const char* msg);]])[ + +# Inserted before the epilogue to define implementations (yyerror, parser member +# functions etc.). +]m4_define([b4_glr_cc_pre_epilogue], +[b4_syncline([@oline@], [@ofile@])dnl +[ +/*------------------. +| Report an error. | +`------------------*/ + +static void +yyerror (]b4_locations_if([[const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp, + ]])[]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param), + ])[const char* msg) +{ +]b4_parse_param_use[]dnl +[ yyparser.error (]b4_locations_if([[*yylocationp, ]])[msg); +} + + +]b4_namespace_open[ +]dnl In this section, the parse params are the original parse_params. +m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_orig]))dnl +[ /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[)]m4_ifset([b4_parse_param], [ + :])[ +#if ]b4_api_PREFIX[DEBUG + ]m4_ifset([b4_parse_param], [ ], [ :])[yycdebug_ (&std::cerr)]m4_ifset([b4_parse_param], [,])[ +#endif]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + return ::yy_parse_impl (*this]b4_user_args[); + } + +#if ]b4_api_PREFIX[DEBUG + /*--------------------. + | Print this symbol. | + `--------------------*/ + + void + ]b4_parser_class[::yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const + {]b4_locations_if([[ + YY_USE (yylocationp);]])[ + YY_USE (yyvaluep); + std::ostream& yyo = debug_stream (); + std::ostream& yyoutput = yyo; + YY_USE (yyoutput); + ]b4_symbol_actions([printer])[ + } + + + void + ]b4_parser_class[::yy_symbol_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const + { + *yycdebug_ << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << yysymbol_name (yykind) << " ("]b4_locations_if([[ + << *yylocationp << ": "]])[; + yy_symbol_value_print_ (yykind, yyvaluep]b4_locations_if([[, yylocationp]])[); + *yycdebug_ << ')'; + } + + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + // Actually, it is yydebug which is really used. + yydebug = l; + } + +#endif +]m4_popdef([b4_parse_param])dnl +b4_namespace_close[]dnl +]) + + +m4_define([b4_define_symbol_kind], +[m4_format([#define %-15s %s], + b4_symbol($][1, kind_base), + b4_namespace_ref[::]b4_parser_class[::symbol_kind::]b4_symbol($1, kind_base)) +]) + +# b4_glr_cc_setup +# --------------- +# Setup redirections for glr.c: Map the names used in c.m4 to the ones used +# in c++.m4. +m4_define([b4_glr_cc_setup], +[[]b4_attribute_define[ +]b4_null_define[ + +// This skeleton is based on C, yet compiles it as C++. +// So expect warnings about C style casts. +#if defined __clang__ && 306 <= __clang_major__ * 100 + __clang_minor__ +# pragma clang diagnostic ignored "-Wold-style-cast" +#elif defined __GNUC__ && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# pragma GCC diagnostic ignored "-Wold-style-cast" +#endif + +// On MacOS, PTRDIFF_MAX is defined as long long, which Clang's +// -pedantic reports as being a C++11 extension. +#if defined __APPLE__ && YY_CPLUSPLUS < 201103L \ + && defined __clang__ && 4 <= __clang_major__ +# pragma clang diagnostic ignored "-Wc++11-long-long" +#endif + +#undef ]b4_symbol(empty, [id])[ +#define ]b4_symbol(empty, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(empty, [id])[ +#undef ]b4_symbol(eof, [id])[ +#define ]b4_symbol(eof, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(eof, [id])[ +#undef ]b4_symbol(error, [id])[ +#define ]b4_symbol(error, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(error, [id])[ + +#ifndef ]b4_api_PREFIX[STYPE +# define ]b4_api_PREFIX[STYPE ]b4_namespace_ref[::]b4_parser_class[::value_type +#endif +#ifndef ]b4_api_PREFIX[LTYPE +# define ]b4_api_PREFIX[LTYPE ]b4_namespace_ref[::]b4_parser_class[::location_type +#endif + +typedef ]b4_namespace_ref[::]b4_parser_class[::symbol_kind_type yysymbol_kind_t; + +// Expose C++ symbol kinds to C. +]b4_define_symbol_kind(-2)dnl +b4_symbol_foreach([b4_define_symbol_kind])])[ +]]) + + +m4_define([b4_undef_symbol_kind], +[[#undef ]b4_symbol($1, kind_base)[ +]]) + + +# b4_glr_cc_cleanup +# ----------------- +# Remove redirections for glr.c. +m4_define([b4_glr_cc_cleanup], +[[#undef ]b4_symbol(empty, [id])[ +#undef ]b4_symbol(eof, [id])[ +#undef ]b4_symbol(error, [id])[ + +]b4_undef_symbol_kind(-2)dnl +b4_symbol_foreach([b4_undef_symbol_kind])dnl +]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_orig]))dnl +b4_percent_code_get([[requires]])[ +#include +#include +#include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ + + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + virtual ~]b4_parser_class[ (); + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + virtual int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + typedef int debug_level_type; + /// The current debugging level. + debug_level_type debug_level () const; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + virtual void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + +# if ]b4_api_PREFIX[DEBUG + public: + /// \brief Report a symbol value on the debug stream. + /// \param yykind The symbol kind. + /// \param yyvaluep Its semantic value.]b4_locations_if([[ + /// \param yylocationp Its location.]])[ + virtual void yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const; + /// \brief Report a symbol on the debug stream. + /// \param yykind The symbol kind. + /// \param yyvaluep Its semantic value.]b4_locations_if([[ + /// \param yylocationp Its location.]])[ + virtual void yy_symbol_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const; + private: + /// Debug stream. + std::ostream* yycdebug_; +#endif + +]b4_parse_param_vars[ + }; + +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]m4_popdef([b4_parse_param])dnl +])[ + +]b4_header_if( +[b4_output_begin([b4_spec_header_file]) +b4_copyright([Skeleton interface for Bison GLR parsers in C++], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Akim Demaille. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end]) + +# Let glr.c (and b4_shared_declarations) believe that the user +# arguments include the parser itself. +m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_wrap])) +m4_include(b4_skeletonsdir/[glr.c]) +m4_popdef([b4_parse_param]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr2.cc b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr2.cc new file mode 100644 index 0000000..757d68d --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/glr2.cc @@ -0,0 +1,3533 @@ +# C++ GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c++.m4]) + +# api.value.type=variant is valid. +m4_define([b4_value_type_setup_variant]) + +# b4_tname_if(TNAME-NEEDED, TNAME-NOT-NEEDED) +# ------------------------------------------- +m4_define([b4_tname_if], +[m4_case(b4_percent_define_get([[parse.error]]), + [verbose], [$1], + [b4_token_table_if([$1], + [$2])])]) + +b4_bison_locations_if([ + m4_define([b4_location_constructors]) + m4_include(b4_skeletonsdir/[location.cc])]) +b4_variant_if([m4_include(b4_skeletonsdir/[variant.hh])]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +]m4_define([b4_define_symbol_kind], +[m4_format([#define %-15s %s], + b4_symbol($][1, kind_base), + b4_namespace_ref[::]b4_parser_class[::symbol_kind::]b4_symbol($1, kind_base)) +]) + + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "yy" whose contents is CONTENT. Does not use "static", +# should be in unnamed namespace. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [ b4_comment([$3])])dnl + const b4_int_type_for([$2]) yy$1[[]] = + { + $2 + };dnl +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + + + +## ------------ ## +## Interfaces. ## +## ------------ ## + +# b4_user_formals +# --------------- +# The possible parse-params formal arguments preceded by a comma. +# +# This is not shared with yacc.c in c.m4 because GLR relies on ISO C +# formal argument declarations. +m4_define([b4_user_formals], +[m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])]) + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[symbol_kind::b4_symbol_kind_base($@)]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([(*yyvalp)], [$1], [$2])]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[(static_cast(yyvsp))@{YYFILL (b4_subtract([$2], [$1]))@}.getState()]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# Expansion of $$ or $$, for symbol SYMBOL-NUM. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).value ()], [$3], [$4])]) + + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(*yylocp)]) + + +# b4_rhs_location(RULE-LENGTH, NUM) +# --------------------------------- +# Expansion of @NUM, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(b4_rhs_data([$1], [$2]).yyloc)]) + + +# b4_symbol_action(SYMBOL-NUM, KIND) +# ---------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +# +# Currently we need two different b4_symbol_action: once for the +# self-contained symbols, and another time for yy_destroy_ and +# yy_symbol_value_print_, which don't use genuine symbols yet. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[m4_pushdef([b4_symbol_value], m4_defn([b4_symbol_value_template]))[]dnl +b4_dollar_pushdef([yysym.value], + [$1], + [], + [yysym.location])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +m4_popdef([b4_symbol_value])[]dnl +b4_dollar_popdef[]dnl +])]) + + +# b4_symbol_action_for_yyval(SYMBOL-NUM, KIND) +# -------------------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +m4_define([b4_symbol_action_for_yyval], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([yyval], + [$1], + [], + [yyloc])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_call_merger(MERGER-NUM, MERGER-NAME, SYMBOL-SUM) +# --------------------------------------------------- +m4_define([b4_call_merger], +[b4_case([$1], + [ b4_symbol_if([$3], [has_type], + [b4_variant_if([yy0.as< b4_symbol($3, type) > () = $2 (yy0.as< b4_symbol($3, type) >(), yy1.as< b4_symbol($3, type) >());], + [yy0.b4_symbol($3, slot) = $2 (yy0, yy1);])], + [yy0 = $2 (yy0, yy1);])])]) + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_token_ctor_if( +[b4_function_call([yylex], + [symbol_type], m4_ifdef([b4_lex_param], b4_lex_param))], +[b4_function_call([yylex], [int], + [[value_type *], [&this->yyla.value]][]dnl +b4_locations_if([, [[location_type *], [&this->yyla.location]]])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param))])]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[b4_percent_code_get([[requires]])[ +#include +#include // ptrdiff_t +#include // memcpy +#include +#include +#include +#include +#include +#include +#include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ +]b4_symbol_type_define[ + + // FIXME: should be private eventually. + class glr_stack; + class glr_state; + + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + ~]b4_parser_class[ (); + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + using debug_level_type = int; + /// The current debugging level. + debug_level_type debug_level () const; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol);]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol); +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static std::string symbol_name (symbol_kind_type yysymbol);]])[ + +]b4_token_constructor_define[ +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + class context + { + public: + context (glr_stack& yystack, const symbol_type& yyla); + const symbol_type& lookahead () const YY_NOEXCEPT { return yyla_; } + symbol_kind_type token () const YY_NOEXCEPT { return yyla_.kind (); }]b4_locations_if([[ + const location_type& location () const YY_NOEXCEPT { return yyla_.location; } +]])[ + /// Put in YYARG at most YYARGN of the expected tokens, and return the + /// number of tokens stored in YYARG. If YYARG is null, return the + /// number of expected tokens (guaranteed to be less than YYNTOKENS). + int expected_tokens (symbol_kind_type yyarg[], int yyargn) const; + + private: + glr_stack& yystack_; + const symbol_type& yyla_; + }; +]])[ +# if ]b4_api_PREFIX[DEBUG + public: + /// \brief Report a symbol value on the debug stream. + /// \param yykind The symbol kind. + /// \param yyval Its semantic value.]b4_locations_if([[ + /// \param yyloc Its location.]])[ + void yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const; + /// \brief Report a symbol on the debug stream. + /// \param yykind The symbol kind. + /// \param yyval Its semantic value.]b4_locations_if([[ + /// \param yyloc Its location.]])[ + void yy_symbol_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const; + private: + /// Debug stream. + std::ostream* yycdebug_; +#endif + +]b4_parse_error_bmatch( +[custom], [[ + private: + /// Report a syntax error + /// \param yyctx the context in which the error occurred. + void report_syntax_error (const context& yyctx) const;]], +[detailed\|verbose], [[ + private: + /// The arguments of the error message. + int yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const; + + /// Generate an error message. + /// \param yyctx the context in which the error occurred. + virtual std::string yysyntax_error_ (const context& yyctx) const;]])[ + + /// Convert a scanner token kind \a t to a symbol kind. + /// In theory \a t should be a token_kind_type, but character literals + /// are valid, yet not members of the token_kind_type enum. + static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT; + +]b4_parse_error_bmatch( +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// For a symbol, its name in clear. + static const char* const yytname_[]; +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// Convert the symbol name \a n to a form suitable for a diagnostic. + static std::string yytnamerr_ (const char *yystr); + + /// For a symbol, its name in clear. + static const char* const yytname_[]; +]])[ + + /// \brief Reclaim the memory associated to a symbol. + /// \param yymsg Why this token is reclaimed. + /// If null, print nothing. + /// \param yykind The symbol kind. + void yy_destroy_ (const char* yymsg, symbol_kind_type yykind, + value_type& yyval]b4_locations_if([[, + location_type& yyloc]])[); + +]b4_parse_param_vars[ + // Needs access to yy_destroy_, report_syntax_error, etc. + friend glr_stack; + }; + +]b4_token_ctor_if([b4_yytranslate_define([$1])[ +]b4_public_types_define([$1])])[ +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]])[ + + +## -------------- ## +## Output files. ## +## -------------- ## + + +# ------------- # +# Header file. # +# ------------- # + +]b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Skeleton interface for Bison GLR parsers in C++], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Valentin Tolmer. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations([hh])[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end])[ + + +# --------------------- # +# Implementation file. # +# --------------------- # + +]b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Valentin Tolmer. + +]b4_disclaimer[ +]b4_identification[ + +]b4_percent_code_get([[top]])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define yyparse ]b4_prefix[parse +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug]])[ + +]b4_user_pre_prologue[ + +]b4_null_define[ + +]b4_header_if([[#include "@basename(]b4_spec_header_file[@)"]], + [b4_shared_declarations([cc])])[ + +namespace +{ + /* Default (constant) value used for initialization for null + right-hand sides. Unlike the standard yacc.c template, here we set + the default value of $$ to a zeroed-out value. Since the default + value is undefined, this behavior is technically correct. */ + ]b4_namespace_ref[::]b4_parser_class[::value_type yyval_default; +} + +]b4_user_post_prologue[ +]b4_percent_code_get[ + +#include +#include + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +#ifndef YYFREE +# define YYFREE free +#endif +#ifndef YYMALLOC +# define YYMALLOC malloc +#endif + +#ifndef YYSETJMP +# include +# define YYJMP_BUF jmp_buf +# define YYSETJMP(Env) setjmp (Env) +/* Pacify Clang and ICC. */ +# define YYLONGJMP(Env, Val) \ + do { \ + longjmp (Env, Val); \ + YYASSERT (0); \ + } while (false) +#endif + +]b4_attribute_define([noreturn])[ + +#if defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_NULL_DEREFERENCE_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wnull-dereference\"") +# define YY_IGNORE_NULL_DEREFERENCE_END \ + _Pragma ("GCC diagnostic pop") +#else +# define YY_IGNORE_NULL_DEREFERENCE_BEGIN +# define YY_IGNORE_NULL_DEREFERENCE_END +#endif + +]b4_null_define[ +]b4_cast_define[ + +// FIXME: Use the same conventions as lalr1.cc. +]b4_parse_assert_if[ +#ifndef YYASSERT +# define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0))) +#endif + +#ifdef YYDEBUG +# define YYDASSERT(Condition) YYASSERT(Condition) +#else +# define YYDASSERT(Condition) +#endif + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ +/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */ +#define YYMAXRHS ]b4_r2_max[ +/* YYMAXLEFT -- Maximum number of symbols to the left of a handle + accessed by $0, $-1, etc., in any rule. */ +#define YYMAXLEFT ]b4_max_left_semantic_context[ + +namespace +{ +#if ]b4_api_PREFIX[DEBUG + /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ + const ]b4_int_type_for([b4_rline])[ yyrline[] = + { + ]b4_rline[ + }; +#endif + +#define YYPACT_NINF ]b4_pact_ninf[ +#define YYTABLE_NINF ]b4_table_ninf[ + +]b4_parser_tables_define[ + + /* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */ + const ]b4_int_type_for([b4_dprec])[ yydprec[] = + { + ]b4_dprec[ + }; + + /* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */ + const ]b4_int_type_for([b4_merger])[ yymerger[] = + { + ]b4_merger[ + }; + + /* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as + in the case of predicates. */ + const bool yyimmediate[] = + { + ]b4_immediate[ + }; + + /* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of + list of conflicting reductions corresponding to action entry for + state STATE-NUM in yytable. 0 means no conflicts. The list in + yyconfl is terminated by a rule number of 0. */ + const ]b4_int_type_for([b4_conflict_list_heads])[ yyconflp[] = + { + ]b4_conflict_list_heads[ + }; + + /* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by + 0, pointed into by YYCONFLP. */ + ]dnl Do not use b4_int_type_for here, since there are places where + dnl pointers onto yyconfl are taken, whose type is "short*". + dnl We probably ought to introduce a type for confl. + [const short yyconfl[] = + { + ]b4_conflicting_rules[ + }; +} // namespace + + +/* Error token number */ +#define YYTERROR 1 + +]b4_locations_if([[ +]b4_yylloc_default_define[ +# define YYRHSLOC(Rhs, K) ((Rhs)[K].getState().yyloc) +]])[ + +enum YYRESULTTAG { yyok, yyaccept, yyabort, yyerr }; + +#define YYCHK(YYE) \ + do { \ + YYRESULTTAG yychk_flag = YYE; \ + if (yychk_flag != yyok) \ + return yychk_flag; \ + } while (false) + +#if ]b4_api_PREFIX[DEBUG + +#define YYCDEBUG if (!yydebug) {} else std::cerr + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ + do { \ + if (yydebug) \ + { \ + std::cerr << Title << ' '; \ + yyparser.yy_symbol_print_ (Kind, Value]b4_locations_if([, Location])[); \ + std::cerr << '\n'; \ + } \ + } while (false) + +# define YY_REDUCE_PRINT(Args) \ + do { \ + if (yydebug) \ + yystateStack.yy_reduce_print Args; \ + } while (false) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; + +namespace +{ + using glr_stack = ]b4_namespace_ref[::]b4_parser_class[::glr_stack; + using glr_state = ]b4_namespace_ref[::]b4_parser_class[::glr_state; + + void yypstack (const glr_stack& yystack, size_t yyk) + YY_ATTRIBUTE_UNUSED; + void yypdumpstack (const glr_stack& yystack) + YY_ATTRIBUTE_UNUSED; +} + +#else /* !]b4_api_PREFIX[DEBUG */ + +# define YYCDEBUG if (true) {} else std::cerr +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) {} +# define YY_REDUCE_PRINT(Args) {} + +#endif /* !]b4_api_PREFIX[DEBUG */ + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif + +/* Minimum number of free items on the stack allowed after an + allocation. This is to allow allocation and initialization + to be completed by functions that call yyexpandGLRStack before the + stack is expanded, thus insuring that all necessary pointers get + properly redirected to new data. */ +#define YYHEADROOM 2 + +#ifndef YYSTACKEXPANDABLE +# define YYSTACKEXPANDABLE 1 +#endif + +namespace +{ + template + class strong_index_alias + { + public: + static strong_index_alias create (std::ptrdiff_t value) + { + strong_index_alias result; + result.value_ = value; + return result; + } + + std::ptrdiff_t const& get () const { return value_; } + + size_t uget () const { return static_cast (value_); } + + strong_index_alias operator+ (std::ptrdiff_t other) const + { + return strong_index_alias (get () + other); + } + + void operator+= (std::ptrdiff_t other) + { + value_ += other; + } + + strong_index_alias operator- (std::ptrdiff_t other) + { + return strong_index_alias (get () - other); + } + + void operator-= (std::ptrdiff_t other) + { + value_ -= other; + } + + size_t operator- (strong_index_alias other) + { + return strong_index_alias (get () - other.get ()); + } + + strong_index_alias& operator++ () + { + ++value_; + return *this; + } + + bool isValid () const + { + return value_ != INVALID_INDEX; + } + + void setInvalid() + { + value_ = INVALID_INDEX; + } + + bool operator== (strong_index_alias other) + { + return get () == other.get (); + } + + bool operator!= (strong_index_alias other) + { + return get () != other.get (); + } + + bool operator< (strong_index_alias other) + { + return get () < other.get (); + } + + private: + static const std::ptrdiff_t INVALID_INDEX; + + // WARNING: 0-initialized. + std::ptrdiff_t value_; + }; // class strong_index_alias + + template + const std::ptrdiff_t strong_index_alias::INVALID_INDEX = + std::numeric_limits::max (); + + using state_set_index = strong_index_alias; + + state_set_index create_state_set_index (std::ptrdiff_t value) + { + return state_set_index::create (value); + } + + /** State numbers, as in LALR(1) machine */ + using state_num = int; + + /** Rule numbers, as in LALR(1) machine */ + using rule_num = int; + + using parser_type = ]b4_namespace_ref[::]b4_parser_class[; + using glr_state = parser_type::glr_state; + using symbol_kind = parser_type::symbol_kind; + using symbol_kind_type = parser_type::symbol_kind_type; + using symbol_type = parser_type::symbol_type; + using value_type = parser_type::value_type;]b4_locations_if([[ + using location_type = parser_type::location_type;]])[ + + // Forward declarations. + class glr_stack_item; + class semantic_option; +} // namespace + +namespace +{ + /** Accessing symbol of state YYSTATE. */ + inline symbol_kind_type + yy_accessing_symbol (state_num yystate) + { + return YY_CAST (symbol_kind_type, yystos[yystate]); + } + + /** Left-hand-side symbol for rule #YYRULE. */ + inline symbol_kind_type + yylhsNonterm (rule_num yyrule) + { + return static_cast(yyr1[yyrule]); + } + + /** Number of symbols composing the right hand side of rule #RULE. */ + inline int + yyrhsLength (rule_num yyrule) + { + return yyr2[yyrule]; + } +} + +namespace ]b4_namespace_ref[ +{ + class ]b4_parser_class[::glr_state + { + public: + glr_state () + : yyresolved (false) + , yylrState (0) + , yyposn (0) + , yypred (0) + , yyfirstVal (0)]b4_locations_if([[ + , yyloc ()]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + /// Build with a semantic value. + glr_state (state_num lrState, size_t posn, const value_type& val]b4_locations_if([[, const location_type& loc]])[) + : yyresolved (true) + , yylrState (lrState) + , yyposn (posn) + , yypred (0) + , yyval (]b4_variant_if([], [[val]])[)]b4_locations_if([[ + , yyloc (loc)]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_variant_if([[ + ]b4_symbol_variant([yy_accessing_symbol (lrState)], + [yyval], [copy], [val])])[} + + /// Build with a semantic option. + glr_state (state_num lrState, size_t posn) + : yyresolved (false) + , yylrState (lrState) + , yyposn (posn) + , yypred (0) + , yyfirstVal (0)]b4_locations_if([[ + , yyloc ()]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + glr_state (const glr_state& other) + : yyresolved (other.yyresolved) + , yylrState (other.yylrState) + , yyposn (other.yyposn) + , yypred (0)]b4_locations_if([[ + , yyloc (other.yyloc)]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + { + setPred (other.pred ()); + if (other.yyresolved)]b4_variant_if([[ + { + new (&yyval) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (other.yylrState)], + [yyval], [copy], [other.value ()])[ + }]], [[ + new (&yyval) value_type (other.value ());]])[ + else + { + yyfirstVal = 0; + setFirstVal (other.firstVal ()); + }]b4_parse_assert_if([[ + check_();]])[ + } + + ~glr_state () + {]b4_parse_assert_if([[ + check_ ();]])[ + if (yyresolved) + {]b4_variant_if([[ + symbol_kind_type yykind = yy_accessing_symbol (yylrState); + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yykind]], [[yyval]], [[template destroy]])])[ + yyval.~value_type (); + }]b4_parse_assert_if([[ + magic_ = 0;]])[ + } + + glr_state& operator= (const glr_state& other) + {]b4_parse_assert_if([[ + check_ (); + other.check_ ();]])[ + if (!yyresolved && other.yyresolved) + new (&yyval) value_type; + yyresolved = other.yyresolved; + yylrState = other.yylrState; + yyposn = other.yyposn; + setPred (other.pred ()); + if (other.yyresolved)]b4_variant_if([[ + ]b4_symbol_variant([yy_accessing_symbol (other.yylrState)], + [yyval], [copy], [other.value ()])], [[ + value () = other.value ();]])[ + else + setFirstVal (other.firstVal ());]b4_locations_if([[ + yyloc = other.yyloc;]])[ + return *this; + } + + /** Type tag for the semantic value. If true, yyval applies, otherwise + * yyfirstVal applies. */ + bool yyresolved; + /** Number of corresponding LALR(1) machine state. */ + state_num yylrState; + /** Source position of the last token produced by my symbol */ + size_t yyposn; + + /// Only call pred() and setPred() on objects in yyitems, not temporaries. + glr_state* pred (); + const glr_state* pred () const; + void setPred (const glr_state* state); + + /// Only call firstVal() and setFirstVal() on objects in yyitems, not + /// temporaries. + semantic_option* firstVal (); + const semantic_option* firstVal () const; + void setFirstVal (const semantic_option* option); + + value_type& value () + {]b4_parse_assert_if([[ + check_ ();]])[ + return yyval; + } + + const value_type& value () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return yyval; + } + + void + destroy (char const *yymsg, ]b4_namespace_ref[::]b4_parser_class[& yyparser); + + /* DEBUGGING ONLY */ + #if ]b4_api_PREFIX[DEBUG + void yy_yypstack () const + {]b4_parse_assert_if([[ + check_ ();]])[ + if (pred () != YY_NULLPTR) + { + pred ()->yy_yypstack (); + std::cerr << " -> "; + } + std::cerr << yylrState << "@@" << yyposn; + } + #endif + + std::ptrdiff_t indexIn (const glr_stack_item* array) const YY_ATTRIBUTE_UNUSED; + + glr_stack_item* asItem () + {]b4_parse_assert_if([[ + check_ ();]])[ + return asItem(this); + } + + const glr_stack_item* asItem () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return asItem (this); + } + + private: + template + static const glr_stack_item* asItem (const T* state) + { + return reinterpret_cast(state); + } + template + static glr_stack_item* asItem (T* state) + { + return reinterpret_cast (state); + } + static const char *as_pointer_ (const glr_state *state) + { + return reinterpret_cast (state); + } + static char *as_pointer_ (glr_state *state) + { + return reinterpret_cast (state); + } + /** Preceding state in this stack */ + std::ptrdiff_t yypred; + union { + /** First in a chain of alternative reductions producing the + * nonterminal corresponding to this state, threaded through + * yyfirstVal. Value "0" means empty. */ + std::ptrdiff_t yyfirstVal; + /** Semantic value for this state. */ + value_type yyval; + };]b4_locations_if([[ + // FIXME: Why public? + public: + /** Source location for this state. */ + location_type yyloc;]])[ + +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YY_IGNORE_NULL_DEREFERENCE_BEGIN + YYASSERT (this->magic_ == MAGIC); + YY_IGNORE_NULL_DEREFERENCE_END + } + + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 713705 }; + unsigned int magic_;]])[ + }; // class ]b4_parser_class[::glr_state +} // namespace ]b4_namespace_ref[ + + +namespace +{ + /** A stack of GLRState representing the different heads during + * nondeterministic evaluation. */ + class glr_state_set + { + public: + /** Initialize YYSET to a singleton set containing an empty stack. */ + glr_state_set () + : yylastDeleted (YY_NULLPTR) + { + yystates.push_back (YY_NULLPTR); + yylookaheadNeeds.push_back (false); + } + + // Behave like a vector of states. + glr_state*& operator[] (state_set_index index) + { + return yystates[index.uget()]; + } + + glr_state* operator[] (state_set_index index) const + { + return yystates[index.uget()]; + } + + size_t size () const + { + return yystates.size (); + } + + std::vector::iterator begin () + { + return yystates.begin (); + } + + std::vector::iterator end () + { + return yystates.end (); + } + + bool lookaheadNeeds (state_set_index index) const + { + return yylookaheadNeeds[index.uget ()]; + } + + bool setLookaheadNeeds (state_set_index index, bool value) + { + return yylookaheadNeeds[index.uget ()] = value; + } + + /** Invalidate stack #YYK. */ + void + yymarkStackDeleted (state_set_index yyk) + { + size_t k = yyk.uget (); + if (yystates[k] != YY_NULLPTR) + yylastDeleted = yystates[k]; + yystates[k] = YY_NULLPTR; + } + + /** Undelete the last stack in *this that was marked as deleted. Can + only be done once after a deletion, and only when all other stacks have + been deleted. */ + void + yyundeleteLastStack () + { + if (yylastDeleted == YY_NULLPTR || !yystates.empty ()) + return; + yystates.push_back (yylastDeleted); + YYCDEBUG << "Restoring last deleted stack as stack #0.\n"; + clearLastDeleted (); + } + + /** Remove the dead stacks (yystates[i] == YY_NULLPTR) and shift the later + * ones. */ + void + yyremoveDeletes () + { + size_t newsize = yystates.size (); + /* j is the number of live stacks we have seen. */ + for (size_t i = 0, j = 0; j < newsize; ++i) + { + if (yystates[i] == YY_NULLPTR) + { + if (i == j) + { + YYCDEBUG << "Removing dead stacks.\n"; + } + newsize -= 1; + } + else + { + yystates[j] = yystates[i]; + /* In the current implementation, it's unnecessary to copy + yylookaheadNeeds[i] since, after + yyremoveDeletes returns, the parser immediately either enters + deterministic operation or shifts a token. However, it doesn't + hurt, and the code might evolve to need it. */ + yylookaheadNeeds[j] = yylookaheadNeeds[i]; + if (j != i) + { + YYCDEBUG << "Rename stack " << i << " -> " << j << ".\n"; + } + j += 1; + } + } + yystates.resize (newsize); + yylookaheadNeeds.resize (newsize); + } + + + state_set_index + yysplitStack (state_set_index yyk) + { + const size_t k = yyk.uget (); + yystates.push_back (yystates[k]); + yylookaheadNeeds.push_back (yylookaheadNeeds[k]); + return create_state_set_index (static_cast (yystates.size () - 1)); + } + + void clearLastDeleted () + { + yylastDeleted = YY_NULLPTR; + } + + private: + + std::vector yystates; + /** During nondeterministic operation, yylookaheadNeeds tracks which + * stacks have actually needed the current lookahead. During deterministic + * operation, yylookaheadNeeds[0] is not maintained since it would merely + * duplicate !yyla.empty (). */ + std::vector yylookaheadNeeds; + + /** The last stack we invalidated. */ + glr_state* yylastDeleted; + }; // class glr_state_set +} // namespace + +namespace +{ + class semantic_option + { + public: + semantic_option () + : yyrule (0) + , yystate (0) + , yynext (0) + , yyla ()]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + semantic_option (rule_num rule) + : yyrule (rule) + , yystate (0) + , yynext (0) + , yyla ()]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + semantic_option (const semantic_option& that) + : yyrule (that.yyrule) + , yystate (that.yystate) + , yynext (that.yynext) + , yyla (that.yyla)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_parse_assert_if([[ + that.check_ ();]])[ + } + + // Needed for the assignment in yynewSemanticOption. + semantic_option& operator= (const semantic_option& that) + {]b4_parse_assert_if([[ + check_ (); + that.check_ ();]])[ + yyrule = that.yyrule; + yystate = that.yystate; + yynext = that.yynext; + yyla = that.yyla; + return *this; + } + + /// Only call state() and setState() on objects in yyitems, not temporaries. + glr_state* state(); + const glr_state* state() const; + void setState(const glr_state* s); + + const semantic_option* next () const YY_ATTRIBUTE_UNUSED; + semantic_option* next (); + void setNext (const semantic_option* s); + + std::ptrdiff_t indexIn (const glr_stack_item* array) const YY_ATTRIBUTE_UNUSED; + + /** True iff YYY0 and YYY1 represent identical options at the top level. + * That is, they represent the same rule applied to RHS symbols + * that produce the same terminal symbols. */ + bool + isIdenticalTo (const semantic_option& yyy1) const + {]b4_parse_assert_if([[ + check_ (); + yyy1.check_ ();]])[ + if (this->yyrule == yyy1.yyrule) + { + const glr_state *yys0, *yys1; + int yyn; + for (yys0 = this->state(), + yys1 = yyy1.state(), + yyn = yyrhsLength (this->yyrule); + yyn > 0; + yys0 = yys0->pred(), + yys1 = yys1->pred(), yyn -= 1) + if (yys0->yyposn != yys1->yyposn) + return false; + return true; + } + else + return false; + } + + /** Assuming identicalOptions (YYY0,YYY1), destructively merge the + * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */ + void + mergeWith (semantic_option& yyy1) + {]b4_parse_assert_if([[ + check_ (); + yyy1.check_ ();]])[ + glr_state *yys0 = this->state (); + glr_state *yys1 = yyy1.state (); + for (int yyn = yyrhsLength (this->yyrule); + yyn > 0; + yyn -= 1, yys0 = yys0->pred (), yys1 = yys1->pred ()) + { + if (yys0 == yys1) + break; + else if (yys0->yyresolved) + { + yys1->yyresolved = true;]b4_variant_if([[ + YYASSERT (yys1->yylrState == yys0->yylrState); + ]b4_symbol_variant([yy_accessing_symbol (yys0->yylrState)], + [yys1->value ()], [copy], [yys0->value ()])], [[ + yys1->value () = yys0->value ();]])[ + } + else if (yys1->yyresolved) + { + yys0->yyresolved = true;]b4_variant_if([[ + YYASSERT (yys0->yylrState == yys1->yylrState); + ]b4_symbol_variant([yy_accessing_symbol (yys1->yylrState)], + [yys0->value ()], [copy], [yys1->value ()])], [[ + yys0->value () = yys1->value ();]])[ + } + else + { + semantic_option* yyz0prev = YY_NULLPTR; + semantic_option* yyz0 = yys0->firstVal(); + semantic_option* yyz1 = yys1->firstVal(); + while (true) + { + if (yyz1 == yyz0 || yyz1 == YY_NULLPTR) + break; + else if (yyz0 == YY_NULLPTR) + { + if (yyz0prev != YY_NULLPTR) + yyz0prev->setNext (yyz1); + else + yys0->setFirstVal (yyz1); + break; + } + else if (yyz0 < yyz1) + { + semantic_option* yyz = yyz0; + if (yyz0prev != YY_NULLPTR) + yyz0prev->setNext(yyz1); + else + yys0->setFirstVal(yyz1); + yyz1 = yyz1->next(); + yyz0->setNext(yyz); + } + yyz0prev = yyz0; + yyz0 = yyz0->next(); + } + yys1->setFirstVal(yys0->firstVal()); + } + } + } + +#if ]b4_api_PREFIX[DEBUG + void yyreportTree (size_t yyindent = 2) const + {]b4_parse_assert_if([[ + check_ ();]])[ + int yynrhs = yyrhsLength (this->yyrule); + const glr_state* yystates[1 + YYMAXRHS]; + glr_state yyleftmost_state; + + { + const glr_state* yys = this->state(); + for (int yyi = yynrhs; 0 < yyi; yyi -= 1) + { + yystates[yyi] = yys; + yys = yys->pred(); + } + if (yys == YY_NULLPTR) + { + yyleftmost_state.yyposn = 0; + yystates[0] = &yyleftmost_state; + } + else + yystates[0] = yys; + } + + std::string yylhs = ]b4_namespace_ref[::]b4_parser_class[::symbol_name (yylhsNonterm (this->yyrule)); + YYASSERT(this->state()); + if (this->state()->yyposn < yystates[0]->yyposn + 1) + std::cerr << std::string(yyindent, ' ') << yylhs << " -> yyrule - 1 << ", empty>\n"; + else + std::cerr << std::string(yyindent, ' ') << yylhs << " -> yyrule - 1 << ", tokens " + << yystates[0]->yyposn + 1 << " .. " + << this->state()->yyposn << ">\n"; + for (int yyi = 1; yyi <= yynrhs; yyi += 1) + { + if (yystates[yyi]->yyresolved) + { + std::string yysym = ]b4_namespace_ref[::]b4_parser_class[::symbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)); + if (yystates[yyi-1]->yyposn+1 > yystates[yyi]->yyposn) + std::cerr << std::string(yyindent + 2, ' ') << yysym + << " \n"; + else + std::cerr << std::string(yyindent + 2, ' ') << yysym + << " yyposn + 1 + << " .. " << yystates[yyi]->yyposn << ">\n"; + } + else + yystates[yyi]->firstVal ()->yyreportTree (yyindent+2); + } + } +#endif + + /** Rule number for this reduction */ + rule_num yyrule; + + private: + template + static const glr_stack_item* asItem(const T* state) + { + return reinterpret_cast(state); + } + template + static glr_stack_item* asItem(T* state) + { + return reinterpret_cast(state); + } + /** The last RHS state in the list of states to be reduced. */ + std::ptrdiff_t yystate; + /** Next sibling in chain of options. To facilitate merging, + * options are chained in decreasing order by address. */ + std::ptrdiff_t yynext; + + public: + /** The lookahead for this reduction. */ + symbol_type yyla; + +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YY_IGNORE_NULL_DEREFERENCE_BEGIN + YYASSERT (this->magic_ == MAGIC); + YY_IGNORE_NULL_DEREFERENCE_END + } + + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 0xeff1cace }; + unsigned int magic_;]])[ + }; // class semantic_option +} // namespace + +namespace +{ + /** Type of the items in the GLR stack. + * It can be either a glr_state or a semantic_option. The is_state_ field + * indicates which item of the union is valid. */ + class glr_stack_item + { + public: + glr_stack_item (bool state = true) + : is_state_ (state)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + { + if (is_state_) + new (&raw_) glr_state; + else + new (&raw_) semantic_option; + } + + glr_stack_item (const glr_stack_item& other) YY_NOEXCEPT YY_NOTHROW + : is_state_ (other.is_state_)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_parse_assert_if([[ + other.check_ ();]])[ + std::memcpy (raw_, other.raw_, union_size); + } + + glr_stack_item& operator= (glr_stack_item other) + {]b4_parse_assert_if([[ + check_ (); + other.check_ ();]])[ + std::swap (is_state_, other.is_state_); + std::swap (raw_, other.raw_); + return *this; + } + + ~glr_stack_item () + {]b4_parse_assert_if([[ + check_ ();]])[ + if (is_state ()) + getState ().~glr_state (); + else + getOption ().~semantic_option (); + } + + void setState (const glr_state &state) + {]b4_parse_assert_if([[ + check_ (); + state.check_ ();]])[ + if (this != state.asItem ()) + { + if (is_state_) + getState ().~glr_state (); + else + getOption ().~semantic_option (); + new (&raw_) glr_state (state); + is_state_ = true; + } + } + + glr_state& getState () + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (is_state ()); + void *yyp = raw_; + glr_state& res = *static_cast (yyp);]b4_parse_assert_if([[ + res.check_ ();]])[ + return res; + } + + const glr_state& getState () const + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (is_state ()); + const void *yyp = raw_; + const glr_state& res = *static_cast (yyp);]b4_parse_assert_if([[ + res.check_ ();]])[ + return res; + } + + semantic_option& getOption () + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (!is_state ()); + void *yyp = raw_; + return *static_cast (yyp); + } + const semantic_option& getOption () const + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (!is_state ()); + const void *yyp = raw_; + return *static_cast (yyp); + } + bool is_state () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return is_state_; + } + + private: + /// The possible contents of raw_. Since they have constructors, they cannot + /// be directly included in the union. + union contents + { + char yystate[sizeof (glr_state)]; + char yyoption[sizeof (semantic_option)]; + }; + enum { union_size = sizeof (contents) }; + union { + /// Strongest alignment constraints. + long double yyalign_me; + /// A buffer large enough to store the contents. + char raw_[union_size]; + }; + /** Type tag for the union. */ + bool is_state_; +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YYASSERT (this->magic_ == MAGIC); + YYASSERT (this->is_state_ == false || this->is_state_ == true); + } + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 0xDEAD1ACC }; // 3735886540. + const unsigned int magic_;]])[ + }; // class glr_stack_item +} // namespace + +glr_state* glr_state::pred () +{]b4_parse_assert_if([[ + check_ ();]])[ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yypred ? &asItem (as_pointer_ (this) - yypred)->getState () : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +const glr_state* glr_state::pred () const +{]b4_parse_assert_if([[ + check_ ();]])[ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yypred ? &asItem (as_pointer_ (this) - yypred)->getState () : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +void glr_state::setPred (const glr_state* state) +{]b4_parse_assert_if([[ + check_ (); + if (state) + state->check_ ();]])[ + yypred = state ? as_pointer_ (this) - as_pointer_ (state) : 0; +} + +semantic_option* glr_state::firstVal () +{]b4_parse_assert_if([[ + check_ ();]])[ + return yyfirstVal ? &(asItem(this) - yyfirstVal)->getOption() : YY_NULLPTR; +} + +const semantic_option* glr_state::firstVal () const +{]b4_parse_assert_if([[ + check_ ();]])[ + return yyfirstVal ? &(asItem(this) - yyfirstVal)->getOption() : YY_NULLPTR; +} + +void glr_state::setFirstVal (const semantic_option* option) +{]b4_parse_assert_if([[ + check_ ();]])[ + yyfirstVal = option ? asItem(this) - asItem(option) : 0; +} + +std::ptrdiff_t glr_state::indexIn (const glr_stack_item* array) const +{]b4_parse_assert_if([[ + check_ ();]])[ + return asItem(this) - array; +} + +std::ptrdiff_t semantic_option::indexIn (const glr_stack_item* array) const +{ + return asItem(this) - array; +} + +glr_state* semantic_option::state () +{ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yystate ? &(asItem(this) - yystate)->getState() : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +const glr_state* semantic_option::state () const +{ + return yystate ? &(asItem(this) - yystate)->getState() : YY_NULLPTR; +} + +void semantic_option::setState (const glr_state* s) +{ + yystate = s ? asItem(this) - asItem(s) : 0; +} + +const semantic_option* semantic_option::next () const +{ + return yynext ? &(asItem(this) - yynext)->getOption() : YY_NULLPTR; +} + +semantic_option* semantic_option::next () +{ + return yynext ? &(asItem(this) - yynext)->getOption() : YY_NULLPTR; +} + +void semantic_option::setNext (const semantic_option* s) +{ + yynext = s ? asItem(this) - asItem(s) : 0; +} + +void glr_state::destroy (char const* yymsg, ]b4_namespace_ref[::]b4_parser_class[& yyparser) +{]b4_parse_assert_if([[ + check_ ();]])[ + if (yyresolved) + yyparser.yy_destroy_ (yymsg, yy_accessing_symbol(yylrState), + value ()]b4_locations_if([, yyloc])[); + else + { +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << yymsg + << (firstVal() ? " unresolved " : " incomplete ") + << (yy_accessing_symbol (yylrState) < YYNTOKENS ? "token" : "nterm") + << ' ' << yyparser.symbol_name (yy_accessing_symbol (yylrState)) + << " ("]b4_locations_if([[ + << yyloc << ": "]])[ + << ")\n"; +#endif + if (firstVal() != YY_NULLPTR) + { + semantic_option& yyoption = *firstVal (); + glr_state *yyrh = yyoption.state (); + for (int yyn = yyrhsLength (yyoption.yyrule); yyn > 0; yyn -= 1) + { + yyrh->destroy (yymsg, yyparser); + yyrh = yyrh->pred(); + } + } + } +} + + +#undef YYFILL +#define YYFILL(N) yyfill (yyvsp, yylow, (N), yynormal) + +namespace +{ + class state_stack + { + public: + using parser_type = ]b4_namespace_ref[::]b4_parser_class[; + using symbol_kind = parser_type::symbol_kind; + using value_type = parser_type::value_type;]b4_locations_if([[ + using location_type = parser_type::location_type;]])[ + + /** Initialize to a single empty stack, with total maximum + * capacity for all stacks of YYSIZE. */ + state_stack (size_t yysize) + : yysplitPoint (YY_NULLPTR) + { + yyitems.reserve (yysize); + } + +#if YYSTACKEXPANDABLE + /** Returns false if it tried to expand but could not. */ + bool + yyexpandGLRStackIfNeeded () + { + return YYHEADROOM <= spaceLeft () || yyexpandGLRStack (); + } + + private: + /** If *this is expandable, extend it. WARNING: Pointers into the + stack from outside should be considered invalid after this call. + We always expand when there are 1 or fewer items left AFTER an + allocation, so that we can avoid having external pointers exist + across an allocation. */ + bool + yyexpandGLRStack () + { + const size_t oldsize = yyitems.size(); + if (YYMAXDEPTH - YYHEADROOM < oldsize) + return false; + const size_t yynewSize = YYMAXDEPTH < 2 * oldsize ? YYMAXDEPTH : 2 * oldsize; + const glr_stack_item *oldbase = &yyitems[0]; + + yyitems.reserve (yynewSize); + const glr_stack_item *newbase = &yyitems[0]; + + // Adjust the pointers. Perform raw pointer arithmetic, as there + // is no reason for objects to be aligned on their size. + const ptrdiff_t disp + = reinterpret_cast (newbase) - reinterpret_cast (oldbase); + if (yysplitPoint) + const_cast (yysplitPoint) + = reinterpret_cast (reinterpret_cast (const_cast (yysplitPoint)) + disp); + + for (std::vector::iterator + i = yytops.begin (), + yyend = yytops.end (); + i != yyend; ++i) + if (glr_state_not_null (*i)) + *i = reinterpret_cast(reinterpret_cast(*i) + disp); + + return true; + } + + public: +#else + bool yyexpandGLRStackIfNeeded () + { + return YYHEADROOM <= spaceLeft (); + } +#endif +#undef YYSTACKEXPANDABLE + + static bool glr_state_not_null (glr_state* s) + { + return s != YY_NULLPTR; + } + + bool + reduceToOneStack () + { + using iterator = std::vector::iterator; + const iterator yybegin = yytops.begin(); + const iterator yyend = yytops.end(); + const iterator yyit = std::find_if(yybegin, yyend, glr_state_not_null); + if (yyit == yyend) + return false; + for (state_set_index yyk = create_state_set_index(yyit + 1 - yybegin); + yyk.uget() != numTops(); ++yyk) + yytops.yymarkStackDeleted (yyk); + yytops.yyremoveDeletes (); + yycompressStack (); + return true; + } + + /** Called when returning to deterministic operation to clean up the extra + * stacks. */ + void + yycompressStack () + { + if (yytops.size() != 1 || !isSplit()) + return; + + // yyr is the state after the split point. + glr_state* yyr = YY_NULLPTR; + for (glr_state *yyp = firstTop(), *yyq = yyp->pred(); + yyp != yysplitPoint; + yyr = yyp, yyp = yyq, yyq = yyp->pred()) + yyp->setPred(yyr); + + // This const_cast is okay, since anyway we have access to the mutable + // yyitems into which yysplitPoint points. + glr_stack_item* nextFreeItem + = const_cast (yysplitPoint)->asItem () + 1; + yysplitPoint = YY_NULLPTR; + yytops.clearLastDeleted (); + + while (yyr != YY_NULLPTR) + { + nextFreeItem->setState (*yyr); + glr_state& nextFreeState = nextFreeItem->getState(); + yyr = yyr->pred(); + nextFreeState.setPred(&(nextFreeItem - 1)->getState()); + setFirstTop (&nextFreeState); + ++nextFreeItem; + } + yyitems.resize(static_cast(nextFreeItem - yyitems.data())); + } + + bool isSplit() const { + return yysplitPoint != YY_NULLPTR; + } + + // Present the interface of a vector of glr_stack_item. + std::vector::const_iterator begin () const + { + return yyitems.begin (); + } + + std::vector::const_iterator end () const + { + return yyitems.end (); + } + + size_t size() const + { + return yyitems.size (); + } + + glr_stack_item& operator[] (size_t i) + { + return yyitems[i]; + } + + glr_stack_item& stackItemAt (size_t index) + { + return yyitems[index]; + } + + size_t numTops () const + { + return yytops.size (); + } + + glr_state* firstTop () const + { + return yytops[create_state_set_index (0)]; + } + + glr_state* topAt (state_set_index i) const + { + return yytops[i]; + } + + void setFirstTop (glr_state* value) + { + yytops[create_state_set_index (0)] = value; + } + + void setTopAt (state_set_index i, glr_state* value) + { + yytops[i] = value; + } + + void pop_back () + { + yyitems.pop_back (); + } + + void pop_back (size_t n) + { + yyitems.resize (yyitems.size () - n); + } + + state_set_index + yysplitStack (state_set_index yyk) + { + if (!isSplit ()) + { + YYASSERT (yyk.get () == 0); + yysplitPoint = topAt (yyk); + } + return yytops.yysplitStack (yyk); + } + + /** Assuming that YYS is a GLRState somewhere on *this, update the + * splitpoint of *this, if needed, so that it is at least as deep as + * YYS. */ + void + yyupdateSplit (glr_state& yys) + { + if (isSplit() && &yys < yysplitPoint) + yysplitPoint = &yys; + } + + /** Return a fresh GLRState. + * Callers should call yyreserveStack afterwards to make sure there is + * sufficient headroom. */ + glr_state& yynewGLRState (const glr_state& newState) + { + glr_state& state = yyitems[yynewGLRStackItem (true)].getState (); +#if false && 201103L <= YY_CPLUSPLUS + state = std::move (newState); +#else + state = newState; +#endif + return state; + } + + /** Return a fresh SemanticOption. + * Callers should call yyreserveStack afterwards to make sure there is + * sufficient headroom. */ + semantic_option& yynewSemanticOption (semantic_option newOption) + { + semantic_option& option = yyitems[yynewGLRStackItem (false)].getOption (); + option = std::move (newOption); + return option; + } + + /* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in + * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1. + * For convenience, always return YYLOW1. */ + int + yyfill (glr_stack_item *yyvsp, int &yylow, int yylow1, bool yynormal) + { + if (!yynormal && yylow1 < yylow) + { + yyfillin (yyvsp, yylow, yylow1); + yylow = yylow1; + } + return yylow1; + } + + /** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting + * at YYVSP[YYLOW0].getState().pred(). Leaves YYVSP[YYLOW1].getState().pred() + * containing the pointer to the next state in the chain. */ + void + yyfillin (glr_stack_item *yyvsp, int yylow0, int yylow1) + { + glr_state* s = yyvsp[yylow0].getState().pred(); + YYASSERT(s != YY_NULLPTR); + for (int i = yylow0-1; i >= yylow1; i -= 1, s = s->pred()) + { + glr_state& yys = yyvsp[i].getState(); +#if ]b4_api_PREFIX[DEBUG + yys.yylrState = s->yylrState; +#endif + yys.yyresolved = s->yyresolved; + if (s->yyresolved) + {]b4_variant_if([[ + new (&yys.value ()) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (s->yylrState)], + [yys.value ()], [copy], [s->value ()])], [[ + new (&yys.value ()) value_type (s->value ());]])[ + } + else + /* The effect of using yyval or yyloc (in an immediate + * rule) is undefined. */ + yys.setFirstVal (YY_NULLPTR);]b4_locations_if([[ + yys.yyloc = s->yyloc;]])[ + yys.setPred(s->pred()); + } + } + +#if ]b4_api_PREFIX[DEBUG + + /*----------------------------------------------------------------------. + | Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. | + `----------------------------------------------------------------------*/ + + void + yy_reduce_print (bool yynormal, glr_stack_item* yyvsp, state_set_index yyk, + rule_num yyrule, parser_type& yyparser) + { + int yynrhs = yyrhsLength (yyrule);]b4_locations_if([ + int yylow = 1;])[ + int yyi; + std::cerr << "Reducing stack " << yyk.get() << " by rule " << yyrule - 1 + << " (line " << int (yyrline[yyrule]) << "):\n"; + if (! yynormal) + yyfillin (yyvsp, 1, -yynrhs); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + std::cerr << " $" << yyi + 1 << " = "; + yyparser.yy_symbol_print_ + (yy_accessing_symbol (yyvsp[yyi - yynrhs + 1].getState().yylrState), + yyvsp[yyi - yynrhs + 1].getState().value ()]b4_locations_if([[, + ]b4_rhs_location(yynrhs, yyi + 1)])[); + if (!yyvsp[yyi - yynrhs + 1].getState().yyresolved) + std::cerr << " (unresolved)"; + std::cerr << '\n'; + } + } + + +#define YYINDEX(YYX) \ + ((YYX) == YY_NULLPTR ? -1 : (YYX)->indexIn (yyitems.data ())) + + void + dumpStack () const + { + for (size_t yyi = 0; yyi < size(); ++yyi) + { + const glr_stack_item& item = yyitems[yyi]; + std::cerr << std::setw(3) << yyi << ". "; + if (item.is_state()) + { + std::cerr << "Res: " << item.getState().yyresolved + << ", LR State: " << item.getState().yylrState + << ", posn: " << item.getState().yyposn + << ", pred: " << YYINDEX(item.getState().pred()); + if (! item.getState().yyresolved) + std::cerr << ", firstVal: " + << YYINDEX(item.getState().firstVal()); + } + else + { + std::cerr << "Option. rule: " << item.getOption().yyrule - 1 + << ", state: " << YYINDEX(item.getOption().state()) + << ", next: " << YYINDEX(item.getOption().next()); + } + std::cerr << '\n'; + } + std::cerr << "Tops:"; + for (state_set_index yyi = create_state_set_index(0); yyi.uget() < numTops(); ++yyi) { + std::cerr << yyi.get() << ": " << YYINDEX(topAt(yyi)) << "; "; + } + std::cerr << '\n'; + } + +#undef YYINDEX +#endif + + YYRESULTTAG + yyreportAmbiguity (const semantic_option& yyx0, + const semantic_option& yyx1, parser_type& yyparser]b4_locations_if([, const location_type& yyloc])[) + { + YY_USE (yyx0); + YY_USE (yyx1); + +#if ]b4_api_PREFIX[DEBUG + std::cerr << "Ambiguity detected.\n" + "Option 1,\n"; + yyx0.yyreportTree (); + std::cerr << "\nOption 2,\n"; + yyx1.yyreportTree (); + std::cerr << '\n'; +#endif + + yyparser.error (]b4_locations_if([yyloc, ])[YY_("syntax is ambiguous")); + return yyabort; + } + +#if ]b4_api_PREFIX[DEBUG + /* Print YYS (possibly NULL) and its predecessors. */ + void + yypstates (const glr_state* yys) const + { + if (yys != YY_NULLPTR) + yys->yy_yypstack(); + else + std::cerr << ""; + std::cerr << '\n'; + } +#endif + + private: + size_t spaceLeft() const + { + return yyitems.capacity() - yyitems.size(); + } + + /** Return a fresh GLRStackItem in this. The item is an LR state + * if YYIS_STATE, and otherwise a semantic option. Callers should call + * yyreserveStack afterwards to make sure there is sufficient + * headroom. */ + size_t + yynewGLRStackItem (bool yyis_state) + { + YYDASSERT(yyitems.size() < yyitems.capacity()); + yyitems.push_back(glr_stack_item(yyis_state)); + return yyitems.size() - 1; + } + + + public: + std::vector yyitems; + // Where the stack splits. Anything below this address is deterministic. + const glr_state* yysplitPoint; + glr_state_set yytops; + }; // class state_stack +} // namespace + +#undef YYFILL +#define YYFILL(N) yystateStack.yyfill (yyvsp, yylow, (N), yynormal) + +namespace ]b4_namespace_ref[ +{ + class ]b4_parser_class[::glr_stack + { + public: +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // Needs access to yypact_value_is_default, etc. + friend context; +]])[ + + glr_stack (size_t yysize, parser_type& yyparser_yyarg]m4_ifset([b4_parse_param], [, b4_parse_param_decl])[) + : yyerrState (0) + , yystateStack (yysize) + , yyerrcnt (0) + , yyla () + , yyparser (yyparser_yyarg)]m4_ifset([b4_parse_param], [,b4_parse_param_cons])[ + {} + + ~glr_stack () + { + if (!this->yyla.empty ()) + yyparser.yy_destroy_ ("Cleanup: discarding lookahead", + this->yyla.kind (), this->yyla.value]b4_locations_if([, this->yyla.location])[); + popall_ (); + } + + int yyerrState; +]b4_locations_if([[ /* To compute the location of the error token. */ + glr_stack_item yyerror_range[3];]])[ + state_stack yystateStack; + int yyerrcnt; + symbol_type yyla; + YYJMP_BUF yyexception_buffer; + parser_type& yyparser; + + #define YYCHK1(YYE) \ + do { \ + switch (YYE) { \ + case yyok: \ + break; \ + case yyabort: \ + goto yyabortlab; \ + case yyaccept: \ + goto yyacceptlab; \ + case yyerr: \ + goto yyuser_error; \ + default: \ + goto yybuglab; \ + } \ + } while (false) + + int + parse () + { + int yyresult; + size_t yyposn; + + YYCDEBUG << "Starting parse\n"; + + this->yyla.clear (); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yyla.value], [], [], [yyla.location])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl +[ + switch (YYSETJMP (this->yyexception_buffer)) + { + case 0: break; + case 1: goto yyabortlab; + case 2: goto yyexhaustedlab; + default: goto yybuglab; + } + this->yyglrShift (create_state_set_index(0), 0, 0, this->yyla.value]b4_locations_if([, this->yyla.location])[); + yyposn = 0; + + while (true) + { + /* For efficiency, we have two loops, the first of which is + specialized to deterministic operation (single stack, no + potential ambiguity). */ + /* Standard mode */ + while (true) + { + const state_num yystate = this->firstTopState()->yylrState; + YYCDEBUG << "Entering state " << yystate << '\n'; + if (yystate == YYFINAL) + goto yyacceptlab; + if (yy_is_defaulted_state (yystate)) + { + const rule_num yyrule = yy_default_action (yystate); + if (yyrule == 0) + {]b4_locations_if([[ + this->yyerror_range[1].getState().yyloc = this->yyla.location;]])[ + this->yyreportSyntaxError (); + goto yyuser_error; + } + YYCHK1 (this->yyglrReduce (create_state_set_index(0), yyrule, true)); + } + else + { + yyget_token (); + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, this->yyla.kind (), yyconflicts); + if (*yyconflicts != 0) + break; + if (yy_is_shift_action (yyaction)) + { + YY_SYMBOL_PRINT ("Shifting", this->yyla.kind (), this->yyla.value, this->yyla.location); + yyposn += 1; + // FIXME: we should move yylval. + this->yyglrShift (create_state_set_index(0), yyaction, yyposn, this->yyla.value]b4_locations_if([, this->yyla.location])[); + yyla.clear (); + if (0 < this->yyerrState) + this->yyerrState -= 1; + } + else if (yy_is_error_action (yyaction)) + {]b4_locations_if([[ + this->yyerror_range[1].getState().yyloc = this->yyla.location;]])[ + /* Don't issue an error message again for exceptions + thrown from the scanner. */ + if (this->yyla.kind () != ]b4_symbol(error, kind)[) + this->yyreportSyntaxError (); + goto yyuser_error; + } + else + YYCHK1 (this->yyglrReduce (create_state_set_index(0), -yyaction, true)); + } + } + + while (true) + { + for (state_set_index yys = create_state_set_index(0); yys.uget() < this->yystateStack.numTops(); ++yys) + this->yystateStack.yytops.setLookaheadNeeds(yys, !this->yyla.empty ()); + + /* yyprocessOneStack returns one of three things: + + - An error flag. If the caller is yyprocessOneStack, it + immediately returns as well. When the caller is finally + yyparse, it jumps to an error label via YYCHK1. + + - yyok, but yyprocessOneStack has invoked yymarkStackDeleted + (yys), which sets the top state of yys to NULL. Thus, + yyparse's following invocation of yyremoveDeletes will remove + the stack. + + - yyok, when ready to shift a token. + + Except in the first case, yyparse will invoke yyremoveDeletes and + then shift the next token onto all remaining stacks. This + synchronization of the shift (that is, after all preceding + reductions on all stacks) helps prevent double destructor calls + on yylval in the event of memory exhaustion. */ + + for (state_set_index yys = create_state_set_index (0); yys.uget () < this->yystateStack.numTops (); ++yys) + YYCHK1 (this->yyprocessOneStack (yys, yyposn]b4_locations_if([, &this->yyla.location])[)); + this->yystateStack.yytops.yyremoveDeletes (); + if (this->yystateStack.yytops.size() == 0) + { + this->yystateStack.yytops.yyundeleteLastStack (); + if (this->yystateStack.yytops.size() == 0) + this->yyFail (]b4_locations_if([&this->yyla.location, ])[YY_("syntax error")); + YYCHK1 (this->yyresolveStack ()); + YYCDEBUG << "Returning to deterministic operation.\n";]b4_locations_if([[ + this->yyerror_range[1].getState ().yyloc = this->yyla.location;]])[ + this->yyreportSyntaxError (); + goto yyuser_error; + } + + /* If any yyglrShift call fails, it will fail after shifting. Thus, + a copy of yylval will already be on stack 0 in the event of a + failure in the following loop. Thus, yyla is emptied + before the loop to make sure the user destructor for yylval isn't + called twice. */ + symbol_kind_type yytoken_to_shift = this->yyla.kind (); + this->yyla.kind_ = ]b4_symbol(empty, kind)[; + yyposn += 1; + for (state_set_index yys = create_state_set_index (0); yys.uget () < this->yystateStack.numTops (); ++yys) + { + const state_num yystate = this->topState (yys)->yylrState; + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, yytoken_to_shift, yyconflicts); + /* Note that yyconflicts were handled by yyprocessOneStack. */ + YYCDEBUG << "On stack " << yys.get() << ", "; + YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, this->yyla.value, this->yyla.location); + this->yyglrShift (yys, yyaction, yyposn, this->yyla.value]b4_locations_if([, this->yyla.location])[); + YYCDEBUG << "Stack " << yys.get() << " now in state " + << this->topState(yys)->yylrState << '\n'; + } +]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yytoken_to_shift]], [[this->yyla.value]], [[template destroy]])])[ + + if (this->yystateStack.yytops.size () == 1) + { + YYCHK1 (this->yyresolveStack ()); + YYCDEBUG << "Returning to deterministic operation.\n"; + this->yystateStack.yycompressStack (); + break; + } + } + continue; + yyuser_error: + this->yyrecoverSyntaxError (]b4_locations_if([&this->yyla.location])[); + yyposn = this->firstTopState()->yyposn; + } + + yyacceptlab: + yyresult = 0; + goto yyreturn; + + yybuglab: + YYASSERT (false); + goto yyabortlab; + + yyabortlab: + yyresult = 1; + goto yyreturn; + + yyexhaustedlab: + yyparser.error (]b4_locations_if([this->yyla.location, ])[YY_("memory exhausted")); + yyresult = 2; + goto yyreturn; + + yyreturn: + return yyresult; + } + #undef YYCHK1 + + void yyreserveGlrStack () + { + if (!yystateStack.yyexpandGLRStackIfNeeded ()) + yyMemoryExhausted (); + } + + _Noreturn void + yyMemoryExhausted () + { + YYLONGJMP (yyexception_buffer, 2); + } + + _Noreturn void + yyFail (]b4_locations_if([location_type* yylocp, ])[const char* yymsg) + { + if (yymsg != YY_NULLPTR) + yyparser.error (]b4_locations_if([*yylocp, ])[yymsg); + YYLONGJMP (yyexception_buffer, 1); + } + + /* GLRStates */ + + + /** Add a new semantic action that will execute the action for rule + * YYRULE on the semantic values in YYRHS to the list of + * alternative actions for YYSTATE. Assumes that YYRHS comes from + * stack #YYK of *this. */ + void + yyaddDeferredAction (state_set_index yyk, glr_state* yystate, + glr_state* yyrhs, rule_num yyrule) + { + semantic_option& yyopt = yystateStack.yynewSemanticOption (semantic_option (yyrule)); + yyopt.setState (yyrhs); + yyopt.setNext (yystate->firstVal ()); + if (yystateStack.yytops.lookaheadNeeds (yyk)) + yyopt.yyla = this->yyla; + yystate->setFirstVal (&yyopt); + + yyreserveGlrStack (); + } + + #if ]b4_api_PREFIX[DEBUG + void yypdumpstack () const + { + yystateStack.dumpStack(); + } + #endif + + void + yyreportSyntaxError () + { + if (yyerrState != 0) + return; +]b4_parse_error_case( +[simple], [[ + std::string msg = YY_("syntax error"); + yyparser.error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]], +[custom], [[ + context yyctx (*this, yyla); + yyparser.report_syntax_error (yyctx);]], +[[ + context yyctx (*this, yyla); + std::string msg = yyparser.yysyntax_error_ (yyctx); + yyparser.error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]])[ + yyerrcnt += 1; + } + + /* Recover from a syntax error on this, assuming that yytoken, + yylval, and yylloc are the syntactic category, semantic value, and location + of the lookahead. */ + void + yyrecoverSyntaxError (]b4_locations_if([location_type* yylocp])[) + { + if (yyerrState == 3) + /* We just shifted the error token and (perhaps) took some + reductions. Skip tokens until we can proceed. */ + while (true) + { + if (this->yyla.kind () == ]b4_symbol(eof, kind)[) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + if (this->yyla.kind () != ]b4_symbol(empty, kind)[) + {]b4_locations_if([[ + /* We throw away the lookahead, but the error range + of the shifted error token must take it into account. */ + glr_state *yys = firstTopState(); + yyerror_range[1].getState().yyloc = yys->yyloc; + yyerror_range[2].getState().yyloc = this->yyla.location; + YYLLOC_DEFAULT ((yys->yyloc), yyerror_range, 2);]])[ + yyparser.yy_destroy_ ("Error: discarding", + this->yyla.kind (), this->yyla.value]b4_locations_if([, this->yyla.location])[);]b4_variant_if([[ + // Value type destructor. + ]b4_symbol_variant([[this->yyla.kind ()]], [[this->yyla.value]], [[template destroy]])])[ + this->yyla.kind_ = ]b4_symbol(empty, kind)[; + } + yyget_token (); + int yyj = yypact[firstTopState()->yylrState]; + if (yypact_value_is_default (yyj)) + return; + yyj += this->yyla.kind (); + if (yyj < 0 || YYLAST < yyj || yycheck[yyj] != this->yyla.kind ()) + { + if (yydefact[firstTopState()->yylrState] != 0) + return; + } + else if (! yytable_value_is_error (yytable[yyj])) + return; + } + + if (!yystateStack.reduceToOneStack()) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + + /* Now pop stack until we find a state that shifts the error token. */ + yyerrState = 3; + while (firstTopState () != YY_NULLPTR) + { + glr_state *yys = firstTopState (); + int yyj = yypact[yys->yylrState]; + if (! yypact_value_is_default (yyj)) + { + yyj += YYTERROR; + if (0 <= yyj && yyj <= YYLAST && yycheck[yyj] == YYTERROR + && yy_is_shift_action (yytable[yyj])) + { + /* Shift the error token. */]b4_locations_if([[ + /* First adjust its location.*/ + location_type yyerrloc; + yyerror_range[2].getState().yyloc = this->yyla.location; + YYLLOC_DEFAULT (yyerrloc, (yyerror_range), 2);]])[ + YY_SYMBOL_PRINT ("Shifting", yy_accessing_symbol (yytable[yyj]), + this->yyla.value, yyerrloc); + yyglrShift (create_state_set_index(0), yytable[yyj], + yys->yyposn, yyla.value]b4_locations_if([, yyerrloc])[); + yys = firstTopState(); + break; + } + }]b4_locations_if([[ + yyerror_range[1].getState().yyloc = yys->yyloc;]])[ + if (yys->pred() != YY_NULLPTR) + yys->destroy ("Error: popping", yyparser); + yystateStack.setFirstTop(yys->pred()); + yystateStack.pop_back(); + } + if (firstTopState() == YY_NULLPTR) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + } + + YYRESULTTAG + yyprocessOneStack (state_set_index yyk, + size_t yyposn]b4_locations_if([, location_type* yylocp])[) + { + while (yystateStack.topAt(yyk) != YY_NULLPTR) + { + const state_num yystate = topState(yyk)->yylrState; + YYCDEBUG << "Stack " << yyk.get() + << " Entering state " << yystate << '\n'; + + YYASSERT (yystate != YYFINAL); + + if (yy_is_defaulted_state (yystate)) + { + const rule_num yyrule = yy_default_action (yystate); + if (yyrule == 0) + { + YYCDEBUG << "Stack " << yyk.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + return yyok; + } + const YYRESULTTAG yyflag + = yyglrReduce (yyk, yyrule, yyimmediate[yyrule]); + if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yyk.get() << " dies" + " (predicate failure or explicit user error).\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + return yyok; + } + if (yyflag != yyok) + return yyflag; + } + else + { + yystateStack.yytops.setLookaheadNeeds(yyk, true); + yyget_token (); + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, this->yyla.kind (), yyconflicts); + + for (; *yyconflicts != 0; ++yyconflicts) + { + state_set_index yynewStack = yystateStack.yysplitStack (yyk); + YYCDEBUG << "Splitting off stack " << yynewStack.get() + << " from " << yyk.get() << ".\n"; + YYRESULTTAG yyflag = + yyglrReduce (yynewStack, *yyconflicts, yyimmediate[*yyconflicts]); + if (yyflag == yyok) + YYCHK (yyprocessOneStack (yynewStack, + yyposn]b4_locations_if([, yylocp])[)); + else if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yynewStack.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yynewStack); + } + else + return yyflag; + } + + if (yy_is_shift_action (yyaction)) + break; + else if (yy_is_error_action (yyaction)) + { + YYCDEBUG << "Stack " << yyk.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + break; + } + else + { + YYRESULTTAG yyflag + = yyglrReduce (yyk, -yyaction, yyimmediate[-yyaction]); + if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yyk.get() << " dies" + " (predicate failure or explicit user error).\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + break; + } + else if (yyflag != yyok) + return yyflag; + } + } + } + return yyok; + } + + /** Perform user action for rule number YYN, with RHS length YYRHSLEN, + * and top stack item YYVSP. YYVALP points to place to put semantic + * value ($$), and yylocp points to place for location information + * (@@$). Returns yyok for normal return, yyaccept for YYACCEPT, + * yyerr for YYERROR, yyabort for YYABORT. */ + YYRESULTTAG + yyuserAction (rule_num yyrule, int yyrhslen, glr_stack_item* yyvsp, state_set_index yyk, + value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + bool yynormal YY_ATTRIBUTE_UNUSED = !yystateStack.isSplit(); + int yylow = 1; +]b4_parse_param_use([yyvalp], [yylocp])dnl +[ YY_USE (yyk); + YY_USE (yyrhslen); + # undef yyerrok + # define yyerrok (yyerrState = 0) + # undef YYACCEPT + # define YYACCEPT return yyaccept + # undef YYABORT + # define YYABORT return yyabort + # undef YYERROR + # define YYERROR return yyerrok, yyerr + # undef YYRECOVERING + # define YYRECOVERING() (yyerrState != 0) + # undef yytoken + # define yytoken this->yyla.kind_ + # undef yyclearin + # define yyclearin (yytoken = ]b4_symbol(empty, kind)[) + # undef YYBACKUP + # define YYBACKUP(Token, Value) \ + return yyparser.error (]b4_locations_if([*yylocp, ])[YY_("syntax error: cannot back up")), \ + yyerrok, yyerr + +]b4_variant_if([[ + /* Variants are always initialized to an empty instance of the + correct type. The default '$$ = $1' action is NOT applied + when using variants. */ + // However we really need to prepare yyvsp now if we want to get + // correct locations, so invoke YYFILL for $1 anyway. + (void) YYFILL (1-yyrhslen); + ]b4_symbol_variant([[yylhsNonterm (yyrule)]], [(*yyvalp)], [emplace])], [[ + if (yyrhslen == 0) + *yyvalp = yyval_default; + else + *yyvalp = yyvsp[YYFILL (1-yyrhslen)].getState().value ();]])[]b4_locations_if([[ + /* Default location. */ + YYLLOC_DEFAULT ((*yylocp), (yyvsp - yyrhslen), yyrhslen); + yyerror_range[1].getState().yyloc = *yylocp; +]])[ + /* If yyk == -1, we are running a deferred action on a temporary + stack. In that case, YY_REDUCE_PRINT must not play with YYFILL, + so pretend the stack is "normal". */ + YY_REDUCE_PRINT ((yynormal || yyk == create_state_set_index (-1), yyvsp, yyk, yyrule, yyparser)); + #if YY_EXCEPTIONS + try + { + #endif // YY_EXCEPTIONS + switch (yyrule) + { + ]b4_user_actions[ + default: break; + } + #if YY_EXCEPTIONS + } + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n';]b4_locations_if([ + *yylocp = yyexc.location;])[ + yyparser.error (]b4_locations_if([*yylocp, ])[yyexc.what ()); + YYERROR; + } + #endif // YY_EXCEPTIONS + YY_SYMBOL_PRINT ("-> $$ =", yylhsNonterm (yyrule), *yyvalp, *yylocp); + + return yyok; + # undef yyerrok + # undef YYABORT + # undef YYACCEPT + # undef YYERROR + # undef YYBACKUP + # undef yytoken + # undef yyclearin + # undef YYRECOVERING + } + + YYRESULTTAG + yyresolveStack () + { + if (yystateStack.isSplit ()) + { + int yyn = 0; + for (glr_state* yys = firstTopState (); + yys != yystateStack.yysplitPoint; + yys = yys->pred ()) + yyn += 1; + YYCHK (yyresolveStates (*firstTopState (), yyn)); + } + return yyok; + } + + /** Pop the symbols consumed by reduction #YYRULE from the top of stack + * #YYK of *YYSTACKP, and perform the appropriate semantic action on their + * semantic values. Assumes that all ambiguities in semantic values + * have been previously resolved. Set *YYVALP to the resulting value, + * and *YYLOCP to the computed location (if any). Return value is as + * for userAction. */ + YYRESULTTAG + yydoAction (state_set_index yyk, rule_num yyrule, + value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + const int yynrhs = yyrhsLength (yyrule); + + if (!yystateStack.isSplit()) + { + /* Standard special case: single stack. */ + YYASSERT (yyk.get() == 0); + glr_stack_item* yyrhs = yystateStack.firstTop()->asItem(); + const YYRESULTTAG res + = yyuserAction (yyrule, yynrhs, yyrhs, yyk, yyvalp]b4_locations_if([, yylocp])[); + yystateStack.pop_back(static_cast(yynrhs)); + yystateStack.setFirstTop(&yystateStack[yystateStack.size() - 1].getState()); + return res; + } + else + { + glr_stack_item yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + glr_state* yys = yystateStack.topAt(yyk); + yyrhsVals[YYMAXRHS + YYMAXLEFT].getState().setPred(yys);]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].getState().yyloc = yys->yyloc;]])[ + for (int yyi = 0; yyi < yynrhs; yyi += 1) + { + yys = yys->pred(); + YYASSERT (yys != YY_NULLPTR); + } + yystateStack.yyupdateSplit (*yys); + yystateStack.setTopAt(yyk, yys); + return yyuserAction (yyrule, yynrhs, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yyk, + yyvalp]b4_locations_if([, yylocp])[); + } + } + + /** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE, + * and push back on the resulting nonterminal symbol. Perform the + * semantic action associated with YYRULE and store its value with the + * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently + * unambiguous. Otherwise, store the deferred semantic action with + * the new state. If the new state would have an identical input + * position, LR state, and predecessor to an existing state on the stack, + * it is identified with that existing state, eliminating stack #YYK from + * *YYSTACKP. In this case, the semantic value is + * added to the options for the existing state's semantic value. + */ + YYRESULTTAG + yyglrReduce (state_set_index yyk, rule_num yyrule, bool yyforceEval) + { + size_t yyposn = topState(yyk)->yyposn; + + if (yyforceEval || !yystateStack.isSplit()) + { + value_type val;]b4_locations_if([[ + location_type loc;]])[ + + YYRESULTTAG yyflag = yydoAction (yyk, yyrule, &val]b4_locations_if([, &loc])[); + if (yyflag == yyerr && yystateStack.isSplit()) + {]b4_parse_trace_if([[ + YYCDEBUG << "Parse on stack " << yyk.get () + << " rejected by rule " << yyrule - 1 + << " (line " << int (yyrline[yyrule]) << ").\n"; + ]])[} + if (yyflag != yyok) + return yyflag; + yyglrShift (yyk, + yyLRgotoState (topState(yyk)->yylrState, + yylhsNonterm (yyrule)), + yyposn, val]b4_locations_if([, loc])[);]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yylhsNonterm (yyrule)]], [[val]], [[template destroy]])])[ + } + else + { + glr_state *yys = yystateStack.topAt(yyk); + glr_state *yys0 = yys; + for (int yyn = yyrhsLength (yyrule); 0 < yyn; yyn -= 1) + { + yys = yys->pred(); + YYASSERT (yys != YY_NULLPTR); + } + yystateStack.yyupdateSplit (*yys); + state_num yynewLRState = yyLRgotoState (yys->yylrState, yylhsNonterm (yyrule));]b4_parse_trace_if([[ + YYCDEBUG << "Reduced stack " << yyk.get () + << " by rule " << yyrule - 1 << " (line " << int (yyrline[yyrule]) + << "); action deferred. Now in state " << yynewLRState + << ".\n";]])[ + for (state_set_index yyi = create_state_set_index(0); yyi.uget() < yystateStack.numTops(); ++yyi) + if (yyi != yyk && yystateStack.topAt(yyi) != YY_NULLPTR) + { + const glr_state* yysplit = yystateStack.yysplitPoint; + glr_state* yyp = yystateStack.topAt(yyi); + while (yyp != yys && yyp != yysplit + && yyp->yyposn >= yyposn) + { + if (yyp->yylrState == yynewLRState + && yyp->pred() == yys) + { + yyaddDeferredAction (yyk, yyp, yys0, yyrule); + yystateStack.yytops.yymarkStackDeleted (yyk); + YYCDEBUG << "Merging stack " << yyk.get () + << " into stack " << yyi.get () << ".\n"; + return yyok; + } + yyp = yyp->pred(); + } + } + yystateStack.setTopAt(yyk, yys); + yyglrShiftDefer (yyk, yynewLRState, yyposn, yys0, yyrule); + } + return yyok; + } + + /** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with the (unresolved) + * semantic value of YYRHS under the action for YYRULE. */ + void + yyglrShiftDefer (state_set_index yyk, state_num yylrState, + size_t yyposn, glr_state* yyrhs, rule_num yyrule) + { + glr_state& yynewState = yystateStack.yynewGLRState ( + glr_state (yylrState, yyposn)); + yynewState.setPred (yystateStack.topAt (yyk)); + yystateStack.setTopAt (yyk, &yynewState); + + /* Invokes yyreserveStack. */ + yyaddDeferredAction (yyk, &yynewState, yyrhs, yyrule); + } + + /** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic + * value YYVAL_ARG and source location YYLOC_ARG. */ + void + yyglrShift (state_set_index yyk, state_num yylrState, + size_t yyposn, + const value_type& yyval_arg]b4_locations_if([, const location_type& yyloc_arg])[) + { + glr_state& yynewState = yystateStack.yynewGLRState ( + glr_state (yylrState, yyposn, yyval_arg]b4_locations_if([, yyloc_arg])[)); + yynewState.setPred (yystateStack.topAt(yyk)); + yystateStack.setTopAt (yyk, &yynewState); + yyreserveGlrStack (); + } + +#if ]b4_api_PREFIX[DEBUG + void + yypstack (state_set_index yyk) const + { + yystateStack.yypstates (yystateStack.topAt (yyk)); + } +#endif + + glr_state* topState(state_set_index i) { + return yystateStack.topAt(i); + } + + glr_state* firstTopState() { + return yystateStack.firstTop(); + } + + private: + + void popall_ () + { + /* If the stack is well-formed, pop the stack until it is empty, + destroying its entries as we go. But free the stack regardless + of whether it is well-formed. */ + for (state_set_index k = create_state_set_index(0); k.uget() < yystateStack.numTops(); k += 1) + if (yystateStack.topAt(k) != YY_NULLPTR) + { + while (yystateStack.topAt(k) != YY_NULLPTR) + { + glr_state* state = topState(k);]b4_locations_if([[ + yyerror_range[1].getState().yyloc = state->yyloc;]])[ + if (state->pred() != YY_NULLPTR) + state->destroy ("Cleanup: popping", yyparser); + yystateStack.setTopAt(k, state->pred()); + yystateStack.pop_back(); + } + break; + } + } + + /** Resolve the previous YYN states starting at and including state YYS + * on *YYSTACKP. If result != yyok, some states may have been left + * unresolved possibly with empty semantic option chains. Regardless + * of whether result = yyok, each state has been left with consistent + * data so that destroy can be invoked if necessary. */ + YYRESULTTAG + yyresolveStates (glr_state& yys, int yyn) + { + if (0 < yyn) + { + YYASSERT (yys.pred() != YY_NULLPTR); + YYCHK (yyresolveStates (*yys.pred(), yyn-1)); + if (! yys.yyresolved) + YYCHK (yyresolveValue (yys)); + } + return yyok; + } + + static void + yyuserMerge (int yyn, value_type& yy0, value_type& yy1) + { + YY_USE (yy0); + YY_USE (yy1); + + switch (yyn) + { +]b4_mergers[ + default: break; + } + } + + /** Resolve the ambiguity represented in state YYS in *YYSTACKP, + * perform the indicated actions, and set the semantic value of YYS. + * If result != yyok, the chain of semantic options in YYS has been + * cleared instead or it has been left unmodified except that + * redundant options may have been removed. Regardless of whether + * result = yyok, YYS has been left with consistent data so that + * destroy can be invoked if necessary. */ + YYRESULTTAG + yyresolveValue (glr_state& yys) + { + semantic_option* yybest = yys.firstVal(); + YYASSERT(yybest != YY_NULLPTR); + bool yymerge = false; + YYRESULTTAG yyflag;]b4_locations_if([ + location_type *yylocp = &yys.yyloc;])[ + + semantic_option* yypPrev = yybest; + for (semantic_option* yyp = yybest->next(); + yyp != YY_NULLPTR; ) + { + if (yybest->isIdenticalTo (*yyp)) + { + yybest->mergeWith (*yyp); + yypPrev->setNext(yyp->next()); + yyp = yypPrev->next(); + } + else + { + switch (yypreference (*yybest, *yyp)) + { + case 0:]b4_locations_if([[ + yyresolveLocations (yys, 1);]])[ + return yystateStack.yyreportAmbiguity (*yybest, *yyp, yyparser]b4_locations_if([, *yylocp])[); + break; + case 1: + yymerge = true; + break; + case 2: + break; + case 3: + yybest = yyp; + yymerge = false; + break; + default: + /* This cannot happen so it is not worth a YYASSERT (false), + but some compilers complain if the default case is + omitted. */ + break; + } + yypPrev = yyp; + yyp = yyp->next(); + } + } + + value_type val; + if (yymerge) + { + int yyprec = yydprec[yybest->yyrule]; + yyflag = yyresolveAction (*yybest, &val]b4_locations_if([, yylocp])[); + if (yyflag == yyok) + for (semantic_option* yyp = yybest->next(); + yyp != YY_NULLPTR; + yyp = yyp->next()) + { + if (yyprec == yydprec[yyp->yyrule]) + { + value_type yyval_other;]b4_locations_if([ + location_type yydummy;])[ + yyflag = yyresolveAction (*yyp, &yyval_other]b4_locations_if([, &yydummy])[); + if (yyflag != yyok) + { + yyparser.yy_destroy_ ("Cleanup: discarding incompletely merged value for", + yy_accessing_symbol (yys.yylrState), + this->yyla.value]b4_locations_if([, *yylocp])[); + break; + } + yyuserMerge (yymerger[yyp->yyrule], val, yyval_other);]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yy_accessing_symbol (yys.yylrState)]], [[yyval_other]], [[template destroy]])])[ + } + } + } + else + yyflag = yyresolveAction (*yybest, &val]b4_locations_if([, yylocp])[); + + if (yyflag == yyok) + { + yys.yyresolved = true; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN]b4_variant_if([[ + new (&yys.value ()) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (yys.yylrState)], + [yys.value ()], [copy], [val])], [[ + new (&yys.value ()) value_type (val);]])[ + + YY_IGNORE_MAYBE_UNINITIALIZED_END + } + else + yys.setFirstVal(YY_NULLPTR); +]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yy_accessing_symbol (yys.yylrState)]], [[val]], [[template destroy]])])[ + return yyflag; + } + + /** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its + * user action, and return the semantic value and location in *YYVALP + * and *YYLOCP. Regardless of whether result = yyok, all RHS states + * have been destroyed (assuming the user action destroys all RHS + * semantic values if invoked). */ + YYRESULTTAG + yyresolveAction (semantic_option& yyopt, value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + glr_state* yyoptState = yyopt.state(); + YYASSERT(yyoptState != YY_NULLPTR); + int yynrhs = yyrhsLength (yyopt.yyrule); + YYRESULTTAG yyflag = yyresolveStates (*yyoptState, yynrhs); + if (yyflag != yyok) + { + for (glr_state *yys = yyoptState; yynrhs > 0; yys = yys->pred(), yynrhs -= 1) + yys->destroy ("Cleanup: popping", yyparser); + return yyflag; + } + + glr_stack_item yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + yyrhsVals[YYMAXRHS + YYMAXLEFT].getState().setPred(yyopt.state());]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].getState().yyloc = yyoptState->yyloc;]])[ + { + symbol_type yyla_current = std::move (this->yyla); + this->yyla = std::move (yyopt.yyla); + yyflag = yyuserAction (yyopt.yyrule, yynrhs, + yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + create_state_set_index (-1), + yyvalp]b4_locations_if([, yylocp])[); + this->yyla = std::move (yyla_current); + } + return yyflag; + }]b4_locations_if([[ + + /** Resolve the locations for each of the YYN1 states in *YYSTACKP, + * ending at YYS1. Has no effect on previously resolved states. + * The first semantic option of a state is always chosen. */ + void + yyresolveLocations (glr_state &yys1, int yyn1) + { + if (0 < yyn1) + { + yyresolveLocations (*yys1.pred(), yyn1 - 1); + if (!yys1.yyresolved) + { + glr_stack_item yyrhsloc[1 + YYMAXRHS]; + YYASSERT (yys1.firstVal() != YY_NULLPTR); + semantic_option& yyoption = *yys1.firstVal(); + const int yynrhs = yyrhsLength (yyoption.yyrule); + if (0 < yynrhs) + { + yyresolveLocations (*yyoption.state(), yynrhs); + const glr_state *yys = yyoption.state(); + for (int yyn = yynrhs; yyn > 0; yyn -= 1) + { + yyrhsloc[yyn].getState().yyloc = yys->yyloc; + yys = yys->pred(); + } + } + else + { + /* Both yyresolveAction and yyresolveLocations traverse the GSS + in reverse rightmost order. It is only necessary to invoke + yyresolveLocations on a subforest for which yyresolveAction + would have been invoked next had an ambiguity not been + detected. Thus the location of the previous state (but not + necessarily the previous state itself) is guaranteed to be + resolved already. */ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + yyrhsloc[0].getState().yyloc = yyoption.state()->yyloc; + YY_IGNORE_NULL_DEREFERENCE_END + } + YYLLOC_DEFAULT ((yys1.yyloc), yyrhsloc, yynrhs); + } + } + }]])[ + + /** If yytoken is empty, fetch the next token. */ + void + yyget_token () + { +]b4_parse_param_use()dnl +[ if (this->yyla.empty ()) + { + YYCDEBUG << "Reading a token\n"; +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + {]b4_token_ctor_if([[ + symbol_type yylookahead (]b4_yylex[); + yyla.move (yylookahead);]], [[ + yyla.kind_ = yyparser.yytranslate_ (]b4_yylex[);]])[ + } +#if YY_EXCEPTIONS + catch (const parser_type::syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what () << '\n';]b4_locations_if([ + this->yyla.location = yyexc.location;])[ + yyparser.error (]b4_locations_if([this->yyla.location, ])[yyexc.what ()); + // Map errors caught in the scanner to the error token, so that error + // handling is started. + this->yyla.kind_ = ]b4_symbol(error, kind)[; + } + } +#endif // YY_EXCEPTIONS + if (this->yyla.kind () == ]b4_symbol(eof, kind)[) + YYCDEBUG << "Now at end of input.\n"; + else + YY_SYMBOL_PRINT ("Next token is", this->yyla.kind (), this->yyla.value, this->yyla.location); + } + + + /* Bison grammar-table manipulation. */ + + /** The action to take in YYSTATE on seeing YYTOKEN. + * Result R means + * R < 0: Reduce on rule -R. + * R = 0: Error. + * R > 0: Shift to state R. + * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list + * of conflicting reductions. + */ + static int + yygetLRActions (state_num yystate, symbol_kind_type yytoken, const short*& yyconflicts) + { + int yyindex = yypact[yystate] + yytoken; + if (yytoken == ]b4_symbol(error, kind)[) + { + // This is the error token. + yyconflicts = yyconfl; + return 0; + } + else if (yy_is_defaulted_state (yystate) + || yyindex < 0 || YYLAST < yyindex || yycheck[yyindex] != yytoken) + { + yyconflicts = yyconfl; + return -yydefact[yystate]; + } + else if (! yytable_value_is_error (yytable[yyindex])) + { + yyconflicts = yyconfl + yyconflp[yyindex]; + return yytable[yyindex]; + } + else + { + yyconflicts = yyconfl + yyconflp[yyindex]; + return 0; + } + } + + /** Compute post-reduction state. + * \param yystate the current state + * \param yysym the nonterminal to push on the stack + */ + static state_num + yyLRgotoState (state_num yystate, symbol_kind_type yysym) + { + const int yyr = yypgoto[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= YYLAST && yycheck[yyr] == yystate) + return yytable[yyr]; + else + return yydefgoto[yysym - YYNTOKENS]; + } + + static bool + yypact_value_is_default (state_num yystate) + { + return ]b4_table_value_equals([[pact]], [[yystate]], [b4_pact_ninf], [YYPACT_NINF])[; + } + + static bool + yytable_value_is_error (int yytable_value YY_ATTRIBUTE_UNUSED) + { + return ]b4_table_value_equals([[table]], [[yytable_value]], [b4_table_ninf], [YYTABLE_NINF])[; + } + + static bool + yy_is_shift_action (int yyaction) YY_NOEXCEPT + { + return 0 < yyaction; + } + + static bool + yy_is_error_action (int yyaction) YY_NOEXCEPT + { + return yyaction == 0; + } + + /** Whether LR state YYSTATE has only a default reduction + * (regardless of token). */ + static bool + yy_is_defaulted_state (state_num yystate) + { + return yypact_value_is_default (yypact[yystate]); + } + + /** The default reduction for YYSTATE, assuming it has one. */ + static rule_num + yy_default_action (state_num yystate) + { + return yydefact[yystate]; + } + + /* GLRStacks */ + + /** Y0 and Y1 represent two possible actions to take in a given + * parsing state; return 0 if no combination is possible, + * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */ + static int + yypreference (const semantic_option& y0, const semantic_option& y1) + { + const rule_num r0 = y0.yyrule, r1 = y1.yyrule; + const int p0 = yydprec[r0], p1 = yydprec[r1]; + + if (p0 == p1) + { + if (yymerger[r0] == 0 || yymerger[r0] != yymerger[r1]) + return 0; + else + return 1; + } + else if (p0 == 0 || p1 == 0) + return 0; + else if (p0 < p1) + return 3; + else if (p1 < p0) + return 2; + else + return 0; + } + +]b4_parse_param_vars[ + }; // class ]b4_parser_class[::glr_stack +} // namespace ]b4_namespace_ref[ + + +#if ]b4_api_PREFIX[DEBUG +namespace +{ + void + yypstack (const glr_stack& yystack, size_t yyk) + { + yystack.yypstack (create_state_set_index (static_cast (yyk))); + } + + void + yypdumpstack (const glr_stack& yystack) + { + yystack.yypdumpstack (); + } +} +#endif + +]b4_namespace_open[ + /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[)]m4_ifset([b4_parse_param], [ + :])[ +#if ]b4_api_PREFIX[DEBUG + ]m4_ifset([b4_parse_param], [ ], [ :])[yycdebug_ (&std::cerr)]m4_ifset([b4_parse_param], [,])[ +#endif]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + glr_stack yystack(YYINITDEPTH, *this]b4_user_args[); + return yystack.parse (); + } + +]b4_parse_error_bmatch([custom\|detailed], +[[ const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ + } +]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytname_[yysymbol]; + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + std::string + ]b4_parser_class[::yytnamerr_ (const char *yystr) + { + if (*yystr == '"') + { + std::string yyr; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + yyr += *yyp; + break; + + case '"': + return yyr; + } + do_not_strip_quotes: ; + } + + return yystr; + } + + std::string + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytnamerr_ (yytname_[yysymbol]); + } +]])[ + +]b4_parse_error_bmatch([simple\|verbose], +[[#if ]b4_api_PREFIX[DEBUG]b4_tname_if([[ || 1]])[ + // YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + // First, the terminals, then, starting at \a YYNTOKENS, nonterminals. + const char* + const ]b4_parser_class[::yytname_[] = + { + ]b4_tname[ + }; +#endif +]])[ + +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // ]b4_parser_class[::context. + ]b4_parser_class[::context::context (glr_stack& yystack, const symbol_type& yyla) + : yystack_ (yystack) + , yyla_ (yyla) + {} + + int + ]b4_parser_class[::context::expected_tokens (symbol_kind_type yyarg[], int yyargn) const + { + // Actual number of expected tokens + int yycount = 0; + const int yyn = yypact[yystack_.firstTopState()->yylrState]; + if (!yystack_.yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for this + state because they are default actions. */ + const int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + const int yychecklim = YYLAST - yyn + 1; + const int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yystack_.yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (symbol_kind_type, yyx); + } + } + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; + } + +]])[ + +]b4_parse_error_bmatch([detailed\|verbose], [[ + int + ]b4_parser_class[::yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const + { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yyla) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is + a consistent state with a default action. There might have + been a previous inconsistent state, consistent state with a + non-default action, or user semantic action that manipulated + yyla. (However, yyla is currently not documented for users.) + */ + + if (!yyctx.lookahead ().empty ()) + { + if (yyarg) + yyarg[0] = yyctx.token (); + int yyn = yyctx.expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1); + return yyn + 1; + } + return 0; + } + + // Generate an error message. + std::string + ]b4_parser_class[::yysyntax_error_ (const context& yyctx) const + { + // Its maximum. + enum { YYARGS_MAX = 5 }; + // Arguments of yyformat. + symbol_kind_type yyarg[YYARGS_MAX]; + int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX); + + char const* yyformat = YY_NULLPTR; + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: // Avoid compiler warnings. + YYCASE_ (0, YY_("syntax error")); + YYCASE_ (1, YY_("syntax error, unexpected %s")); + YYCASE_ (2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_ (3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_ (4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_ (5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + std::string yyres; + // Argument number. + std::ptrdiff_t yyi = 0; + for (char const* yyp = yyformat; *yyp; ++yyp) + if (yyp[0] == '%' && yyp[1] == 's' && yyi < yycount) + { + yyres += symbol_name (yyarg[yyi++]); + ++yyp; + } + else + yyres += *yyp; + return yyres; + }]])[ + + void + ]b4_parser_class[::yy_destroy_ (const char* yymsg, symbol_kind_type yykind, + value_type& yyval]b4_locations_if([[, + location_type& yyloc]])[) + { + YY_USE (yyval);]b4_locations_if([[ + YY_USE (yyloc);]])[ + if (!yymsg) + yymsg = "Deleting"; + ]b4_parser_class[& yyparser = *this; + YY_USE (yyparser); + YY_SYMBOL_PRINT (yymsg, yykind, yyval, yyloc); + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + ]m4_do([m4_pushdef([b4_symbol_action], m4_defn([b4_symbol_action_for_yyval]))], + [b4_symbol_actions([destructor])], + [m4_popdef([b4_symbol_action])])[ + YY_IGNORE_MAYBE_UNINITIALIZED_END + } + +#if ]b4_api_PREFIX[DEBUG + /*--------------------. + | Print this symbol. | + `--------------------*/ + + void + ]b4_parser_class[::yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const + {]b4_locations_if([[ + YY_USE (yyloc);]])[ + YY_USE (yyval); + std::ostream& yyo = debug_stream (); + YY_USE (yyo); + ]m4_do([m4_pushdef([b4_symbol_action], m4_defn([b4_symbol_action_for_yyval]))], + [b4_symbol_actions([printer])], + [m4_popdef([b4_symbol_action])])[ + } + + void + ]b4_parser_class[::yy_symbol_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const + { + *yycdebug_ << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << symbol_name (yykind) << " ("]b4_locations_if([[ + << yyloc << ": "]])[; + yy_symbol_value_print_ (yykind, yyval]b4_locations_if([[, yyloc]])[); + *yycdebug_ << ')'; + } + + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + // Actually, it is yydebug which is really used. + yydebug = l; + } +#endif // ]b4_api_PREFIX[DEBUG + +]b4_token_ctor_if([], [b4_yytranslate_define([cc])])[ + +]b4_token_ctor_if([], [[ + /*---------. + | symbol. | + `---------*/ +]b4_public_types_define([cc])])[ +]b4_namespace_close[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/java-skel.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/java-skel.m4 new file mode 100644 index 0000000..11cbc49 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/java-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# Java skeleton dispatching for Bison. + +# Copyright (C) 2007, 2009-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [b4_complain([%%glr-parser not supported for Java])]) +b4_nondeterministic_if([b4_complain([%%nondeterministic-parser not supported for Java])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.java]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/java.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/java.m4 new file mode 100644 index 0000000..8b0828b --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/java.m4 @@ -0,0 +1,502 @@ + -*- Autoconf -*- + +# Java language support for Bison + +# Copyright (C) 2007-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c-like.m4]) + + +# b4_list2(LIST1, LIST2) +# ---------------------- +# Join two lists with a comma if necessary. +m4_define([b4_list2], + [$1[]m4_ifval(m4_quote($1), [m4_ifval(m4_quote($2), [[, ]])])[]$2]) + + +# b4_percent_define_get3(DEF, PRE, POST, NOT) +# ------------------------------------------- +# Expand to the value of DEF surrounded by PRE and POST if it's %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_get3], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$2[]b4_percent_define_get([$1])[]$3], [$4])]) + + + +# b4_flag_value(BOOLEAN-FLAG) +# --------------------------- +m4_define([b4_flag_value], [b4_flag_if([$1], [true], [false])]) + + +# b4_parser_class_declaration +# --------------------------- +# The declaration of the parser class ("class YYParser"), with all its +# qualifiers/annotations. +b4_percent_define_default([[api.parser.abstract]], [[false]]) +b4_percent_define_default([[api.parser.final]], [[false]]) +b4_percent_define_default([[api.parser.public]], [[false]]) +b4_percent_define_default([[api.parser.strictfp]], [[false]]) + +m4_define([b4_parser_class_declaration], +[b4_percent_define_get3([api.parser.annotations], [], [ ])dnl +b4_percent_define_flag_if([api.parser.public], [public ])dnl +b4_percent_define_flag_if([api.parser.abstract], [abstract ])dnl +b4_percent_define_flag_if([api.parser.final], [final ])dnl +b4_percent_define_flag_if([api.parser.strictfp], [strictfp ])dnl +[class ]b4_parser_class[]dnl +b4_percent_define_get3([api.parser.extends], [ extends ])dnl +b4_percent_define_get3([api.parser.implements], [ implements ])]) + + +# b4_lexer_if(TRUE, FALSE) +# ------------------------ +m4_define([b4_lexer_if], +[b4_percent_code_ifdef([[lexer]], [$1], [$2])]) + + +# b4_identification +# ----------------- +m4_define([b4_identification], +[[ /** Version number for the Bison executable that generated this parser. */ + public static final String bisonVersion = "]b4_version_string["; + + /** Name of the skeleton that generated this parser. */ + public static final String bisonSkeleton = ]b4_skeleton[; +]]) + + +## ------------ ## +## Data types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# MIN to MAX (included). +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-128], [127]), [1], [byte], + b4_ints_in($@, [-32768], [32767]), [1], [short], + [int])]) + +# b4_int_type_for(NAME) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# 'NAME_min' to 'NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + +# b4_null +# ------- +m4_define([b4_null], [null]) + + +# b4_typed_parser_table_define(TYPE, NAME, DATA, COMMENT) +# ------------------------------------------------------- +# We use intermediate functions (e.g., yypact_init) to work around the +# 64KB limit for JVM methods. See +# https://lists.gnu.org/r/help-bison/2008-11/msg00004.html. +m4_define([b4_typed_parser_table_define], +[m4_ifval([$4], [b4_comment([$4]) + ])dnl +[private static final ]$1[[] yy$2_ = yy$2_init(); + private static final ]$1[[] yy$2_init() + { + return new ]$1[[] + { + ]$3[ + }; + }]]) + + +# b4_integral_parser_table_define(NAME, DATA, COMMENT) +#----------------------------------------------------- +m4_define([b4_integral_parser_table_define], +[b4_typed_parser_table_define([b4_int_type_for([$2])], [$1], [$2], [$3])]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + + +# b4_token_enum(TOKEN-NUM) +# ------------------------ +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_visible_if([$1], + [m4_format([[ /** Token %s, to be returned by the scanner. */ + static final int %s = %s%s; +]], + b4_symbol([$1], [tag]), + b4_symbol([$1], [id]), + b4_symbol([$1], b4_api_token_raw_if([[number]], [[code]])))])]) + + +# b4_token_enums +# -------------- +# Output the definition of the tokens (if there are) as enums. +m4_define([b4_token_enums], +[b4_any_token_visible_if([ /* Token kinds. */ +b4_symbol_foreach([b4_token_enum])])]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[SymbolKind.b4_symbol_kind_base($@)]) + + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-30s %s], + m4_format([[%s(%s)%s]], + b4_symbol([$1], [kind_base]), + [$1], + m4_if([$1], b4_last_symbol, [[;]], [[,]])), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +m4_define([b4_declare_symbol_enum], +[[ public enum SymbolKind + { +]b4_symbol_foreach([b4_symbol_enum])[ + + private final int yycode_; + + SymbolKind (int n) { + this.yycode_ = n; + } + + private static final SymbolKind[] values_ = { + ]m4_map_args_sep([b4_symbol_kind(], [)], [, + ], b4_symbol_numbers)[ + }; + + static final SymbolKind get(int code) { + return values_[code]; + } + + public final int getCode() { + return this.yycode_; + } + +]b4_parse_error_bmatch( +[simple\|verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + private static String yytnamerr_(String yystr) + { + if (yystr.charAt (0) == '"') + { + StringBuffer yyr = new StringBuffer(); + strip_quotes: for (int i = 1; i < yystr.length(); i++) + switch (yystr.charAt(i)) + { + case '\'': + case ',': + break strip_quotes; + + case '\\': + if (yystr.charAt(++i) != '\\') + break strip_quotes; + /* Fall through. */ + default: + yyr.append(yystr.charAt(i)); + break; + + case '"': + return yyr.toString(); + } + } + return yystr; + } + + /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at \a YYNTOKENS_, nonterminals. */ + ]b4_typed_parser_table_define([String], [tname], [b4_tname])[ + + /* The user-facing name of this symbol. */ + public final String getName() { + return yytnamerr_(yytname_[yycode_]); + } +]], +[custom\|detailed], +[[ /* YYNAMES_[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at \a YYNTOKENS_, nonterminals. */ + ]b4_typed_parser_table_define([String], [names], [b4_symbol_names])[ + + /* The user-facing name of this symbol. */ + public final String getName() { + return yynames_[yycode_]; + }]])[ + }; +]])]) + + + +# b4_case(ID, CODE, [COMMENTS]) +# ----------------------------- +# We need to fool Java's stupid unreachable code detection. +m4_define([b4_case], +[ case $1:m4_ifval([$3], [ b4_comment([$3])]) + if (yyn == $1) + $2; + break; +]) + + +# b4_predicate_case(LABEL, CONDITIONS) +# ------------------------------------ +m4_define([b4_predicate_case], +[ case $1: + if (! ($2)) YYERROR; + break; +]) + + +## -------- ## +## Checks. ## +## -------- ## + +b4_percent_define_check_kind([[api.value.type]], [code], [deprecated]) + +b4_percent_define_check_kind([[annotations]], [code], [deprecated]) +b4_percent_define_check_kind([[extends]], [code], [deprecated]) +b4_percent_define_check_kind([[implements]], [code], [deprecated]) +b4_percent_define_check_kind([[init_throws]], [code], [deprecated]) +b4_percent_define_check_kind([[lex_throws]], [code], [deprecated]) +b4_percent_define_check_kind([[api.parser.class]], [code], [deprecated]) +b4_percent_define_check_kind([[throws]], [code], [deprecated]) + + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +m4_define([b4_yystype], [b4_percent_define_get([[api.value.type]])]) +b4_percent_define_default([[api.value.type]], [[Object]]) +b4_percent_define_default([[api.symbol.prefix]], [[S_]]) + +# b4_api_prefix, b4_api_PREFIX +# ---------------------------- +# Corresponds to %define api.prefix +b4_percent_define_default([[api.prefix]], [[YY]]) +m4_define([b4_api_prefix], +[b4_percent_define_get([[api.prefix]])]) +m4_define([b4_api_PREFIX], +[m4_toupper(b4_api_prefix)]) + +# b4_prefix +# --------- +# If the %name-prefix is not given, it is api.prefix. +m4_define_default([b4_prefix], [b4_api_prefix]) + +b4_percent_define_default([[api.parser.class]], [b4_prefix[]Parser]) +m4_define([b4_parser_class], [b4_percent_define_get([[api.parser.class]])]) + +b4_percent_define_default([[lex_throws]], [[java.io.IOException]]) +m4_define([b4_lex_throws], [b4_percent_define_get([[lex_throws]])]) + +b4_percent_define_default([[throws]], []) +m4_define([b4_throws], [b4_percent_define_get([[throws]])]) + +b4_percent_define_default([[init_throws]], []) +m4_define([b4_init_throws], [b4_percent_define_get([[init_throws]])]) + +b4_percent_define_default([[api.location.type]], [Location]) +m4_define([b4_location_type], [b4_percent_define_get([[api.location.type]])]) + +b4_percent_define_default([[api.position.type]], [Position]) +m4_define([b4_position_type], [b4_percent_define_get([[api.position.type]])]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[i18n($1)]]) + + +# b4_trans(STRING) +# ---------------- +# Translate a string if i18n is enabled. Avoid collision with b4_translate. +m4_define([b4_trans], +[b4_has_translations_if([i18n($1)], [$1])]) + + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [(($3)($1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [((b4_symbol([$2], [type]))($1))], + [$1])], + [$1])])]) + + +# b4_lhs_value([SYMBOL-NUM], [TYPE]) +# ---------------------------------- +# See README. +m4_define([b4_lhs_value], [yyval]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[yystack.valueAt (b4_subtract($@))]) + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +# +# In this simple implementation, %token and %type have class names +# between the angle brackets. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2])], [$3], [$4])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[yystack.locationAt (b4_subtract($@))]) + + +# b4_lex_param +# b4_parse_param +# -------------- +# If defined, b4_lex_param arrives double quoted, but below we prefer +# it to be single quoted. Same for b4_parse_param. + +# TODO: should be in bison.m4 +m4_define_default([b4_lex_param], [[]]) +m4_define([b4_lex_param], b4_lex_param) +m4_define([b4_parse_param], b4_parse_param) + +# b4_lex_param_decl +# ----------------- +# Extra formal arguments of the constructor. +m4_define([b4_lex_param_decl], +[m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_decls(b4_lex_param))], + [$1])]) + +m4_define([b4_param_decls], + [m4_map([b4_param_decl], [$@])]) +m4_define([b4_param_decl], [, $1]) + +m4_define([b4_remove_comma], [m4_ifval(m4_quote($1), [$1, ], [])m4_shift2($@)]) + + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [b4_remove_comma([$1], + b4_param_decls(b4_parse_param))], + [$1])]) + + + +# b4_lex_param_call +# ----------------- +# Delegating the lexer parameters to the lexer constructor. +m4_define([b4_lex_param_call], + [m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_calls(b4_lex_param))], + [$1])]) +m4_define([b4_param_calls], + [m4_map([b4_param_call], [$@])]) +m4_define([b4_param_call], [, $2]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [b4_constructor_calls(b4_parse_param)])]) + +m4_define([b4_constructor_calls], + [m4_map([b4_constructor_call], [$@])]) +m4_define([b4_constructor_call], + [this.$2 = $2; + ]) + + + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + /* User arguments. */ +b4_var_decls(b4_parse_param)])]) + +m4_define([b4_var_decls], + [m4_map_sep([b4_var_decl], [ +], [$@])]) +m4_define([b4_var_decl], + [ protected final $1;]) + + + +# b4_maybe_throws(THROWS) +# ----------------------- +# Expand to either an empty string or "throws THROWS". +m4_define([b4_maybe_throws], + [m4_ifval($1, [ throws $1])]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.cc b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.cc new file mode 100644 index 0000000..7cb69d3 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.cc @@ -0,0 +1,1633 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c++.m4]) + +# api.value.type=variant is valid. +m4_define([b4_value_type_setup_variant]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +# b4_tname_if(TNAME-NEEDED, TNAME-NOT-NEEDED) +# ------------------------------------------- +m4_define([b4_tname_if], +[m4_case(b4_percent_define_get([[parse.error]]), + [verbose], [$1], + [b4_token_table_if([$1], + [$2])])]) + + +# b4_integral_parser_table_declare(TABLE-NAME, CONTENT, COMMENT) +# -------------------------------------------------------------- +# Declare "parser::yy_" whose contents is CONTENT. +m4_define([b4_integral_parser_table_declare], +[m4_ifval([$3], [b4_comment([$3], [ ]) +])dnl + static const b4_int_type_for([$2]) yy$1_[[]];dnl +]) + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "parser::yy_" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[ const b4_int_type_for([$2]) + b4_parser_class::yy$1_[[]] = + { + $2 + };dnl +]) + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[symbol_kind::b4_symbol_kind_base($@)]) + + +# b4_symbol_value_template(VAL, SYMBOL-NUM, [TYPE]) +# ------------------------------------------------- +# Same as b4_symbol_value, but used in a template method. It makes +# a difference when using variants. Note that b4_value_type_setup_union +# overrides b4_symbol_value, so we must override it again. +m4_copy([b4_symbol_value], [b4_symbol_value_template]) +m4_append([b4_value_type_setup_union], +[m4_copy_force([b4_symbol_value_union], [b4_symbol_value_template])]) + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([yylhs.value], [$1], [$2])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[yylhs.location]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[yystack_@{b4_subtract($@)@}]) + + +# b4_rhs_state(RULE-LENGTH, POS) +# ------------------------------ +# The state corresponding to the symbol #POS, where the current +# rule has RULE-LENGTH symbols on RHS. +m4_define([b4_rhs_state], +[b4_rhs_data([$1], [$2]).state]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +m4_define([_b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).value], [$3], [$4])]) + +m4_define([b4_rhs_value], +[b4_percent_define_ifdef([api.value.automove], + [YY_MOVE (_b4_rhs_value($@))], + [_b4_rhs_value($@)])]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[b4_rhs_data([$1], [$2]).location]) + + +# b4_symbol_action(SYMBOL-NUM, KIND) +# ---------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[m4_pushdef([b4_symbol_value], m4_defn([b4_symbol_value_template]))[]dnl +b4_dollar_pushdef([yysym.value], + [$1], + [], + [yysym.location])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +m4_popdef([b4_symbol_value])[]dnl +b4_dollar_popdef[]dnl +])]) + + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_token_ctor_if( +[b4_function_call([yylex], + [symbol_type], m4_ifdef([b4_lex_param], b4_lex_param))], +[b4_function_call([yylex], [int], + [[value_type *], [&yyla.value]][]dnl +b4_locations_if([, [[location_type *], [&yyla.location]]])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param))])]) + + +m4_pushdef([b4_copyright_years], + [2002-2015, 2018-2021]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +b4_bison_locations_if([# Backward compatibility. + m4_define([b4_location_constructors]) + m4_include(b4_skeletonsdir/[location.cc])]) +m4_include(b4_skeletonsdir/[stack.hh]) +b4_variant_if([m4_include(b4_skeletonsdir/[variant.hh])]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[b4_percent_code_get([[requires]])[ +]b4_parse_assert_if([# include ])[ +# include // std::abort +# include +# include +# include +# include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +]b4_attribute_define[ +]b4_cast_define[ +]b4_null_define[ + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ +]b4_symbol_type_define[ + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + virtual ~]b4_parser_class[ (); + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + ]b4_parser_class[ (const ]b4_parser_class[&) = delete; + /// Non copyable. + ]b4_parser_class[& operator= (const ]b4_parser_class[&) = delete; +#endif + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + virtual int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const YY_ATTRIBUTE_PURE; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + typedef int debug_level_type; + /// The current debugging level. + debug_level_type debug_level () const YY_ATTRIBUTE_PURE; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + virtual void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + + /// Report a syntax error. + void error (const syntax_error& err); + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol);]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol); +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static std::string symbol_name (symbol_kind_type yysymbol);]])[ + +]b4_token_constructor_define[ +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + class context + { + public: + context (const ]b4_parser_class[& yyparser, const symbol_type& yyla); + const symbol_type& lookahead () const YY_NOEXCEPT { return yyla_; } + symbol_kind_type token () const YY_NOEXCEPT { return yyla_.kind (); }]b4_locations_if([[ + const location_type& location () const YY_NOEXCEPT { return yyla_.location; } +]])[ + /// Put in YYARG at most YYARGN of the expected tokens, and return the + /// number of tokens stored in YYARG. If YYARG is null, return the + /// number of expected tokens (guaranteed to be less than YYNTOKENS). + int expected_tokens (symbol_kind_type yyarg[], int yyargn) const; + + private: + const ]b4_parser_class[& yyparser_; + const symbol_type& yyla_; + }; +]])[ + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + ]b4_parser_class[ (const ]b4_parser_class[&); + /// Non copyable. + ]b4_parser_class[& operator= (const ]b4_parser_class[&); +#endif +]b4_lac_if([[ + /// Check the lookahead yytoken. + /// \returns true iff the token will be eventually shifted. + bool yy_lac_check_ (symbol_kind_type yytoken) const; + /// Establish the initial context if no initial context currently exists. + /// \returns true iff the token will be eventually shifted. + bool yy_lac_establish_ (symbol_kind_type yytoken); + /// Discard any previous initial lookahead context because of event. + /// \param event the event which caused the lookahead to be discarded. + /// Only used for debbuging output. + void yy_lac_discard_ (const char* event);]])[ + + /// Stored state numbers (used for stacks). + typedef ]b4_int_type(0, m4_eval(b4_states_number - 1))[ state_type; +]b4_parse_error_bmatch( +[custom], [[ + /// Report a syntax error + /// \param yyctx the context in which the error occurred. + void report_syntax_error (const context& yyctx) const;]], +[detailed\|verbose], [[ + /// The arguments of the error message. + int yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const; + + /// Generate an error message. + /// \param yyctx the context in which the error occurred. + virtual std::string yysyntax_error_ (const context& yyctx) const;]])[ + /// Compute post-reduction state. + /// \param yystate the current state + /// \param yysym the nonterminal to push on the stack + static state_type yy_lr_goto_state_ (state_type yystate, int yysym); + + /// Whether the given \c yypact_ value indicates a defaulted state. + /// \param yyvalue the value to check + static bool yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT; + + /// Whether the given \c yytable_ value indicates a syntax error. + /// \param yyvalue the value to check + static bool yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT; + + static const ]b4_int_type(b4_pact_ninf, b4_pact_ninf)[ yypact_ninf_; + static const ]b4_int_type(b4_table_ninf, b4_table_ninf)[ yytable_ninf_; + + /// Convert a scanner token kind \a t to a symbol kind. + /// In theory \a t should be a token_kind_type, but character literals + /// are valid, yet not members of the token_kind_type enum. + static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT; + +]b4_parse_error_bmatch( +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// For a symbol, its name in clear. + static const char* const yytname_[]; +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// Convert the symbol name \a n to a form suitable for a diagnostic. + static std::string yytnamerr_ (const char *yystr); + + /// For a symbol, its name in clear. + static const char* const yytname_[]; +]])[ + + // Tables. +]b4_parser_tables_declare[ + +#if ]b4_api_PREFIX[DEBUG +]b4_integral_parser_table_declare([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ + /// Report on the debug stream that the rule \a r is going to be reduced. + virtual void yy_reduce_print_ (int r) const; + /// Print the state stack on the debug stream. + virtual void yy_stack_print_ () const; + + /// Debugging level. + int yydebug_; + /// Debug stream. + std::ostream* yycdebug_; + + /// \brief Display a symbol kind, value and location. + /// \param yyo The output stream. + /// \param yysym The symbol. + template + void yy_print_ (std::ostream& yyo, const basic_symbol& yysym) const; +#endif + + /// \brief Reclaim the memory associated to a symbol. + /// \param yymsg Why this token is reclaimed. + /// If null, print nothing. + /// \param yysym The symbol. + template + void yy_destroy_ (const char* yymsg, basic_symbol& yysym) const; + + private: + /// Type access provider for state based symbols. + struct by_state + { + /// Default constructor. + by_state () YY_NOEXCEPT; + + /// The symbol kind as needed by the constructor. + typedef state_type kind_type; + + /// Constructor. + by_state (kind_type s) YY_NOEXCEPT; + + /// Copy constructor. + by_state (const by_state& that) YY_NOEXCEPT; + + /// Record that this symbol is empty. + void clear () YY_NOEXCEPT; + + /// Steal the symbol kind from \a that. + void move (by_state& that); + + /// The symbol kind (corresponding to \a state). + /// \a ]b4_symbol(empty, kind)[ when empty. + symbol_kind_type kind () const YY_NOEXCEPT; + + /// The state number used to denote an empty symbol. + /// We use the initial state, as it does not have a value. + enum { empty_state = 0 }; + + /// The state. + /// \a empty when empty. + state_type state; + }; + + /// "Internal" symbol: element of the stack. + struct stack_symbol_type : basic_symbol + { + /// Superclass. + typedef basic_symbol super_type; + /// Construct an empty symbol. + stack_symbol_type (); + /// Move or copy construction. + stack_symbol_type (YY_RVREF (stack_symbol_type) that); + /// Steal the contents from \a sym to build this. + stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) sym); +#if YY_CPLUSPLUS < 201103L + /// Assignment, needed by push_back by some old implementations. + /// Moves the contents of that. + stack_symbol_type& operator= (stack_symbol_type& that); + + /// Assignment, needed by push_back by other implementations. + /// Needed by some other old implementations. + stack_symbol_type& operator= (const stack_symbol_type& that); +#endif + }; + +]b4_stack_define[ + + /// Stack type. + typedef stack stack_type; + + /// The stack. + stack_type yystack_;]b4_lac_if([[ + /// The stack for LAC. + /// Logically, the yy_lac_stack's lifetime is confined to the function + /// yy_lac_check_. We just store it as a member of this class to hold + /// on to the memory and to avoid frequent reallocations. + /// Since yy_lac_check_ is const, this member must be mutable. + mutable std::vector yylac_stack_; + /// Whether an initial LAC context was established. + bool yy_lac_established_; +]])[ + + /// Push a new state on the stack. + /// \param m a debug message to display + /// if null, no trace is output. + /// \param sym the symbol + /// \warning the contents of \a s.value is stolen. + void yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym); + + /// Push a new look ahead token on the state on the stack. + /// \param m a debug message to display + /// if null, no trace is output. + /// \param s the state + /// \param sym the symbol (for its value and location). + /// \warning the contents of \a sym.value is stolen. + void yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym); + + /// Pop \a n symbols from the stack. + void yypop_ (int n = 1) YY_NOEXCEPT; + + /// Constants. + enum + { + yylast_ = ]b4_last[, ///< Last index in yytable_. + yynnts_ = ]b4_nterms_number[, ///< Number of nonterminal symbols. + yyfinal_ = ]b4_final_state_number[ ///< Termination state number. + }; + +]b4_parse_param_vars[ +]b4_percent_code_get([[yy_bison_internal_hook]])[ + }; + +]b4_token_ctor_if([b4_yytranslate_define([$1])[ +]b4_public_types_define([$1])])[ +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]])[ + + +## -------------- ## +## Output files. ## +## -------------- ## + +# ------------- # +# Header file. # +# ------------- # + +]b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Skeleton interface for Bison LALR(1) parsers in C++])[ + +/** + ** \file ]b4_spec_mapped_header_file[ + ** Define the ]b4_namespace_ref[::parser class. + */ + +// C++ LALR(1) parser skeleton written by Akim Demaille. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations(hh)[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end[ +]])[ + + +# --------------------- # +# Implementation file. # +# --------------------- # + +]b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison LALR(1) parsers in C++])[ +]b4_disclaimer[ +]b4_percent_code_get([[top]])[]dnl +m4_if(b4_prefix, [yy], [], +[ +// Take the name prefix into account. +[#]define yylex b4_prefix[]lex])[ + +]b4_user_pre_prologue[ + +]b4_header_if([[#include "@basename(]b4_spec_header_file[@)"]], + [b4_shared_declarations([cc])])[ + +]b4_user_post_prologue[ +]b4_percent_code_get[ + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include // FIXME: INFRINGES ON USER NAME SPACE. +# define YY_(msgid) dgettext ("bison-runtime", msgid) +# endif +# endif +# ifndef YY_ +# define YY_(msgid) msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +]b4_locations_if([dnl +[#define YYRHSLOC(Rhs, K) ((Rhs)[K].location) +]b4_yylloc_default_define])[ + +// Enable debugging if requested. +#if ]b4_api_PREFIX[DEBUG + +// A pseudo ostream that takes yydebug_ into account. +# define YYCDEBUG if (yydebug_) (*yycdebug_) + +# define YY_SYMBOL_PRINT(Title, Symbol) \ + do { \ + if (yydebug_) \ + { \ + *yycdebug_ << Title << ' '; \ + yy_print_ (*yycdebug_, Symbol); \ + *yycdebug_ << '\n'; \ + } \ + } while (false) + +# define YY_REDUCE_PRINT(Rule) \ + do { \ + if (yydebug_) \ + yy_reduce_print_ (Rule); \ + } while (false) + +# define YY_STACK_PRINT() \ + do { \ + if (yydebug_) \ + yy_stack_print_ (); \ + } while (false) + +#else // !]b4_api_PREFIX[DEBUG + +# define YYCDEBUG if (false) std::cerr +# define YY_SYMBOL_PRINT(Title, Symbol) YY_USE (Symbol) +# define YY_REDUCE_PRINT(Rule) static_cast (0) +# define YY_STACK_PRINT() static_cast (0) + +#endif // !]b4_api_PREFIX[DEBUG + +#define yyerrok (yyerrstatus_ = 0) +#define yyclearin (yyla.clear ()) + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab +#define YYRECOVERING() (!!yyerrstatus_) + +]b4_namespace_open[ + /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[) +#if ]b4_api_PREFIX[DEBUG + : yydebug_ (false), + yycdebug_ (&std::cerr)]b4_lac_if([,], [m4_ifset([b4_parse_param], [,])])[ +#else +]b4_lac_if([ :], [m4_ifset([b4_parse_param], [ :])])[ +#endif]b4_lac_if([[ + yy_lac_established_ (false)]m4_ifset([b4_parse_param], [,])])[]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + /*---------. + | symbol. | + `---------*/ + +]b4_token_ctor_if([], [b4_public_types_define([cc])])[ + + // by_state. + ]b4_parser_class[::by_state::by_state () YY_NOEXCEPT + : state (empty_state) + {} + + ]b4_parser_class[::by_state::by_state (const by_state& that) YY_NOEXCEPT + : state (that.state) + {} + + void + ]b4_parser_class[::by_state::clear () YY_NOEXCEPT + { + state = empty_state; + } + + void + ]b4_parser_class[::by_state::move (by_state& that) + { + state = that.state; + that.clear (); + } + + ]b4_parser_class[::by_state::by_state (state_type s) YY_NOEXCEPT + : state (s) + {} + + ]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_state::kind () const YY_NOEXCEPT + { + if (state == empty_state) + return ]b4_symbol(empty, kind)[; + else + return YY_CAST (symbol_kind_type, yystos_[+state]); + } + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type () + {} + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type (YY_RVREF (stack_symbol_type) that) + : super_type (YY_MOVE (that.state)]b4_variant_if([], [, YY_MOVE (that.value)])b4_locations_if([, YY_MOVE (that.location)])[) + {]b4_variant_if([ + b4_symbol_variant([that.kind ()], + [value], [YY_MOVE_OR_COPY], [YY_MOVE (that.value)])])[ +#if 201103L <= YY_CPLUSPLUS + // that is emptied. + that.state = empty_state; +#endif + } + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) that) + : super_type (s]b4_variant_if([], [, YY_MOVE (that.value)])[]b4_locations_if([, YY_MOVE (that.location)])[) + {]b4_variant_if([ + b4_symbol_variant([that.kind ()], + [value], [move], [YY_MOVE (that.value)])])[ + // that is emptied. + that.kind_ = ]b4_symbol(empty, kind)[; + } + +#if YY_CPLUSPLUS < 201103L + ]b4_parser_class[::stack_symbol_type& + ]b4_parser_class[::stack_symbol_type::operator= (const stack_symbol_type& that) + { + state = that.state; + ]b4_variant_if([b4_symbol_variant([that.kind ()], + [value], [copy], [that.value])], + [[value = that.value;]])[]b4_locations_if([ + location = that.location;])[ + return *this; + } + + ]b4_parser_class[::stack_symbol_type& + ]b4_parser_class[::stack_symbol_type::operator= (stack_symbol_type& that) + { + state = that.state; + ]b4_variant_if([b4_symbol_variant([that.kind ()], + [value], [move], [that.value])], + [[value = that.value;]])[]b4_locations_if([ + location = that.location;])[ + // that is emptied. + that.state = empty_state; + return *this; + } +#endif + + template + void + ]b4_parser_class[::yy_destroy_ (const char* yymsg, basic_symbol& yysym) const + { + if (yymsg) + YY_SYMBOL_PRINT (yymsg, yysym);]b4_variant_if([], [ + + // User destructor. + b4_symbol_actions([destructor], [yysym.kind ()])])[ + } + +#if ]b4_api_PREFIX[DEBUG + template + void + ]b4_parser_class[::yy_print_ (std::ostream& yyo, const basic_symbol& yysym) const + { + std::ostream& yyoutput = yyo; + YY_USE (yyoutput); + if (yysym.empty ()) + yyo << "empty symbol"; + else + { + symbol_kind_type yykind = yysym.kind (); + yyo << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << yysym.name () << " ("]b4_locations_if([ + << yysym.location << ": "])[; + ]b4_symbol_actions([printer])[ + yyo << ')'; + } + } +#endif + + void + ]b4_parser_class[::yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym) + { + if (m) + YY_SYMBOL_PRINT (m, sym); + yystack_.push (YY_MOVE (sym)); + } + + void + ]b4_parser_class[::yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym) + { +#if 201103L <= YY_CPLUSPLUS + yypush_ (m, stack_symbol_type (s, std::move (sym))); +#else + stack_symbol_type ss (s, sym); + yypush_ (m, ss); +#endif + } + + void + ]b4_parser_class[::yypop_ (int n) YY_NOEXCEPT + { + yystack_.pop (n); + } + +#if ]b4_api_PREFIX[DEBUG + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug_; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + yydebug_ = l; + } +#endif // ]b4_api_PREFIX[DEBUG + + ]b4_parser_class[::state_type + ]b4_parser_class[::yy_lr_goto_state_ (state_type yystate, int yysym) + { + int yyr = yypgoto_[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - YYNTOKENS]; + } + + bool + ]b4_parser_class[::yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT + { + return yyvalue == yypact_ninf_; + } + + bool + ]b4_parser_class[::yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT + { + return yyvalue == yytable_ninf_; + } + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + int yyn; + /// Length of the RHS of the rule being reduced. + int yylen = 0; + + // Error handling. + int yynerrs_ = 0; + int yyerrstatus_ = 0; + + /// The lookahead symbol. + symbol_type yyla;]b4_locations_if([[ + + /// The locations where the error started and ended. + stack_symbol_type yyerror_range[3];]])[ + + /// The return value of parse (). + int yyresult;]b4_lac_if([[ + + // Discard the LAC context in case there still is one left from a + // previous invocation. + yy_lac_discard_ ("init");]])[ + +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + { + YYCDEBUG << "Starting parse\n"; + +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yyla.value], [], [], [yyla.location])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl + + [ /* Initialize the stack. The initial state will be set in + yynewstate, since the latter expects the semantical and the + location values to have been already stored, initialize these + stacks with a primary value. */ + yystack_.clear (); + yypush_ (YY_NULLPTR, 0, YY_MOVE (yyla)); + + /*-----------------------------------------------. + | yynewstate -- push a new symbol on the stack. | + `-----------------------------------------------*/ + yynewstate: + YYCDEBUG << "Entering state " << int (yystack_[0].state) << '\n'; + YY_STACK_PRINT (); + + // Accept? + if (yystack_[0].state == yyfinal_) + YYACCEPT; + + goto yybackup; + + + /*-----------. + | yybackup. | + `-----------*/ + yybackup: + // Try to take a decision without lookahead. + yyn = yypact_[+yystack_[0].state]; + if (yy_pact_value_is_default_ (yyn)) + goto yydefault; + + // Read a lookahead token. + if (yyla.empty ()) + { + YYCDEBUG << "Reading a token\n"; +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + {]b4_token_ctor_if([[ + symbol_type yylookahead (]b4_yylex[); + yyla.move (yylookahead);]], [[ + yyla.kind_ = yytranslate_ (]b4_yylex[);]])[ + } +#if YY_EXCEPTIONS + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n'; + error (yyexc); + goto yyerrlab1; + } +#endif // YY_EXCEPTIONS + } + YY_SYMBOL_PRINT ("Next token is", yyla); + + if (yyla.kind () == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yyla.kind_ = ]b4_symbol(undef, kind)[; + goto yyerrlab1; + } + + /* If the proper action on seeing token YYLA.TYPE is to reduce or + to detect an error, take that action. */ + yyn += yyla.kind (); + if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yyla.kind ()) + {]b4_lac_if([[ + if (!yy_lac_establish_ (yyla.kind ())) + goto yyerrlab;]])[ + goto yydefault; + } + + // Reduce or error. + yyn = yytable_[yyn]; + if (yyn <= 0) + { + if (yy_table_value_is_error_ (yyn)) + goto yyerrlab;]b4_lac_if([[ + if (!yy_lac_establish_ (yyla.kind ())) + goto yyerrlab; +]])[ + yyn = -yyn; + goto yyreduce; + } + + // Count tokens shifted since error; after three, turn off error status. + if (yyerrstatus_) + --yyerrstatus_; + + // Shift the lookahead token. + yypush_ ("Shifting", state_type (yyn), YY_MOVE (yyla));]b4_lac_if([[ + yy_lac_discard_ ("shift");]])[ + goto yynewstate; + + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + yydefault: + yyn = yydefact_[+yystack_[0].state]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + + /*-----------------------------. + | yyreduce -- do a reduction. | + `-----------------------------*/ + yyreduce: + yylen = yyr2_[yyn]; + { + stack_symbol_type yylhs; + yylhs.state = yy_lr_goto_state_ (yystack_[yylen].state, yyr1_[yyn]);]b4_variant_if([[ + /* Variants are always initialized to an empty instance of the + correct type. The default '$$ = $1' action is NOT applied + when using variants. */ + ]b4_symbol_variant([[yyr1_@{yyn@}]], [yylhs.value], [emplace])], [[ + /* If YYLEN is nonzero, implement the default value of the + action: '$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYLHS.VALUE to garbage. + This behavior is undocumented and Bison users should not rely + upon it. */ + if (yylen) + yylhs.value = yystack_@{yylen - 1@}.value; + else + yylhs.value = yystack_@{0@}.value;]])[ +]b4_locations_if([dnl +[ + // Default location. + { + stack_type::slice range (yystack_, yylen); + YYLLOC_DEFAULT (yylhs.location, range, yylen); + yyerror_range[1].location = yylhs.location; + }]])[ + + // Perform the reduction. + YY_REDUCE_PRINT (yyn); +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + { + switch (yyn) + { +]b4_user_actions[ + default: + break; + } + } +#if YY_EXCEPTIONS + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n'; + error (yyexc); + YYERROR; + } +#endif // YY_EXCEPTIONS + YY_SYMBOL_PRINT ("-> $$ =", yylhs); + yypop_ (yylen); + yylen = 0; + + // Shift the result of the reduction. + yypush_ (YY_NULLPTR, YY_MOVE (yylhs)); + } + goto yynewstate; + + + /*--------------------------------------. + | yyerrlab -- here on detecting error. | + `--------------------------------------*/ + yyerrlab: + // If not already recovering from an error, report this error. + if (!yyerrstatus_) + { + ++yynerrs_;]b4_parse_error_case( + [simple], [[ + std::string msg = YY_("syntax error"); + error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]], + [custom], [[ + context yyctx (*this, yyla); + report_syntax_error (yyctx);]], + [[ + context yyctx (*this, yyla); + std::string msg = yysyntax_error_ (yyctx); + error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]])[ + } + +]b4_locations_if([[ + yyerror_range[1].location = yyla.location;]])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + // Return failure if at end of input. + if (yyla.kind () == ]b4_symbol(eof, kind)[) + YYABORT; + else if (!yyla.empty ()) + { + yy_destroy_ ("Error: discarding", yyla); + yyla.clear (); + } + } + + // Else will try to reuse lookahead token after shifting the error token. + goto yyerrlab1; + + + /*---------------------------------------------------. + | yyerrorlab -- error raised explicitly by YYERROR. | + `---------------------------------------------------*/ + yyerrorlab: + /* Pacify compilers when the user code never invokes YYERROR and + the label yyerrorlab therefore never appears in user code. */ + if (false) + YYERROR; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ + yypop_ (yylen); + yylen = 0; + YY_STACK_PRINT (); + goto yyerrlab1; + + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + yyerrlab1: + yyerrstatus_ = 3; // Each real token shifted decrements this. + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[+yystack_[0].state]; + if (!yy_pact_value_is_default_ (yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= yylast_ + && yycheck_[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + // Pop the current state because it cannot handle the error token. + if (yystack_.size () == 1) + YYABORT; +]b4_locations_if([[ + yyerror_range[1].location = yystack_[0].location;]])[ + yy_destroy_ ("Error: popping", yystack_[0]); + yypop_ (); + YY_STACK_PRINT (); + } + { + stack_symbol_type error_token; +]b4_locations_if([[ + yyerror_range[2].location = yyla.location; + YYLLOC_DEFAULT (error_token.location, yyerror_range, 2);]])[ + + // Shift the error token.]b4_lac_if([[ + yy_lac_discard_ ("error recovery");]])[ + error_token.state = state_type (yyn); + yypush_ ("Shifting", YY_MOVE (error_token)); + } + goto yynewstate; + + + /*-------------------------------------. + | yyacceptlab -- YYACCEPT comes here. | + `-------------------------------------*/ + yyacceptlab: + yyresult = 0; + goto yyreturn; + + + /*-----------------------------------. + | yyabortlab -- YYABORT comes here. | + `-----------------------------------*/ + yyabortlab: + yyresult = 1; + goto yyreturn; + + + /*-----------------------------------------------------. + | yyreturn -- parsing is finished, return the result. | + `-----------------------------------------------------*/ + yyreturn: + if (!yyla.empty ()) + yy_destroy_ ("Cleanup: discarding lookahead", yyla); + + /* Do not reclaim the symbols of the rule whose action triggered + this YYABORT or YYACCEPT. */ + yypop_ (yylen); + YY_STACK_PRINT (); + while (1 < yystack_.size ()) + { + yy_destroy_ ("Cleanup: popping", yystack_[0]); + yypop_ (); + } + + return yyresult; + } +#if YY_EXCEPTIONS + catch (...) + { + YYCDEBUG << "Exception caught: cleaning lookahead and stack\n"; + // Do not try to display the values of the reclaimed symbols, + // as their printers might throw an exception. + if (!yyla.empty ()) + yy_destroy_ (YY_NULLPTR, yyla); + + while (1 < yystack_.size ()) + { + yy_destroy_ (YY_NULLPTR, yystack_[0]); + yypop_ (); + } + throw; + } +#endif // YY_EXCEPTIONS + } + + void + ]b4_parser_class[::error (const syntax_error& yyexc) + { + error (]b4_join(b4_locations_if([yyexc.location]), + [[yyexc.what ()]])[); + } + +]b4_parse_error_bmatch([custom\|detailed], +[[ const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ + } +]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytname_[yysymbol]; + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + std::string + ]b4_parser_class[::yytnamerr_ (const char *yystr) + { + if (*yystr == '"') + { + std::string yyr; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + yyr += *yyp; + break; + + case '"': + return yyr; + } + do_not_strip_quotes: ; + } + + return yystr; + } + + std::string + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytnamerr_ (yytname_[yysymbol]); + } +]])[ + +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // ]b4_parser_class[::context. + ]b4_parser_class[::context::context (const ]b4_parser_class[& yyparser, const symbol_type& yyla) + : yyparser_ (yyparser) + , yyla_ (yyla) + {} + + int + ]b4_parser_class[::context::expected_tokens (symbol_kind_type yyarg[], int yyargn) const + { + // Actual number of expected tokens + int yycount = 0; +]b4_lac_if([[ +#if ]b4_api_PREFIX[DEBUG + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + if (!yyparser_.yy_lac_established_) + yyparser_.yy_lac_check_ (yyla_.kind ()); +#endif + + for (int yyx = 0; yyx < YYNTOKENS; ++yyx) + { + symbol_kind_type yysym = YY_CAST (symbol_kind_type, yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser_.yy_lac_check_ (yysym)) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + const int yyn = yypact_[+yyparser_.yystack_[0].state]; + if (!yy_pact_value_is_default_ (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + const int yyxbegin = yyn < 0 ? -yyn : 0; + // Stay within bounds of both yycheck and yytname. + const int yychecklim = yylast_ - yyn + 1; + const int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yy_table_value_is_error_ (yytable_[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (symbol_kind_type, yyx); + } + } +]])[ + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; + } + +]])[ + +]b4_lac_if([[ + bool + ]b4_parser_class[::yy_lac_check_ (symbol_kind_type yytoken) const + { + // Logically, the yylac_stack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + yylac_stack_.clear (); + // Reduce until we encounter a shift and thereby accept the token. +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << "LAC: checking lookahead " << symbol_name (yytoken) << ':'; +#endif + std::ptrdiff_t lac_top = 0; + while (true) + { + state_type top_state = (yylac_stack_.empty () + ? yystack_[lac_top].state + : yylac_stack_.back ()); + int yyrule = yypact_[+top_state]; + if (yy_pact_value_is_default_ (yyrule) + || (yyrule += yytoken) < 0 || yylast_ < yyrule + || yycheck_[yyrule] != yytoken) + { + // Use the default action. + yyrule = yydefact_[+top_state]; + if (yyrule == 0) + { + YYCDEBUG << " Err\n"; + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yy_table_value_is_error_ (yyrule)) + { + YYCDEBUG << " Err\n"; + return false; + } + if (0 < yyrule) + { + YYCDEBUG << " S" << yyrule << '\n'; + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. + YYCDEBUG << " R" << yyrule - 1; + // Pop the corresponding number of values from the stack. + { + std::ptrdiff_t yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + std::ptrdiff_t lac_size = std::ptrdiff_t (yylac_stack_.size ()); + if (yylen < lac_size) + { + yylac_stack_.resize (std::size_t (lac_size - yylen)); + yylen = 0; + } + else if (lac_size) + { + yylac_stack_.clear (); + yylen -= lac_size; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lac_top. + lac_top += yylen; + } + // Keep top_state in sync with the updated stack. + top_state = (yylac_stack_.empty () + ? yystack_[lac_top].state + : yylac_stack_.back ()); + // Push the resulting state of the reduction. + state_type state = yy_lr_goto_state_ (top_state, yyr1_[yyrule]); + YYCDEBUG << " G" << int (state); + yylac_stack_.push_back (state); + } + } + + // Establish the initial context if no initial context currently exists. + bool + ]b4_parser_class[::yy_lac_establish_ (symbol_kind_type yytoken) + { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yy_lac_establish_ should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yy_lac_establish_ is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yy_lac_established_) + return true; + else + { +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << "LAC: initial context established for " + << symbol_name (yytoken) << '\n'; +#endif + yy_lac_established_ = true; + return yy_lac_check_ (yytoken); + } + } + + // Discard any previous initial lookahead context. + void + ]b4_parser_class[::yy_lac_discard_ (const char* event) + { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yy_lac_established_) + { + YYCDEBUG << "LAC: initial context discarded due to " + << event << '\n'; + yy_lac_established_ = false; + } + }]])[ + +]b4_parse_error_bmatch([detailed\|verbose], [[ + int + ]b4_parser_class[::yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const + { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yyla) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is + a consistent state with a default action. There might have + been a previous inconsistent state, consistent state with a + non-default action, or user semantic action that manipulated + yyla. (However, yyla is currently not documented for users.)]b4_lac_if([[ + In the first two cases, it might appear that the current syntax + error should have been detected in the previous state when + yy_lac_check was invoked. However, at that time, there might + have been a different syntax error that discarded a different + initial context during error recovery, leaving behind the + current lookahead.]], [[ + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state.]])[ + */ + + if (!yyctx.lookahead ().empty ()) + { + if (yyarg) + yyarg[0] = yyctx.token (); + int yyn = yyctx.expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1); + return yyn + 1; + } + return 0; + } + + // Generate an error message. + std::string + ]b4_parser_class[::yysyntax_error_ (const context& yyctx) const + { + // Its maximum. + enum { YYARGS_MAX = 5 }; + // Arguments of yyformat. + symbol_kind_type yyarg[YYARGS_MAX]; + int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX); + + char const* yyformat = YY_NULLPTR; + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: // Avoid compiler warnings. + YYCASE_ (0, YY_("syntax error")); + YYCASE_ (1, YY_("syntax error, unexpected %s")); + YYCASE_ (2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_ (3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_ (4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_ (5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + std::string yyres; + // Argument number. + std::ptrdiff_t yyi = 0; + for (char const* yyp = yyformat; *yyp; ++yyp) + if (yyp[0] == '%' && yyp[1] == 's' && yyi < yycount) + { + yyres += symbol_name (yyarg[yyi++]); + ++yyp; + } + else + yyres += *yyp; + return yyres; + }]])[ + + + const ]b4_int_type(b4_pact_ninf, b4_pact_ninf) b4_parser_class::yypact_ninf_ = b4_pact_ninf[; + + const ]b4_int_type(b4_table_ninf, b4_table_ninf) b4_parser_class::yytable_ninf_ = b4_table_ninf[; + +]b4_parser_tables_define[ + +]b4_parse_error_bmatch([simple\|verbose], +[[#if ]b4_api_PREFIX[DEBUG]b4_tname_if([[ || 1]])[ + // YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + // First, the terminals, then, starting at \a YYNTOKENS, nonterminals. + const char* + const ]b4_parser_class[::yytname_[] = + { + ]b4_tname[ + }; +#endif +]])[ + +#if ]b4_api_PREFIX[DEBUG][ +]b4_integral_parser_table_define([rline], [b4_rline])[ + + void + ]b4_parser_class[::yy_stack_print_ () const + { + *yycdebug_ << "Stack now"; + for (stack_type::const_iterator + i = yystack_.begin (), + i_end = yystack_.end (); + i != i_end; ++i) + *yycdebug_ << ' ' << int (i->state); + *yycdebug_ << '\n'; + } + + void + ]b4_parser_class[::yy_reduce_print_ (int yyrule) const + { + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + // Print the symbols being reduced, and their result. + *yycdebug_ << "Reducing stack by rule " << yyrule - 1 + << " (line " << yylno << "):\n"; + // The symbols being reduced. + for (int yyi = 0; yyi < yynrhs; yyi++) + YY_SYMBOL_PRINT (" $" << yyi + 1 << " =", + ]b4_rhs_data(yynrhs, yyi + 1)[); + } +#endif // ]b4_api_PREFIX[DEBUG + +]b4_token_ctor_if([], [b4_yytranslate_define([cc])])[ +]b4_namespace_close[ +]b4_epilogue[]dnl +b4_output_end + + +m4_popdef([b4_copyright_years])dnl diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.d b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.d new file mode 100644 index 0000000..9730377 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.d @@ -0,0 +1,1326 @@ +# D skeleton for Bison -*- autoconf -*- + +# Copyright (C) 2007-2012, 2019-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[d.m4]) + +b4_header_if([b4_complain([%header/%defines does not make sense in D])]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) + +# Define m4 conditional macros that encode the value +# of the api.push-pull flag. +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Define a macro to be true when api.push-pull has the value "both". +m4_define([b4_both_if],[b4_push_if([b4_pull_if([$1],[$2])],[$2])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + + +# Define a macro to encapsulate the parse state variables. This +# allows them to be defined either in parse() when doing pull parsing, +# or as class instance variable when doing push parsing. +b4_output_begin([b4_parser_file_name]) +b4_copyright([Skeleton implementation for Bison LALR(1) parsers in D], + [2007-2012, 2019-2021])[ +]b4_disclaimer[ +]b4_percent_define_ifdef([package], [module b4_percent_define_get([package]); +])[ +version(D_Version2) { +} else { + static assert(false, "need compiler for D Version 2"); +} + +]b4_user_pre_prologue[ +]b4_user_post_prologue[ +]b4_percent_code_get([[imports]])[ +import std.format; +import std.conv; + +/** + * Handle error message internationalisation. + */ +static if (!is(typeof(YY_))) { + version(YYENABLE_NLS) + { + version(ENABLE_NLS) + { + extern(C) char* dgettext(const char*, const char*); + string YY_(const char* s) + { + return to!string(dgettext("bison-runtime", s)); + } + } + } + static if (!is(typeof(YY_))) + { + pragma(inline, true) + string YY_(string msg) { return msg; } + } +} + +/** + * A Bison parser, automatically generated from ]m4_bpatsubst(b4_file_name, [^"\(.*\)"$], [\1])[. + * + * @@author LALR (1) parser skeleton written by Paolo Bonzini. + * Port to D language was done by Oliver Mangold. + */ + +/** + * Communication interface between the scanner and the Bison-generated + * parser ]b4_parser_class[. + */ +public interface Lexer +{ + /** + * Entry point for the scanner. Returns the token identifier corresponding + * to the next token and prepares to return the semantic value + * ]b4_locations_if([and beginning/ending positions ])[of the token. + * @@return the token identifier corresponding to the next token. */ + Symbol yylex (); + + /** + * Entry point for error reporting. Emits an error + * ]b4_locations_if([referring to the given location ])[in a user-defined way. + *]b4_locations_if([[ + * @@param loc The location of the element to which the + * error message is related]])[ + * @@param s The string for the error message. */ + void yyerror (]b4_locations_if([[const Location loc, ]])[string s); +]b4_parse_error_bmatch([custom], [[ + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + void reportSyntaxError(]b4_parser_class[.Context ctx); +]])[ +} + +]b4_public_types_declare[ + +]b4_locations_if([b4_position_type_if([[ +static assert(__traits(compiles, + (new Position[1])[0]=(new Position[1])[0]), + "struct/class Position must be default-constructible " + "and assignable"); +static assert(__traits(compiles, (new string[1])[0]=(new Position).toString()), + "error: struct/class Position must have toString method"); +]], [[ + /** + * A struct denoting a point in the input.*/ +public struct ]b4_position_type[ { + + /** The column index within the line of input. */ + public int column = 1; + /** The line number within an input file. */ + public int line = 1; + /** The name of the input file. */ + public string filename = null; + + /** + * A string representation of the position. */ + public string toString() const { + if (filename) + return format("%s:%d.%d", filename, line, column); + else + return format("%d.%d", line, column); + } +} +]])b4_location_type_if([[ +static assert(__traits(compiles, (new Location((new Position[1])[0]))) && + __traits(compiles, (new Location((new Position[1])[0], (new Position[1])[0]))), + "error: struct/class Location must have " + "default constructor and constructors this(Position) and this(Position, Position)."); +static assert(__traits(compiles, (new Location[1])[0].begin=(new Location[1])[0].begin) && + __traits(compiles, (new Location[1])[0].begin=(new Location[1])[0].end) && + __traits(compiles, (new Location[1])[0].end=(new Location[1])[0].begin) && + __traits(compiles, (new Location[1])[0].end=(new Location[1])[0].end), + "error: struct/class Location must have assignment-compatible " + "members/properties 'begin' and 'end'."); +static assert(__traits(compiles, (new string[1])[0]=(new Location[1])[0].toString()), + "error: struct/class Location must have toString method."); + +private immutable bool yy_location_is_class = !__traits(compiles, *(new Location((new Position[1])[0])));]], [[ +/** + * A struct defining a pair of positions. Positions, defined by the + * Position struct, denote a point in the input. + * Locations represent a part of the input through the beginning + * and ending positions. */ +public struct ]b4_location_type[ +{ + /** The first, inclusive, position in the range. */ + public Position begin; + + /** The first position beyond the range. */ + public Position end; + + /** + * Create a Location denoting an empty range located at + * a given point. + * @@param loc The position at which the range is anchored. */ + public this(Position loc) + { + this.begin = this.end = loc; + } + + /** + * Create a Location from the endpoints of the range. + * @@param begin The first position included in the range. + * @@param end The first position beyond the range. */ + public this(Position begin, Position end) + { + this.begin = begin; + this.end = end; + } + + /** + * Reset initial location to final location. + */ + public void step() + { + this.begin = this.end; + } + + /** + * A representation of the location. + */ + public string toString() const + { + auto end_col = 0 < end.column ? end.column - 1 : 0; + auto res = begin.toString (); + if (end.filename && begin.filename != end.filename) + res ~= "-" ~ format("%s:%d.%d", end.filename, end.line, end_col); + else if (begin.line < end.line) + res ~= "-" ~ format("%d.%d", end.line, end_col); + else if (begin.column < end_col) + res ~= "-" ~ format("%d", end_col); + return res; + } +} + +private immutable bool yy_location_is_class = false; + +]])])[]b4_value_type_setup[]m4_ifdef([b4_user_union_members], [private union YYSemanticType +{ +b4_user_union_members +};], +[m4_if(b4_tag_seen_flag, 0, +[[private alias int YYSemanticType;]])])[ +]b4_token_enums[ +]b4_parser_class_declaration[ +{ + ]b4_identification[ + +]b4_declare_symbol_enum[ + +]b4_locations_if([[ + private final Location yylloc_from_stack (ref YYStack rhs, int n) + { + static if (yy_location_is_class) { + if (n > 0) + return new Location (rhs.locationAt (n-1).begin, rhs.locationAt (0).end); + else + return new Location (rhs.locationAt (0).end); + } else { + if (n > 0) + return Location (rhs.locationAt (n-1).begin, rhs.locationAt (0).end); + else + return Location (rhs.locationAt (0).end); + } + }]])[ + +]b4_lexer_if([[ private class YYLexer implements Lexer { +]b4_percent_code_get([[lexer]])[ + } +]])[ + /** The object doing lexical analysis for us. */ + private Lexer yylexer; + +]b4_parse_param_vars[ + +]b4_lexer_if([[ + /** + * Instantiate the Bison-generated parser. + */ + public this] (b4_parse_param_decl([b4_lex_param_decl])[) { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new int[]; + this.yylacEstablished = false;]])[ + this (new YYLexer(]b4_lex_param_call[)); + } +]])[ + + /** + * Instantiate the Bison-generated parser. + * @@param yylexer The scanner that will supply tokens to the parser. + */ + ]b4_lexer_if([[protected]], [[public]]) [this (]b4_parse_param_decl([[Lexer yylexer]])[) { + this.yylexer = yylexer;]b4_parse_trace_if([[ + this.yyDebugStream = stderr;]])[ +]b4_parse_param_cons[ + } +]b4_parse_trace_if([[ + import std.stdio; + private File yyDebugStream; + + /** + * The File on which the debugging output is + * printed. + */ + public File getDebugStream () { return yyDebugStream; } + + /** + * Set the std.File on which the debug output is printed. + * @@param s The stream that is used for debugging output. + */ + public final void setDebugStream(File s) { yyDebugStream = s; } + + private int yydebug = 0; + + /** + * Answer the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + */ + public final int getDebugLevel() { return yydebug; } + + /** + * Set the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + * @@param level The verbosity level for debugging output. + */ + public final void setDebugLevel(int level) { yydebug = level; } + + protected final void yycdebug (string s) { + if (0 < yydebug) + yyDebugStream.write (s); + } + + protected final void yycdebugln (string s) { + if (0 < yydebug) + yyDebugStream.writeln (s); + } +]])[ + private final ]b4_parser_class[.Symbol yylex () { + return yylexer.yylex (); + } + + protected final void yyerror (]b4_locations_if([[const Location loc, ]])[string s) { + yylexer.yyerror (]b4_locations_if([loc, ])[s); + } + + /** + * The number of syntax errors so far. + */ + public int numberOfErrors() const { return yynerrs_; } + private int yynerrs_ = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return success (true). */ + public static immutable int YYACCEPT = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return failure (false). */ + public static immutable int YYABORT = 1; +]b4_push_if([ + /** + * Returned by a Bison action in order to request a new token. + */ + public static immutable int YYPUSH_MORE = 4;])[ + + /** + * Returned by a Bison action in order to start error recovery without + * printing an error message. */ + public static immutable int YYERROR = 2; + + // Internal return codes that are not supported for user semantic + // actions. + private static immutable int YYERRLAB = 3; + private static immutable int YYNEWSTATE = 4; + private static immutable int YYDEFAULT = 5; + private static immutable int YYREDUCE = 6; + private static immutable int YYERRLAB1 = 7; + private static immutable int YYRETURN = 8; +]b4_push_if([[ private static immutable int YYGETTOKEN = 9; /* Signify that a new token is expected when doing push-parsing. */]])[ + +]b4_locations_if([ + private static immutable YYSemanticType yy_semantic_null;])[ + private int yyerrstatus_ = 0; + + private void yyerrok() + { + yyerrstatus_ = 0; + } + + // Lookahead symbol kind. + SymbolKind yytoken = ]b4_symbol(empty, kind)[; + + /* State. */ + int yyn = 0; + int yylen = 0; + int yystate = 0; + + YYStack yystack; + + int label = YYNEWSTATE; + + /* Error handling. */ +]b4_locations_if([[ + /// The location where the error started. + Location yyerrloc; + + /// Location of the lookahead. + Location yylloc; + + /// @@$. + Location yyloc;]])[ + + /// Semantic value of the lookahead. + Value yylval; + + /** + * Whether error recovery is being done. In this state, the parser + * reads token until it reaches a known state, and then restarts normal + * operation. */ + public final bool recovering () + { + return yyerrstatus_ == 0; + } + + /** Compute post-reduction state. + * @@param yystate the current state + * @@param yysym the nonterminal to push on the stack + */ + private int yyLRGotoState(int yystate, int yysym) { + int yyr = yypgoto_[yysym - yyntokens_] + yystate; + if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - yyntokens_]; + } + + private int yyaction (int yyn, ref YYStack yystack, int yylen) + { + Value yyval;]b4_locations_if([[ + Location yyloc = yylloc_from_stack (yystack, yylen);]])[ + + /* If YYLEN is nonzero, implement the default value of the action: + `$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. */ + if (yylen > 0) + yyval = yystack.valueAt (yylen - 1); + else + yyval = yystack.valueAt (0); + +]b4_parse_trace_if([[ + yy_reduce_print (yyn, yystack);]])[ + + switch (yyn) + { +]b4_user_actions[ + default: break; + } + +]b4_parse_trace_if([[ + yy_symbol_print ("-> $$ =", to!SymbolKind (yyr1_[yyn]), yyval]b4_locations_if([, yyloc])[);]])[ + + yystack.pop (yylen); + yylen = 0; + + /* Shift the result of the reduction. */ + int yystate = yyLRGotoState(yystack.stateAt(0), yyr1_[yyn]); + yystack.push (yystate, yyval]b4_locations_if([, yyloc])[); + return YYNEWSTATE; + } + +]b4_parse_trace_if([[ + /*--------------------------------. + | Print this symbol on YYOUTPUT. | + `--------------------------------*/ + + private final void yy_symbol_print (string s, SymbolKind yykind, + ref Value yyval]b4_locations_if([, ref Location yyloc])[) + { + if (0 < yydebug) + { + File yyo = yyDebugStream; + yyo.write(s); + yyo.write(yykind < yyntokens_ ? " token " : " nterm "); + yyo.write(format("%s", yykind)); + yyo.write(" ("]b4_locations_if([ ~ yyloc.toString() ~ ": "])[); + ]b4_symbol_actions([printer])[ + yyo.write(")\n"); + } + } +]])[ +]b4_symbol_type_define[ +]b4_push_if([[ + /** + * Push Parse input from external lexer + * + * @@param yyla current Symbol + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int pushParse(Symbol yyla)]], [[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public bool parse()]])[ + {]b4_push_if([[ + if (!this.pushParseInitialized) + { + pushParseInitialize(); + yyerrstatus_ = 0; + } + else + label = YYGETTOKEN; + + bool push_token_consumed = true; +]], [[ bool yyresult;]b4_lac_if([[ + // Discard the LAC context in case there still is one left from a + // previous invocation. + yylacDiscard("init");]])[]b4_parse_trace_if([[ + + yycdebugln ("Starting parse");]])[ + yyerrstatus_ = 0; + +]m4_ifdef([b4_initial_action], [ +m4_pushdef([b4_at_dollar], [yylloc])dnl +m4_pushdef([b4_dollar_dollar], [yylval])dnl + /* User initialization code. */ + b4_user_initial_action +m4_popdef([b4_dollar_dollar])dnl +m4_popdef([b4_at_dollar])])dnl + + [ /* Initialize the stack. */ + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[); + + label = YYNEWSTATE;]])[ + for (;;) + final switch (label) + { + /* New state. Unlike in the C/C++ skeletons, the state is already + pushed when we come here. */ + case YYNEWSTATE:]b4_parse_trace_if([[ + yycdebugln (format("Entering state %d", yystate)); + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + + /* Accept? */ + if (yystate == yyfinal_)]b4_push_if([[ + { + label = YYACCEPT; + break; + }]], [[ + return true;]])[ + + /* Take a decision. First try without lookahead. */ + yyn = yypact_[yystate]; + if (yyPactValueIsDefault(yyn)) + { + label = YYDEFAULT; + break; + }]b4_push_if([[ + goto case; + + case YYGETTOKEN:]])[ + + /* Read a lookahead token. */ + if (yytoken == ]b4_symbol(empty, kind)[) + {]b4_push_if([[ + if (!push_token_consumed) + return YYPUSH_MORE;]])[]b4_parse_trace_if([[ + yycdebugln ("Reading a token");]])[]b4_push_if([[ + yytoken = yyla.token; + yylval = yyla.value;]b4_locations_if([[ + yylloc = yyla.location;]])[ + push_token_consumed = false;]], [[ + Symbol yysymbol = yylex(); + yytoken = yysymbol.token(); + yylval = yysymbol.value();]b4_locations_if([[ + yylloc = yysymbol.location();]])[]])[ + } + + /* Token already converted to internal form. */]b4_parse_trace_if([[ + yy_symbol_print ("Next token is", yytoken, yylval]b4_locations_if([, yylloc])[);]])[ + + if (yytoken == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yytoken = ]b4_symbol(undef, kind)[;]b4_locations_if([[ + yyerrloc = yylloc;]])[ + label = YYERRLAB1; + } + else + { + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yytoken) {]b4_lac_if([[ + if (!yylacEstablish(yystack, yytoken)) + label = YYERRLAB; + else]])[ + label = YYDEFAULT; + } + /* <= 0 means reduce or error. */ + else if ((yyn = yytable_[yyn]) <= 0) + { + if (yyTableValueIsError(yyn)) + label = YYERRLAB;]b4_lac_if([[ + else if (!yylacEstablish(yystack, yytoken)) + label = YYERRLAB;]])[ + else + { + yyn = -yyn; + label = YYREDUCE; + } + } + else + { + /* Shift the lookahead token. */]b4_parse_trace_if([[ + yy_symbol_print ("Shifting", yytoken, yylval]b4_locations_if([, yylloc])[);]])[ + + /* Discard the token being shifted. */ + yytoken = ]b4_symbol(empty, kind)[; + + /* Count tokens shifted since error; after three, turn off error + * status. */ + if (yyerrstatus_ > 0) + --yyerrstatus_; + + yystate = yyn; + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[);]b4_lac_if([[ + yylacDiscard("shift");]])[ + label = YYNEWSTATE; + } + } + break; + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + case YYDEFAULT: + yyn = yydefact_[yystate]; + if (yyn == 0) + label = YYERRLAB; + else + label = YYREDUCE; + break; + + /*-----------------------------. + | yyreduce -- Do a reduction. | + `-----------------------------*/ + case YYREDUCE: + yylen = yyr2_[yyn]; + label = yyaction (yyn, yystack, yylen); + yystate = yystack.stateAt (0); + break; + + /*--------------------------------------. + | yyerrlab -- here on detecting error. | + `--------------------------------------*/ + case YYERRLAB: + /* If not already recovering from an error, report this error. */ + if (yyerrstatus_ == 0) + { + ++yynerrs_; + yyreportSyntaxError(new Context(]b4_lac_if([[this, ]])[yystack, yytoken]b4_locations_if([[, yylloc]])[)); + } +]b4_locations_if([ + yyerrloc = yylloc;])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + * error, discard it. */ + + /* Return failure if at end of input. */ + if (yytoken == ]b4_symbol(eof, [kind])[)]b4_push_if([[ + { + label = YYABORT; + break; + }]], [[ + return false;]])[ + else + yytoken = ]b4_symbol(empty, kind)[; + } + + /* Else will try to reuse lookahead token after shifting the error + * token. */ + label = YYERRLAB1; + break; + + /*-------------------------------------------------. + | errorlab -- error raised explicitly by YYERROR. | + `-------------------------------------------------*/ + case YYERROR:]b4_locations_if([ + yyerrloc = yystack.locationAt (yylen - 1);])[ + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + yystack.pop (yylen); + yylen = 0; + yystate = yystack.stateAt (0); + label = YYERRLAB1; + break; + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + case YYERRLAB1: + yyerrstatus_ = 3; /* Each real token shifted decrements this. */ + + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[yystate]; + if (!yyPactValueIsDefault(yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yystack.height == 1)]b4_push_if([[ + { + label = YYABORT; + break; + }]],[[ + return false;]])[ + +]b4_locations_if([ yyerrloc = yystack.locationAt (0);])[ + yystack.pop (); + yystate = yystack.stateAt (0);]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + }]b4_push_if([[ + if (label == YYABORT) + /* Leave the switch. */ + break; +]])[ +]b4_locations_if([ + /* Muck with the stack to setup for yylloc. */ + yystack.push (0, yy_semantic_null, yylloc); + yystack.push (0, yy_semantic_null, yyerrloc); + yyloc = yylloc_from_stack (yystack, 2); + yystack.pop (2);])[ + + /* Shift the error token. */]b4_lac_if([[ + yylacDiscard("error recovery");]])[]b4_parse_trace_if([[ + yy_symbol_print ("Shifting", to!SymbolKind (yystos_[yyn]), yylval]b4_locations_if([, yyloc])[);]])[ + yystate = yyn; + yystack.push (yyn, yylval]b4_locations_if([, yyloc])[); + label = YYNEWSTATE; + break; + + /* Accept. */ + case YYACCEPT:]b4_push_if([[ + this.pushParseInitialized = false;]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return YYACCEPT;]], [[ + yyresult = true; + label = YYRETURN; + break;]])[ + + /* Abort. */ + case YYABORT:]b4_push_if([[ + this.pushParseInitialized = false;]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return YYABORT;]], [[ + yyresult = false; + label = YYRETURN; + break;]])[ +]b4_push_if([[]], [[ ][case YYRETURN:]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return yyresult;]])[ + } + assert(0); + } + +]b4_push_if([[ + bool pushParseInitialized = false; + + /** + * (Re-)Initialize the state of the push parser. + */ + public void pushParseInitialize() + { + + /* Lookahead and lookahead in internal form. */ + this.yytoken = ]b4_symbol(empty, kind)[; + + /* State. */ + this.yyn = 0; + this.yylen = 0; + this.yystate = 0; + destroy(this.yystack); + this.label = YYNEWSTATE; +]b4_lac_if([[ + destroy(this.yylacStack); + this.yylacEstablished = false;]])[ + + /* Error handling. */ + this.yynerrs_ = 0; +]b4_locations_if([ + /* The location where the error started. */ + this.yyerrloc = Location(Position(), Position()); + this.yylloc = Location(Position(), Position());])[ + + /* Semantic value of the lookahead. */ + //destroy(this.yylval); + + /* Initialize the stack. */ + yystack.push(this.yystate, this.yylval]b4_locations_if([, this.yylloc])[); + + this.pushParseInitialized = true; + }]])[]b4_both_if([[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * This version of parse() is defined only when api.push-push=both. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + bool parse() + { + int status = 0; + do { + status = this.pushParse(yylex()); + } while (status == YYPUSH_MORE); + return status == YYACCEPT; + }]])[ + + // Generate an error message. + private final void yyreportSyntaxError(Context yyctx) + {]b4_parse_error_bmatch( +[custom], [[ + yylexer.reportSyntaxError(yyctx);]], +[detailed], [[ + if (yyctx.getToken() != ]b4_symbol(empty, kind)[) + { + // FIXME: This method of building the message is not compatible + // with internationalization. + immutable int argmax = 5; + SymbolKind[] yyarg = new SymbolKind[argmax]; + int yycount = yysyntaxErrorArguments(yyctx, yyarg, argmax); + string res, yyformat; + switch (yycount) + { + case 1: + yyformat = YY_("syntax error, unexpected %s"); + res = format(yyformat, yyarg[0]); + break; + case 2: + yyformat = YY_("syntax error, unexpected %s, expecting %s"); + res = format(yyformat, yyarg[0], yyarg[1]); + break; + case 3: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2]); + break; + case 4: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2], yyarg[3]); + break; + case 5: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2], yyarg[3], yyarg[4]); + break; + default: + res = YY_("syntax error"); + break; + } + yyerror(]b4_locations_if([yyctx.getLocation(), ])[res); + }]], +[[simple]], [[ + yyerror(]b4_locations_if([yyctx.getLocation(), ])[YY_("syntax error"));]])[ + } + +]b4_parse_error_bmatch( +[detailed], [[ + private int yysyntaxErrorArguments(Context yyctx, SymbolKind[] yyarg, int yyargn) { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, + then the only way this function was invoked is if the + default action is an error action. In that case, don't + check for expected tokens because there are none. + - The only way there can be no lookahead present (in tok) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this + state is a consistent state with a default action. There + might have been a previous inconsistent state, consistent + state with a non-default action, or user semantic action + that manipulated yychar. (However, yychar is currently out + of scope during semantic actions.) + - Of course, the expected token list depends on states to + have correct lookahead information, and it depends on the + parser not to perform extra reductions after fetching a + lookahead from the scanner and before detecting a syntax + error. Thus, state merging (from LALR or IELR) and default + reductions corrupt the expected token list. However, the + list is correct for canonical LR with one exception: it + will still contain any token that will not be accepted due + to an error action in a later state. + */ + int yycount = 0; + if (yyctx.getToken() != ]b4_symbol(empty, kind)[) + { + if (yyarg !is null) + yyarg[yycount] = yyctx.getToken(); + yycount += 1; + yycount += yyctx.getExpectedTokens(yyarg, 1, yyargn); + } + return yycount; + } +]])[ + + + /** + * Information needed to get the list of expected tokens and to forge + * a syntax error diagnostic. + */ + public static final class Context + {]b4_lac_if([[ + private ]b4_parser_class[ yyparser;]])[ + private const(YYStack) yystack; + private SymbolKind yytoken;]b4_locations_if([[ + private const(Location) yylocation;]])[ + + this(]b4_lac_if([[]b4_parser_class[ parser, ]])[YYStack stack, SymbolKind kind]b4_locations_if([[, Location loc]])[) + {]b4_lac_if([[ + yyparser = parser;]])[ + yystack = stack; + yytoken = kind;]b4_locations_if([[ + yylocation = loc;]])[ + } + + final SymbolKind getToken() const + { + return yytoken; + }]b4_locations_if([[ + + final const(Location) getLocation() const + { + return yylocation; + }]])[ + /** + * Put in YYARG at most YYARGN of the expected tokens given the + * current YYCTX, and return the number of tokens stored in YYARG. If + * YYARG is null, return the number of expected tokens (guaranteed to + * be less than YYNTOKENS). + */ + int getExpectedTokens(SymbolKind[] yyarg, int yyargn)]b4_lac_if([[]], [[ const]])[ + { + return getExpectedTokens(yyarg, 0, yyargn); + } + + int getExpectedTokens(SymbolKind[] yyarg, int yyoffset, int yyargn)]b4_lac_if([[]], [[ const]])[ + { + int yycount = yyoffset;]b4_lac_if([b4_parse_trace_if([[ + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + + if (!yyparser.yylacEstablished) + yyparser.yylacCheck(yystack, yytoken); +]])[ + for (int yyx = 0; yyx < yyntokens_; ++yyx) + { + SymbolKind yysym = SymbolKind(yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser.yylacCheck(yystack, yysym)) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + int yyn = yypact_[this.yystack.stateAt(0)]; + if (!yyPactValueIsDefault(yyn)) + { + /* Start YYX at -YYN if negative to avoid negative + indexes in YYCHECK. In other words, skip the first + -YYN actions for this state because they are default + actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = yylast_ - yyn + 1; + int yyxend = yychecklim < yyntokens_ ? yychecklim : yyntokens_; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yyTableValueIsError(yytable_[yyx + yyn])) + { + if (yyarg is null) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = SymbolKind(yyx); + } + }]])[ + if (yyarg !is null && yycount == yyoffset && yyoffset < yyargn) + yyarg[yyoffset] = ]b4_symbol(empty, kind)[; + return yycount - yyoffset; + } + } + +]b4_lac_if([[ + /** Check the lookahead yytoken. + * \returns true iff the token will be eventually shifted. + */ + bool yylacCheck(const YYStack yystack, SymbolKind yytoken) + { + // Logically, the yylacStack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + destroy(yylacStack); + // Reduce until we encounter a shift and thereby accept the token. +]b4_parse_trace_if([[ + yycdebug("LAC: checking lookahead " ~ format("%s", yytoken) ~ ":");]])[ + int lacTop = 0; + while (true) + { + int topState = (yylacStack.length == 0 + ? yystack.stateAt(lacTop) + : yylacStack[$ - 1]); + int yyrule = yypact_[topState]; + if (yyPactValueIsDefault(yyrule) + || (yyrule += yytoken) < 0 || yylast_ < yyrule + || yycheck_[yyrule] != yytoken) + { + // Use the default action. + yyrule = yydefact_[+topState]; + if (yyrule == 0) + {]b4_parse_trace_if([[ + yycdebugln(" Err");]])[ + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yyTableValueIsError(yyrule)) + {]b4_parse_trace_if([[ + yycdebugln(" Err");]])[ + return false; + } + if (0 < yyrule) + {]b4_parse_trace_if([[ + yycdebugln(" S" ~ to!string(yyrule));]])[ + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. +]b4_parse_trace_if([[ + yycdebug(" R" ~ to!string(yyrule - 1));]])[ + // Pop the corresponding number of values from the stack. + { + int yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + int lacSize = cast (int) yylacStack.length; + if (yylen < lacSize) + { + yylacStack.length -= yylen; + yylen = 0; + } + else if (lacSize != 0) + { + destroy(yylacStack); + yylen -= lacSize; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lacTop. + lacTop += yylen; + } + // Keep topState in sync with the updated stack. + topState = (yylacStack.length == 0 + ? yystack.stateAt(lacTop) + : yylacStack[$ - 1]); + // Push the resulting state of the reduction. + int state = yyLRGotoState(topState, yyr1_[yyrule]);]b4_parse_trace_if([[ + yycdebug(" G" ~ to!string(state));]])[ + yylacStack.length++; + yylacStack[$ - 1] = state; + } + } + + /** Establish the initial context if no initial context currently exists. + * \returns true iff the token will be eventually shifted. + */ + bool yylacEstablish(YYStack yystack, SymbolKind yytoken) + { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yylacEstablish should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yylacEstablish is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yylacEstablished) + return true; + else + {]b4_parse_trace_if([[ + yycdebugln("LAC: initial context established for " ~ format("%s", yytoken));]])[ + yylacEstablished = true; + return yylacCheck(yystack, yytoken); + } + } + + /** Discard any previous initial lookahead context because of event. + * \param event the event which caused the lookahead to be discarded. + * Only used for debbuging output. */ + void yylacDiscard(string event) + { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yylacEstablished) + {]b4_parse_trace_if([[ + yycdebugln("LAC: initial context discarded due to " ~ event);]])[ + yylacEstablished = false; + } + } + + /** The stack for LAC. + * Logically, the yylacStack's lifetime is confined to the function + * yylacCheck. We just store it as a member of this class to hold + * on to the memory and to avoid frequent reallocations. + */ + int[] yylacStack; + /** Whether an initial LAC context was established. */ + bool yylacEstablished; +]])[ + + /** + * Whether the given yypact_ value indicates a defaulted state. + * @@param yyvalue the value to check + */ + private static bool yyPactValueIsDefault(int yyvalue) + { + return yyvalue == yypact_ninf_; + } + + /** + * Whether the given yytable_ value indicates a syntax error. + * @@param yyvalue the value to check + */ + private static bool yyTableValueIsError(int yyvalue) + { + return yyvalue == yytable_ninf_; + } + + /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ + private static immutable ]b4_int_type_for([b4_pact])[ yypact_ninf_ = ]b4_pact_ninf[; + + /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If + positive, shift that token. If negative, reduce the rule which + number is the opposite. If YYTABLE_NINF_, syntax error. */ + private static immutable ]b4_int_type_for([b4_table])[ yytable_ninf_ = ]b4_table_ninf[; + + ]b4_parser_tables_define[ + +]b4_parse_trace_if([[ + /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ + private static immutable ]b4_int_type_for([b4_rline])[[] yyrline_ = + @{ + ]b4_rline[ + @}; + + // Report on the debug stream that the rule yyrule is going to be reduced. + private final void yy_reduce_print (int yyrule, ref YYStack yystack) + { + if (yydebug == 0) + return; + + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + /* Print the symbols being reduced, and their result. */ + yycdebugln (format("Reducing stack by rule %d (line %d):", + yyrule - 1, yylno)); + + /* The symbols being reduced. */ + for (int yyi = 0; yyi < yynrhs; yyi++) + yy_symbol_print (format(" $%d =", yyi + 1), + to!SymbolKind (yystos_[yystack.stateAt(yynrhs - (yyi + 1))]), + ]b4_rhs_value(yynrhs, yyi + 1)b4_locations_if([, + b4_rhs_location(yynrhs, yyi + 1)])[); + } +]])[ + + private static auto yytranslate_ (int t) + { +]b4_api_token_raw_if( +[[ return SymbolKind(t);]], +[[ /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ + immutable ]b4_int_type_for([b4_translate])[[] translate_table = + @{ + ]b4_translate[ + @}; + + // Last valid token kind. + immutable int code_max = ]b4_code_max[; + + if (t <= 0) + return ]b4_symbol(eof, kind)[; + else if (t <= code_max) + return SymbolKind(translate_table[t]); + else + return ]b4_symbol(undef, kind)[;]])[ + } + + private static immutable int yylast_ = ]b4_last[; + private static immutable int yynnts_ = ]b4_nterms_number[; + private static immutable int yyfinal_ = ]b4_final_state_number[; + private static immutable int yyntokens_ = ]b4_tokens_number[; + + private final struct YYStackElement { + int state; + Value value;]b4_locations_if( + b4_location_type[[] location;])[ + } + + private final struct YYStack { + private YYStackElement[] stack = []; + + public final ulong height() + { + return stack.length; + } + + public final void push (int state, Value value]dnl + b4_locations_if([, ref Location loc])[) + { + stack ~= YYStackElement(state, value]b4_locations_if([, loc])[); + } + + public final void pop () + { + pop (1); + } + + public final void pop (int num) + { + stack.length -= num; + } + + public final int stateAt (int i) const + { + return stack[$-i-1].state; + } + +]b4_locations_if([[ + public final ref Location locationAt (int i) + { + return stack[$-i-1].location; + }]])[ + + public final ref Value valueAt (int i) + { + return stack[$-i-1].value; + } +]b4_parse_trace_if([[ + // Print the state stack on the debug stream. + public final void print (File stream) + { + stream.write ("Stack now"); + for (int i = 0; i < stack.length; i++) + stream.write (" ", stack[i].state); + stream.writeln (); + }]])[ + } +]b4_percent_code_get[ +} +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.java b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.java new file mode 100644 index 0000000..1bbecca --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/lalr1.java @@ -0,0 +1,1303 @@ +# Java skeleton for Bison -*- java -*- + +# Copyright (C) 2007-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[java.m4]) + +b4_header_if([b4_complain([%header/%defines does not make sense in Java])]) + +m4_define([b4_symbol_no_destructor_assert], +[b4_symbol_if([$1], [has_destructor], + [b4_complain_at(m4_unquote(b4_symbol([$1], [destructor_loc])), + [%destructor does not make sense in Java])])]) +b4_symbol_foreach([b4_symbol_no_destructor_assert]) + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) + +# Define m4 conditional macros that encode the value +# of the api.push-pull flag. +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Define a macro to be true when api.push-pull has the value "both". +m4_define([b4_both_if],[b4_push_if([b4_pull_if([$1],[$2])],[$2])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + +# Define a macro to encapsulate the parse state variables. This +# allows them to be defined either in parse() when doing pull parsing, +# or as class instance variable when doing push parsing. +m4_define([b4_define_state], +[[ + /* Lookahead token kind. */ + int yychar = YYEMPTY_; + /* Lookahead symbol kind. */ + SymbolKind yytoken = null; + + /* State. */ + int yyn = 0; + int yylen = 0; + int yystate = 0; + YYStack yystack = new YYStack (); + int label = YYNEWSTATE; + +]b4_locations_if([[ + /* The location where the error started. */ + ]b4_location_type[ yyerrloc = null; + + /* Location. */ + ]b4_location_type[ yylloc = new ]b4_location_type[ (null, null);]])[ + + /* Semantic value of the lookahead. */ + ]b4_yystype[ yylval = null; +]]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +## ------------- ## +## Parser File. ## +## ------------- ## + +b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison LALR(1) parsers in Java], + [2007-2015, 2018-2021])[ +]b4_disclaimer[ +]b4_percent_define_ifdef([api.package], [package b4_percent_define_get([api.package]);[ +]])[ +]b4_user_pre_prologue[ +]b4_user_post_prologue[ +import java.text.MessageFormat; +import java.util.ArrayList; +]b4_percent_code_get([[imports]])[ +/** + * A Bison parser, automatically generated from ]m4_bpatsubst(b4_file_name, [^"\(.*\)"$], [\1])[. + * + * @@author LALR (1) parser skeleton written by Paolo Bonzini. + */ +]b4_parser_class_declaration[ +{ +]b4_identification[ +][ +]b4_parse_error_bmatch( + [detailed\|verbose], [[ + /** + * True if verbose error messages are enabled. + */ + private boolean yyErrorVerbose = true; + + /** + * Whether verbose error messages are enabled. + */ + public final boolean getErrorVerbose() { return yyErrorVerbose; } + + /** + * Set the verbosity of error messages. + * @@param verbose True to request verbose error messages. + */ + public final void setErrorVerbose(boolean verbose) + { yyErrorVerbose = verbose; } +]])[ + +]b4_locations_if([[ + /** + * A class defining a pair of positions. Positions, defined by the + * ]b4_position_type[ class, denote a point in the input. + * Locations represent a part of the input through the beginning + * and ending positions. + */ + public static class ]b4_location_type[ { + /** + * The first, inclusive, position in the range. + */ + public ]b4_position_type[ begin; + + /** + * The first position beyond the range. + */ + public ]b4_position_type[ end; + + /** + * Create a ]b4_location_type[ denoting an empty range located at + * a given point. + * @@param loc The position at which the range is anchored. + */ + public ]b4_location_type[ (]b4_position_type[ loc) { + this.begin = this.end = loc; + } + + /** + * Create a ]b4_location_type[ from the endpoints of the range. + * @@param begin The first position included in the range. + * @@param end The first position beyond the range. + */ + public ]b4_location_type[ (]b4_position_type[ begin, ]b4_position_type[ end) { + this.begin = begin; + this.end = end; + } + + /** + * Print a representation of the location. For this to be correct, + * ]b4_position_type[ should override the equals + * method. + */ + public String toString() { + if (begin.equals (end)) + return begin.toString(); + else + return begin.toString() + "-" + end.toString(); + } + } + + private ]b4_location_type[ yylloc(YYStack rhs, int n) + { + if (0 < n) + return new ]b4_location_type[(rhs.locationAt(n-1).begin, rhs.locationAt(0).end); + else + return new ]b4_location_type[(rhs.locationAt(0).end); + }]])[ + +]b4_declare_symbol_enum[ + + /** + * Communication interface between the scanner and the Bison-generated + * parser ]b4_parser_class[. + */ + public interface Lexer { +]b4_token_enums[ + /** Deprecated, use ]b4_symbol(eof, id)[ instead. */ + public static final int EOF = ]b4_symbol(eof, id)[; +]b4_pull_if([b4_locations_if([[ + /** + * Method to retrieve the beginning position of the last scanned token. + * @@return the position at which the last scanned token starts. + */ + ]b4_position_type[ getStartPos(); + + /** + * Method to retrieve the ending position of the last scanned token. + * @@return the first position beyond the last scanned token. + */ + ]b4_position_type[ getEndPos();]])[ + + /** + * Method to retrieve the semantic value of the last scanned token. + * @@return the semantic value of the last scanned token. + */ + ]b4_yystype[ getLVal(); + + /** + * Entry point for the scanner. Returns the token identifier corresponding + * to the next token and prepares to return the semantic value + * ]b4_locations_if([and beginning/ending positions ])[of the token. + * @@return the token identifier corresponding to the next token. + */ + int yylex()]b4_maybe_throws([b4_lex_throws])[; +]])[ + /** + * Emit an error]b4_locations_if([ referring to the given location])[in a user-defined way. + * + *]b4_locations_if([[ @@param loc The location of the element to which the + * error message is related.]])[ + * @@param msg The string for the error message. + */ + void yyerror(]b4_locations_if([b4_location_type[ loc, ]])[String msg); + +]b4_parse_error_bmatch( + [custom], [[ + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + void reportSyntaxError(Context ctx); +]])[ + } + +]b4_lexer_if([[ + private class YYLexer implements Lexer { +]b4_percent_code_get([[lexer]])[ + } + +]])[ + /** + * The object doing lexical analysis for us. + */ + private Lexer yylexer; + +]b4_parse_param_vars[ + +]b4_lexer_if([[ + /** + * Instantiates the Bison-generated parser. + */ + public ]b4_parser_class[(]b4_parse_param_decl([b4_lex_param_decl])[)]b4_maybe_throws([b4_init_throws])[ + { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.yylexer = new YYLexer(]b4_lex_param_call[); +]b4_parse_param_cons[ + } +]])[ + + /** + * Instantiates the Bison-generated parser. + * @@param yylexer The scanner that will supply tokens to the parser. + */ + ]b4_lexer_if([[protected]], [[public]]) b4_parser_class[(]b4_parse_param_decl([[Lexer yylexer]])[)]b4_maybe_throws([b4_init_throws])[ + { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.yylexer = yylexer; +]b4_parse_param_cons[ + } + +]b4_parse_trace_if([[ + private java.io.PrintStream yyDebugStream = System.err; + + /** + * The PrintStream on which the debugging output is printed. + */ + public final java.io.PrintStream getDebugStream() { return yyDebugStream; } + + /** + * Set the PrintStream on which the debug output is printed. + * @@param s The stream that is used for debugging output. + */ + public final void setDebugStream(java.io.PrintStream s) { yyDebugStream = s; } + + private int yydebug = 0; + + /** + * Answer the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + */ + public final int getDebugLevel() { return yydebug; } + + /** + * Set the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + * @@param level The verbosity level for debugging output. + */ + public final void setDebugLevel(int level) { yydebug = level; } +]])[ + + private int yynerrs = 0; + + /** + * The number of syntax errors so far. + */ + public final int getNumberOfErrors() { return yynerrs; } + + /** + * Print an error message via the lexer. + *]b4_locations_if([[ Use a null location.]])[ + * @@param msg The error message. + */ + public final void yyerror(String msg) { + yylexer.yyerror(]b4_locations_if([[(]b4_location_type[)null, ]])[msg); + } +]b4_locations_if([[ + /** + * Print an error message via the lexer. + * @@param loc The location associated with the message. + * @@param msg The error message. + */ + public final void yyerror(]b4_location_type[ loc, String msg) { + yylexer.yyerror(loc, msg); + } + + /** + * Print an error message via the lexer. + * @@param pos The position associated with the message. + * @@param msg The error message. + */ + public final void yyerror(]b4_position_type[ pos, String msg) { + yylexer.yyerror(new ]b4_location_type[ (pos), msg); + }]])[ +]b4_parse_trace_if([[ + protected final void yycdebugNnl(String s) { + if (0 < yydebug) + yyDebugStream.print(s); + } + + protected final void yycdebug(String s) { + if (0 < yydebug) + yyDebugStream.println(s); + }]])[ + + private final class YYStack { + private int[] stateStack = new int[16];]b4_locations_if([[ + private ]b4_location_type[[] locStack = new ]b4_location_type[[16];]])[ + private ]b4_yystype[[] valueStack = new ]b4_yystype[[16]; + + public int size = 16; + public int height = -1; + + public final void push(int state, ]b4_yystype[ value]b4_locations_if([, ]b4_location_type[ loc])[) { + height++; + if (size == height) { + int[] newStateStack = new int[size * 2]; + System.arraycopy(stateStack, 0, newStateStack, 0, height); + stateStack = newStateStack;]b4_locations_if([[ + ]b4_location_type[[] newLocStack = new ]b4_location_type[[size * 2]; + System.arraycopy(locStack, 0, newLocStack, 0, height); + locStack = newLocStack;]]) + + b4_yystype[[] newValueStack = new ]b4_yystype[[size * 2]; + System.arraycopy(valueStack, 0, newValueStack, 0, height); + valueStack = newValueStack; + + size *= 2; + } + + stateStack[height] = state;]b4_locations_if([[ + locStack[height] = loc;]])[ + valueStack[height] = value; + } + + public final void pop() { + pop(1); + } + + public final void pop(int num) { + // Avoid memory leaks... garbage collection is a white lie! + if (0 < num) { + java.util.Arrays.fill(valueStack, height - num + 1, height + 1, null);]b4_locations_if([[ + java.util.Arrays.fill(locStack, height - num + 1, height + 1, null);]])[ + } + height -= num; + } + + public final int stateAt(int i) { + return stateStack[height - i]; + } +]b4_locations_if([[ + + public final ]b4_location_type[ locationAt(int i) { + return locStack[height - i]; + } +]])[ + public final ]b4_yystype[ valueAt(int i) { + return valueStack[height - i]; + } + + // Print the state stack on the debug stream. + public void print(java.io.PrintStream out) { + out.print ("Stack now"); + + for (int i = 0; i <= height; i++) { + out.print(' '); + out.print(stateStack[i]); + } + out.println(); + } + } + + /** + * Returned by a Bison action in order to stop the parsing process and + * return success (true). + */ + public static final int YYACCEPT = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return failure (false). + */ + public static final int YYABORT = 1; + +]b4_push_if([ + /** + * Returned by a Bison action in order to request a new token. + */ + public static final int YYPUSH_MORE = 4;])[ + + /** + * Returned by a Bison action in order to start error recovery without + * printing an error message. + */ + public static final int YYERROR = 2; + + /** + * Internal return codes that are not supported for user semantic + * actions. + */ + private static final int YYERRLAB = 3; + private static final int YYNEWSTATE = 4; + private static final int YYDEFAULT = 5; + private static final int YYREDUCE = 6; + private static final int YYERRLAB1 = 7; + private static final int YYRETURN = 8; +]b4_push_if([[ private static final int YYGETTOKEN = 9; /* Signify that a new token is expected when doing push-parsing. */]])[ + + private int yyerrstatus_ = 0; + +]b4_push_if([b4_define_state])[ + /** + * Whether error recovery is being done. In this state, the parser + * reads token until it reaches a known state, and then restarts normal + * operation. + */ + public final boolean recovering () + { + return yyerrstatus_ == 0; + } + + /** Compute post-reduction state. + * @@param yystate the current state + * @@param yysym the nonterminal to push on the stack + */ + private int yyLRGotoState(int yystate, int yysym) { + int yyr = yypgoto_[yysym - YYNTOKENS_] + yystate; + if (0 <= yyr && yyr <= YYLAST_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - YYNTOKENS_]; + } + + private int yyaction(int yyn, YYStack yystack, int yylen)]b4_maybe_throws([b4_throws])[ + { + /* If YYLEN is nonzero, implement the default value of the action: + '$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. */ + ]b4_yystype[ yyval = (0 < yylen) ? yystack.valueAt(yylen - 1) : yystack.valueAt(0);]b4_locations_if([[ + ]b4_location_type[ yyloc = yylloc(yystack, yylen);]])[]b4_parse_trace_if([[ + + yyReducePrint(yyn, yystack);]])[ + + switch (yyn) + { + ]b4_user_actions[ + default: break; + }]b4_parse_trace_if([[ + + yySymbolPrint("-> $$ =", SymbolKind.get(yyr1_[yyn]), yyval]b4_locations_if([, yyloc])[);]])[ + + yystack.pop(yylen); + yylen = 0; + /* Shift the result of the reduction. */ + int yystate = yyLRGotoState(yystack.stateAt(0), yyr1_[yyn]); + yystack.push(yystate, yyval]b4_locations_if([, yyloc])[); + return YYNEWSTATE; + } + +]b4_parse_trace_if([[ + /*--------------------------------. + | Print this symbol on YYOUTPUT. | + `--------------------------------*/ + + private void yySymbolPrint(String s, SymbolKind yykind, + ]b4_yystype[ yyvalue]b4_locations_if([, ]b4_location_type[ yylocation])[) { + if (0 < yydebug) { + yycdebug(s + + (yykind.getCode() < YYNTOKENS_ ? " token " : " nterm ") + + yykind.getName() + " ("]b4_locations_if([ + + yylocation + ": "])[ + + (yyvalue == null ? "(null)" : yyvalue.toString()) + ")"); + } + }]])[ + +]b4_push_if([],[[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public boolean parse()]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[]])[ +]b4_push_if([ + /** + * Push Parse input from external lexer + * + * @@param yylextoken current token + * @@param yylexval current lval]b4_locations_if([[ + * @@param yylexloc current position]])[ + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int push_parse(int yylextoken, b4_yystype yylexval[]b4_locations_if([, b4_location_type yylexloc]))b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])])[ + {]b4_locations_if([[ + /* @@$. */ + ]b4_location_type[ yyloc;]])[ +]b4_push_if([],[[ +]b4_define_state[ +]b4_lac_if([[ + // Discard the LAC context in case there still is one left from a + // previous invocation. + yylacDiscard("init");]])[ +]b4_parse_trace_if([[ + yycdebug ("Starting parse");]])[ + yyerrstatus_ = 0; + yynerrs = 0; + + /* Initialize the stack. */ + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef[]dnl +])[ +]])[ +]b4_push_if([[ + if (!this.push_parse_initialized) + { + push_parse_initialize (); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef[]dnl +])[]b4_parse_trace_if([[ + yycdebug ("Starting parse");]])[ + yyerrstatus_ = 0; + } else + label = YYGETTOKEN; + + boolean push_token_consumed = true; +]])[ + for (;;) + switch (label) + { + /* New state. Unlike in the C/C++ skeletons, the state is already + pushed when we come here. */ + case YYNEWSTATE:]b4_parse_trace_if([[ + yycdebug ("Entering state " + yystate); + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + + /* Accept? */ + if (yystate == YYFINAL_) + ]b4_push_if([{label = YYACCEPT; break;}], + [return true;])[ + + /* Take a decision. First try without lookahead. */ + yyn = yypact_[yystate]; + if (yyPactValueIsDefault (yyn)) + { + label = YYDEFAULT; + break; + } +]b4_push_if([ /* Fall Through */ + + case YYGETTOKEN:])[ + /* Read a lookahead token. */ + if (yychar == YYEMPTY_) + { +]b4_push_if([[ + if (!push_token_consumed) + return YYPUSH_MORE;]b4_parse_trace_if([[ + yycdebug ("Reading a token");]])[ + yychar = yylextoken; + yylval = yylexval;]b4_locations_if([ + yylloc = yylexloc;])[ + push_token_consumed = false;]], [b4_parse_trace_if([[ + yycdebug ("Reading a token");]])[ + yychar = yylexer.yylex (); + yylval = yylexer.getLVal();]b4_locations_if([[ + yylloc = new ]b4_location_type[(yylexer.getStartPos(), + yylexer.getEndPos());]])[ +]])[ + } + + /* Convert token to internal form. */ + yytoken = yytranslate_ (yychar);]b4_parse_trace_if([[ + yySymbolPrint("Next token is", yytoken, + yylval]b4_locations_if([, yylloc])[);]])[ + + if (yytoken == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yychar = Lexer.]b4_symbol(undef, id)[; + yytoken = ]b4_symbol(undef, kind)[;]b4_locations_if([[ + yyerrloc = yylloc;]])[ + label = YYERRLAB1; + } + else + { + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken.getCode(); + if (yyn < 0 || YYLAST_ < yyn || yycheck_[yyn] != yytoken.getCode()) {]b4_lac_if([[ + if (!yylacEstablish(yystack, yytoken)) { + label = YYERRLAB; + } else]])[ + label = YYDEFAULT; + } + + /* <= 0 means reduce or error. */ + else if ((yyn = yytable_[yyn]) <= 0) + { + if (yyTableValueIsError(yyn)) { + label = YYERRLAB; + }]b4_lac_if([[ else if (!yylacEstablish(yystack, yytoken)) { + label = YYERRLAB; + }]])[ else { + yyn = -yyn; + label = YYREDUCE; + } + } + + else + { + /* Shift the lookahead token. */]b4_parse_trace_if([[ + yySymbolPrint("Shifting", yytoken, + yylval]b4_locations_if([, yylloc])[); +]])[ + /* Discard the token being shifted. */ + yychar = YYEMPTY_; + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus_ > 0) + --yyerrstatus_; + + yystate = yyn; + yystack.push(yystate, yylval]b4_locations_if([, yylloc])[);]b4_lac_if([[ + yylacDiscard("shift");]])[ + label = YYNEWSTATE; + } + } + break; + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + case YYDEFAULT: + yyn = yydefact_[yystate]; + if (yyn == 0) + label = YYERRLAB; + else + label = YYREDUCE; + break; + + /*-----------------------------. + | yyreduce -- Do a reduction. | + `-----------------------------*/ + case YYREDUCE: + yylen = yyr2_[yyn]; + label = yyaction(yyn, yystack, yylen); + yystate = yystack.stateAt(0); + break; + + /*------------------------------------. + | yyerrlab -- here on detecting error | + `------------------------------------*/ + case YYERRLAB: + /* If not already recovering from an error, report this error. */ + if (yyerrstatus_ == 0) + { + ++yynerrs; + if (yychar == YYEMPTY_) + yytoken = null; + yyreportSyntaxError(new Context(this, yystack, yytoken]b4_locations_if([[, yylloc]])[)); + } +]b4_locations_if([[ + yyerrloc = yylloc;]])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= Lexer.]b4_symbol(eof, id)[) + { + /* Return failure if at end of input. */ + if (yychar == Lexer.]b4_symbol(eof, id)[) + ]b4_push_if([{label = YYABORT; break;}], [return false;])[ + } + else + yychar = YYEMPTY_; + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + label = YYERRLAB1; + break; + + /*-------------------------------------------------. + | errorlab -- error raised explicitly by YYERROR. | + `-------------------------------------------------*/ + case YYERROR:]b4_locations_if([[ + yyerrloc = yystack.locationAt (yylen - 1);]])[ + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + yystack.pop (yylen); + yylen = 0; + yystate = yystack.stateAt(0); + label = YYERRLAB1; + break; + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + case YYERRLAB1: + yyerrstatus_ = 3; /* Each real token shifted decrements this. */ + + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[yystate]; + if (!yyPactValueIsDefault (yyn)) + { + yyn += ]b4_symbol(error, kind)[.getCode(); + if (0 <= yyn && yyn <= YYLAST_ + && yycheck_[yyn] == ]b4_symbol(error, kind)[.getCode()) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the + * error token. */ + if (yystack.height == 0) + ]b4_push_if([{label = YYABORT; break;}],[return false;])[ + +]b4_locations_if([[ + yyerrloc = yystack.locationAt (0);]])[ + yystack.pop (); + yystate = yystack.stateAt(0);]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + } + + if (label == YYABORT) + /* Leave the switch. */ + break; + +]b4_locations_if([[ + /* Muck with the stack to setup for yylloc. */ + yystack.push (0, null, yylloc); + yystack.push (0, null, yyerrloc); + yyloc = yylloc (yystack, 2); + yystack.pop (2);]])[ + + /* Shift the error token. */]b4_lac_if([[ + yylacDiscard("error recovery");]])[]b4_parse_trace_if([[ + yySymbolPrint("Shifting", SymbolKind.get(yystos_[yyn]), + yylval]b4_locations_if([, yyloc])[);]])[ + + yystate = yyn; + yystack.push (yyn, yylval]b4_locations_if([, yyloc])[); + label = YYNEWSTATE; + break; + + /* Accept. */ + case YYACCEPT: + ]b4_push_if([this.push_parse_initialized = false; return YYACCEPT;], + [return true;])[ + + /* Abort. */ + case YYABORT: + ]b4_push_if([this.push_parse_initialized = false; return YYABORT;], + [return false;])[ + } +} +]b4_push_if([[ + boolean push_parse_initialized = false; + + /** + * (Re-)Initialize the state of the push parser. + */ + public void push_parse_initialize () + { + /* Lookahead and lookahead in internal form. */ + this.yychar = YYEMPTY_; + this.yytoken = null; + + /* State. */ + this.yyn = 0; + this.yylen = 0; + this.yystate = 0; + this.yystack = new YYStack();]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.label = YYNEWSTATE; + + /* Error handling. */ + this.yynerrs = 0;]b4_locations_if([[ + /* The location where the error started. */ + this.yyerrloc = null; + this.yylloc = new ]b4_location_type[ (null, null);]])[ + + /* Semantic value of the lookahead. */ + this.yylval = null; + + yystack.push (this.yystate, this.yylval]b4_locations_if([, this.yylloc])[); + + this.push_parse_initialized = true; + + } +]b4_locations_if([[ + /** + * Push parse given input from an external lexer. + * + * @@param yylextoken current token + * @@param yylexval current lval + * @@param yyylexpos current position + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int push_parse(int yylextoken, ]b4_yystype[ yylexval, ]b4_position_type[ yylexpos)]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[ { + return push_parse(yylextoken, yylexval, new ]b4_location_type[(yylexpos)); + } +]])])[ + +]b4_both_if([[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * This version of parse() is defined only when api.push-push=both. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public boolean parse()]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[ { + if (yylexer == null) + throw new NullPointerException("Null Lexer"); + int status; + do { + int token = yylexer.yylex(); + ]b4_yystype[ lval = yylexer.getLVal();]b4_locations_if([[ + ]b4_location_type[ yyloc = new ]b4_location_type[(yylexer.getStartPos(), yylexer.getEndPos()); + status = push_parse(token, lval, yyloc);]], [[ + status = push_parse(token, lval);]])[ + } while (status == YYPUSH_MORE); + return status == YYACCEPT; + } +]])[ + + /** + * Information needed to get the list of expected tokens and to forge + * a syntax error diagnostic. + */ + public static final class Context { + Context(]b4_parser_class[ parser, YYStack stack, SymbolKind token]b4_locations_if([[, ]b4_location_type[ loc]])[) { + yyparser = parser; + yystack = stack; + yytoken = token;]b4_locations_if([[ + yylocation = loc;]])[ + } + + private ]b4_parser_class[ yyparser; + private YYStack yystack; + + + /** + * The symbol kind of the lookahead token. + */ + public final SymbolKind getToken() { + return yytoken; + } + + private SymbolKind yytoken;]b4_locations_if([[ + + /** + * The location of the lookahead. + */ + public final ]b4_location_type[ getLocation() { + return yylocation; + } + + private ]b4_location_type[ yylocation;]])[ + static final int NTOKENS = ]b4_parser_class[.YYNTOKENS_; + + /** + * Put in YYARG at most YYARGN of the expected tokens given the + * current YYCTX, and return the number of tokens stored in YYARG. If + * YYARG is null, return the number of expected tokens (guaranteed to + * be less than YYNTOKENS). + */ + int getExpectedTokens(SymbolKind yyarg[], int yyargn) { + return getExpectedTokens (yyarg, 0, yyargn); + } + + int getExpectedTokens(SymbolKind yyarg[], int yyoffset, int yyargn) { + int yycount = yyoffset;]b4_lac_if([b4_parse_trace_if([[ + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + if (!yyparser.yylacEstablished) + yyparser.yylacCheck(yystack, yytoken); +]])[ + for (int yyx = 0; yyx < YYNTOKENS_; ++yyx) + { + SymbolKind yysym = SymbolKind.get(yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser.yylacCheck(yystack, yysym)) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + int yyn = yypact_[this.yystack.stateAt(0)]; + if (!yyPactValueIsDefault(yyn)) + { + /* Start YYX at -YYN if negative to avoid negative + indexes in YYCHECK. In other words, skip the first + -YYN actions for this state because they are default + actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST_ - yyn + 1; + int yyxend = yychecklim < NTOKENS ? yychecklim : NTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[.getCode() + && !yyTableValueIsError(yytable_[yyx + yyn])) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; // FIXME: this is incorrect. + else + yyarg[yycount++] = SymbolKind.get(yyx); + } + }]])[ + if (yyarg != null && yycount == yyoffset && yyoffset < yyargn) + yyarg[yycount] = null; + return yycount - yyoffset; + } + } + +]b4_lac_if([[ + /** Check the lookahead yytoken. + * \returns true iff the token will be eventually shifted. + */ + boolean yylacCheck(YYStack yystack, SymbolKind yytoken) + { + // Logically, the yylacStack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + yylacStack.clear(); + // Reduce until we encounter a shift and thereby accept the token. + yycdebugNnl("LAC: checking lookahead " + yytoken.getName() + ":"); + int lacTop = 0; + while (true) + { + int topState = (yylacStack.isEmpty() + ? yystack.stateAt(lacTop) + : yylacStack.get(yylacStack.size() - 1)); + int yyrule = yypact_[topState]; + if (yyPactValueIsDefault(yyrule) + || (yyrule += yytoken.getCode()) < 0 || YYLAST_ < yyrule + || yycheck_[yyrule] != yytoken.getCode()) + { + // Use the default action. + yyrule = yydefact_[+topState]; + if (yyrule == 0) { + yycdebug(" Err"); + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yyTableValueIsError(yyrule)) { + yycdebug(" Err"); + return false; + } + if (0 < yyrule) { + yycdebug(" S" + yyrule); + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. + yycdebugNnl(" R" + (yyrule - 1)); + // Pop the corresponding number of values from the stack. + { + int yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + int lacSize = yylacStack.size(); + if (yylen < lacSize) { + // yylacStack.setSize(lacSize - yylen); + for (/* Nothing */; 0 < yylen; yylen -= 1) { + yylacStack.remove(yylacStack.size() - 1); + } + yylen = 0; + } else if (lacSize != 0) { + yylacStack.clear(); + yylen -= lacSize; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lacTop. + lacTop += yylen; + } + // Keep topState in sync with the updated stack. + topState = (yylacStack.isEmpty() + ? yystack.stateAt(lacTop) + : yylacStack.get(yylacStack.size() - 1)); + // Push the resulting state of the reduction. + int state = yyLRGotoState(topState, yyr1_[yyrule]); + yycdebugNnl(" G" + state); + yylacStack.add(state); + } + } + + /** Establish the initial context if no initial context currently exists. + * \returns true iff the token will be eventually shifted. + */ + boolean yylacEstablish(YYStack yystack, SymbolKind yytoken) { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yylacEstablish should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yylacEstablish is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yylacEstablished) { + return true; + } else { + yycdebug("LAC: initial context established for " + yytoken.getName()); + yylacEstablished = true; + return yylacCheck(yystack, yytoken); + } + } + + /** Discard any previous initial lookahead context because of event. + * \param event the event which caused the lookahead to be discarded. + * Only used for debbuging output. */ + void yylacDiscard(String event) { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yylacEstablished) { + yycdebug("LAC: initial context discarded due to " + event); + yylacEstablished = false; + } + } + + /** The stack for LAC. + * Logically, the yylacStack's lifetime is confined to the function + * yylacCheck. We just store it as a member of this class to hold + * on to the memory and to avoid frequent reallocations. + */ + ArrayList yylacStack; + /** Whether an initial LAC context was established. */ + boolean yylacEstablished; +]])[ + +]b4_parse_error_bmatch( +[detailed\|verbose], [[ + private int yysyntaxErrorArguments(Context yyctx, SymbolKind[] yyarg, int yyargn) { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, + then the only way this function was invoked is if the + default action is an error action. In that case, don't + check for expected tokens because there are none. + - The only way there can be no lookahead present (in tok) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this + state is a consistent state with a default action. There + might have been a previous inconsistent state, consistent + state with a non-default action, or user semantic action + that manipulated yychar. (However, yychar is currently out + of scope during semantic actions.) + - Of course, the expected token list depends on states to + have correct lookahead information, and it depends on the + parser not to perform extra reductions after fetching a + lookahead from the scanner and before detecting a syntax + error. Thus, state merging (from LALR or IELR) and default + reductions corrupt the expected token list. However, the + list is correct for canonical LR with one exception: it + will still contain any token that will not be accepted due + to an error action in a later state. + */ + int yycount = 0; + if (yyctx.getToken() != null) + { + if (yyarg != null) + yyarg[yycount] = yyctx.getToken(); + yycount += 1; + yycount += yyctx.getExpectedTokens(yyarg, 1, yyargn); + } + return yycount; + } +]])[ + + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + private void yyreportSyntaxError(Context yyctx) {]b4_parse_error_bmatch( +[custom], [[ + yylexer.reportSyntaxError(yyctx);]], +[detailed\|verbose], [[ + if (yyErrorVerbose) { + final int argmax = 5; + SymbolKind[] yyarg = new SymbolKind[argmax]; + int yycount = yysyntaxErrorArguments(yyctx, yyarg, argmax); + String[] yystr = new String[yycount]; + for (int yyi = 0; yyi < yycount; ++yyi) { + yystr[yyi] = yyarg[yyi].getName(); + } + String yyformat; + switch (yycount) { + default: + case 0: yyformat = ]b4_trans(["syntax error"])[; break; + case 1: yyformat = ]b4_trans(["syntax error, unexpected {0}"])[; break; + case 2: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1}"])[; break; + case 3: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2}"])[; break; + case 4: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2} or {3}"])[; break; + case 5: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2} or {3} or {4}"])[; break; + } + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[new MessageFormat(yyformat).format(yystr)); + } else { + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[]b4_trans(["syntax error"])[); + }]], +[simple], [[ + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[]b4_trans(["syntax error"])[);]])[ + } + + /** + * Whether the given yypact_ value indicates a defaulted state. + * @@param yyvalue the value to check + */ + private static boolean yyPactValueIsDefault(int yyvalue) { + return yyvalue == yypact_ninf_; + } + + /** + * Whether the given yytable_ + * value indicates a syntax error. + * @@param yyvalue the value to check + */ + private static boolean yyTableValueIsError(int yyvalue) { + return yyvalue == yytable_ninf_; + } + + private static final ]b4_int_type_for([b4_pact])[ yypact_ninf_ = ]b4_pact_ninf[; + private static final ]b4_int_type_for([b4_table])[ yytable_ninf_ = ]b4_table_ninf[; + +]b4_parser_tables_define[ + +]b4_parse_trace_if([[ + ]b4_integral_parser_table_define([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ + + + // Report on the debug stream that the rule yyrule is going to be reduced. + private void yyReducePrint (int yyrule, YYStack yystack) + { + if (yydebug == 0) + return; + + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + /* Print the symbols being reduced, and their result. */ + yycdebug ("Reducing stack by rule " + (yyrule - 1) + + " (line " + yylno + "):"); + + /* The symbols being reduced. */ + for (int yyi = 0; yyi < yynrhs; yyi++) + yySymbolPrint(" $" + (yyi + 1) + " =", + SymbolKind.get(yystos_[yystack.stateAt(yynrhs - (yyi + 1))]), + ]b4_rhs_data(yynrhs, yyi + 1)b4_locations_if([, + b4_rhs_location(yynrhs, yyi + 1)])[); + }]])[ + + /* YYTRANSLATE_(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ + private static final SymbolKind yytranslate_(int t) +]b4_api_token_raw_if(dnl +[[ { + return SymbolKind.get(t); + } +]], +[[ { + // Last valid token kind. + int code_max = ]b4_code_max[; + if (t <= 0) + return ]b4_symbol(eof, kind)[; + else if (t <= code_max) + return SymbolKind.get(yytranslate_table_[t]); + else + return ]b4_symbol(undef, kind)[; + } + ]b4_integral_parser_table_define([translate_table], [b4_translate])[ +]])[ + + private static final int YYLAST_ = ]b4_last[; + private static final int YYEMPTY_ = -2; + private static final int YYFINAL_ = ]b4_final_state_number[; + private static final int YYNTOKENS_ = ]b4_tokens_number[; + +]b4_percent_code_get[ +} +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/location.cc b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/location.cc new file mode 100644 index 0000000..3870b2b --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/location.cc @@ -0,0 +1,380 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_pushdef([b4_copyright_years], + [2002-2015, 2018-2021]) + + +# b4_location_file +# ---------------- +# Name of the file containing the position/location class, +# if we want this file. +b4_percent_define_check_file([b4_location_file], + [[api.location.file]], + b4_header_if([[location.hh]])) + +# b4_location_include +# ------------------- +# If location.hh is to be generated, the name under which should it be +# included. +# +# b4_location_path +# ---------------- +# The path to use for the CPP guard. +m4_ifdef([b4_location_file], +[m4_define([b4_location_include], + [b4_percent_define_get([[api.location.include]], + ["b4_location_file"])]) + m4_define([b4_location_path], + b4_percent_define_get([[api.location.include]], + ["b4_mapped_dir_prefix[]b4_location_file"])) + m4_define([b4_location_path], + m4_substr(m4_defn([b4_location_path]), 1, m4_eval(m4_len(m4_defn([b4_location_path])) - 2))) + ]) + + +# b4_position_file +# ---------------- +# Name of the file containing the position class, if we want this file. +b4_header_if( + [b4_required_version_if( + [30200], [], + [m4_ifdef([b4_location_file], + [m4_define([b4_position_file], [position.hh])])])]) + + + +# b4_location_define +# ------------------ +# Define the position and location classes. +m4_define([b4_location_define], +[[ /// A point in a source file. + class position + { + public: + /// Type for file name. + typedef ]b4_percent_define_get([[api.filename.type]])[ filename_type; + /// Type for line and column numbers. + typedef int counter_type; +]m4_ifdef([b4_location_constructors], [[ + /// Construct a position. + explicit position (filename_type* f = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + : filename (f) + , line (l) + , column (c) + {} + +]])[ + /// Initialization. + void initialize (filename_type* fn = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + { + filename = fn; + line = l; + column = c; + } + + /** \name Line and Column related manipulators + ** \{ */ + /// (line related) Advance to the COUNT next lines. + void lines (counter_type count = 1) + { + if (count) + { + column = ]b4_location_initial_column[; + line = add_ (line, count, ]b4_location_initial_line[); + } + } + + /// (column related) Advance to the COUNT next columns. + void columns (counter_type count = 1) + { + column = add_ (column, count, ]b4_location_initial_column[); + } + /** \} */ + + /// File name to which this position refers. + filename_type* filename; + /// Current line number. + counter_type line; + /// Current column number. + counter_type column; + + private: + /// Compute max (min, lhs+rhs). + static counter_type add_ (counter_type lhs, counter_type rhs, counter_type min) + { + return lhs + rhs < min ? min : lhs + rhs; + } + }; + + /// Add \a width columns, in place. + inline position& + operator+= (position& res, position::counter_type width) + { + res.columns (width); + return res; + } + + /// Add \a width columns. + inline position + operator+ (position res, position::counter_type width) + { + return res += width; + } + + /// Subtract \a width columns, in place. + inline position& + operator-= (position& res, position::counter_type width) + { + return res += -width; + } + + /// Subtract \a width columns. + inline position + operator- (position res, position::counter_type width) + { + return res -= width; + } +]b4_percent_define_flag_if([[define_location_comparison]], [[ + /// Compare two position objects. + inline bool + operator== (const position& pos1, const position& pos2) + { + return (pos1.line == pos2.line + && pos1.column == pos2.column + && (pos1.filename == pos2.filename + || (pos1.filename && pos2.filename + && *pos1.filename == *pos2.filename))); + } + + /// Compare two position objects. + inline bool + operator!= (const position& pos1, const position& pos2) + { + return !(pos1 == pos2); + } +]])[ + /** \brief Intercept output stream redirection. + ** \param ostr the destination output stream + ** \param pos a reference to the position to redirect + */ + template + std::basic_ostream& + operator<< (std::basic_ostream& ostr, const position& pos) + { + if (pos.filename) + ostr << *pos.filename << ':'; + return ostr << pos.line << '.' << pos.column; + } + + /// Two points in a source file. + class location + { + public: + /// Type for file name. + typedef position::filename_type filename_type; + /// Type for line and column numbers. + typedef position::counter_type counter_type; +]m4_ifdef([b4_location_constructors], [ + /// Construct a location from \a b to \a e. + location (const position& b, const position& e) + : begin (b) + , end (e) + {} + + /// Construct a 0-width location in \a p. + explicit location (const position& p = position ()) + : begin (p) + , end (p) + {} + + /// Construct a 0-width location in \a f, \a l, \a c. + explicit location (filename_type* f, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + : begin (f, l, c) + , end (f, l, c) + {} + +])[ + /// Initialization. + void initialize (filename_type* f = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + { + begin.initialize (f, l, c); + end = begin; + } + + /** \name Line and Column related manipulators + ** \{ */ + public: + /// Reset initial location to final location. + void step () + { + begin = end; + } + + /// Extend the current location to the COUNT next columns. + void columns (counter_type count = 1) + { + end += count; + } + + /// Extend the current location to the COUNT next lines. + void lines (counter_type count = 1) + { + end.lines (count); + } + /** \} */ + + + public: + /// Beginning of the located region. + position begin; + /// End of the located region. + position end; + }; + + /// Join two locations, in place. + inline location& + operator+= (location& res, const location& end) + { + res.end = end.end; + return res; + } + + /// Join two locations. + inline location + operator+ (location res, const location& end) + { + return res += end; + } + + /// Add \a width columns to the end position, in place. + inline location& + operator+= (location& res, location::counter_type width) + { + res.columns (width); + return res; + } + + /// Add \a width columns to the end position. + inline location + operator+ (location res, location::counter_type width) + { + return res += width; + } + + /// Subtract \a width columns to the end position, in place. + inline location& + operator-= (location& res, location::counter_type width) + { + return res += -width; + } + + /// Subtract \a width columns to the end position. + inline location + operator- (location res, location::counter_type width) + { + return res -= width; + } +]b4_percent_define_flag_if([[define_location_comparison]], [[ + /// Compare two location objects. + inline bool + operator== (const location& loc1, const location& loc2) + { + return loc1.begin == loc2.begin && loc1.end == loc2.end; + } + + /// Compare two location objects. + inline bool + operator!= (const location& loc1, const location& loc2) + { + return !(loc1 == loc2); + } +]])[ + /** \brief Intercept output stream redirection. + ** \param ostr the destination output stream + ** \param loc a reference to the location to redirect + ** + ** Avoid duplicate information. + */ + template + std::basic_ostream& + operator<< (std::basic_ostream& ostr, const location& loc) + { + location::counter_type end_col + = 0 < loc.end.column ? loc.end.column - 1 : 0; + ostr << loc.begin; + if (loc.end.filename + && (!loc.begin.filename + || *loc.begin.filename != *loc.end.filename)) + ostr << '-' << loc.end.filename << ':' << loc.end.line << '.' << end_col; + else if (loc.begin.line < loc.end.line) + ostr << '-' << loc.end.line << '.' << end_col; + else if (loc.begin.column < end_col) + ostr << '-' << end_col; + return ostr; + } +]]) + + +m4_ifdef([b4_position_file], [[ +]b4_output_begin([b4_dir_prefix], [b4_position_file])[ +]b4_generated_by[ +// Starting with Bison 3.2, this file is useless: the structure it +// used to define is now defined in "]b4_location_file[". +// +// To get rid of this file: +// 1. add '%require "3.2"' (or newer) to your grammar file +// 2. remove references to this file from your build system +// 3. if you used to include it, include "]b4_location_file[" instead. + +#include ]b4_location_include[ +]b4_output_end[ +]]) + + +m4_ifdef([b4_location_file], [[ +]b4_output_begin([b4_dir_prefix], [b4_location_file])[ +]b4_copyright([Locations for Bison parsers in C++])[ +/** + ** \file ]b4_location_path[ + ** Define the ]b4_namespace_ref[::location class. + */ + +]b4_cpp_guard_open([b4_location_path])[ + +# include +# include + +]b4_null_define[ + +]b4_namespace_open[ +]b4_location_define[ +]b4_namespace_close[ +]b4_cpp_guard_close([b4_location_path])[ +]b4_output_end[ +]]) + + +m4_popdef([b4_copyright_years]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/stack.hh b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/stack.hh new file mode 100644 index 0000000..9891325 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/stack.hh @@ -0,0 +1,157 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# b4_stack_file +# ------------- +# Name of the file containing the stack class, if we want this file. +b4_header_if([b4_required_version_if([30200], [], + [m4_define([b4_stack_file], [stack.hh])])]) + + +# b4_stack_define +# --------------- +m4_define([b4_stack_define], +[[ /// A stack with random access from its top. + template > + class stack + { + public: + // Hide our reversed order. + typedef typename S::iterator iterator; + typedef typename S::const_iterator const_iterator; + typedef typename S::size_type size_type; + typedef typename std::ptrdiff_t index_type; + + stack (size_type n = 200) YY_NOEXCEPT + : seq_ (n) + {} + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + stack (const stack&) = delete; + /// Non copyable. + stack& operator= (const stack&) = delete; +#endif + + /// Random access. + /// + /// Index 0 returns the topmost element. + const T& + operator[] (index_type i) const + { + return seq_[size_type (size () - 1 - i)]; + } + + /// Random access. + /// + /// Index 0 returns the topmost element. + T& + operator[] (index_type i) + { + return seq_[size_type (size () - 1 - i)]; + } + + /// Steal the contents of \a t. + /// + /// Close to move-semantics. + void + push (YY_MOVE_REF (T) t) + { + seq_.push_back (T ()); + operator[] (0).move (t); + } + + /// Pop elements from the stack. + void + pop (std::ptrdiff_t n = 1) YY_NOEXCEPT + { + for (; 0 < n; --n) + seq_.pop_back (); + } + + /// Pop all elements from the stack. + void + clear () YY_NOEXCEPT + { + seq_.clear (); + } + + /// Number of elements on the stack. + index_type + size () const YY_NOEXCEPT + { + return index_type (seq_.size ()); + } + + /// Iterator on top of the stack (going downwards). + const_iterator + begin () const YY_NOEXCEPT + { + return seq_.begin (); + } + + /// Bottom of the stack. + const_iterator + end () const YY_NOEXCEPT + { + return seq_.end (); + } + + /// Present a slice of the top of a stack. + class slice + { + public: + slice (const stack& stack, index_type range) YY_NOEXCEPT + : stack_ (stack) + , range_ (range) + {} + + const T& + operator[] (index_type i) const + { + return stack_[range_ - i]; + } + + private: + const stack& stack_; + index_type range_; + }; + + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + stack (const stack&); + /// Non copyable. + stack& operator= (const stack&); +#endif + /// The wrapped container. + S seq_; + }; +]]) + +m4_ifdef([b4_stack_file], +[b4_output_begin([b4_dir_prefix], [b4_stack_file])[ +]b4_generated_by[ +// Starting with Bison 3.2, this file is useless: the structure it +// used to define is now defined with the parser itself. +// +// To get rid of this file: +// 1. add '%require "3.2"' (or newer) to your grammar file +// 2. remove references to this file from your build system. +]b4_output_end[ +]]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/traceon.m4 b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/traceon.m4 new file mode 100644 index 0000000..344d7d1 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/traceon.m4 @@ -0,0 +1,2 @@ +dnl GNU M4 treats -dV in a position-independent manner. +m4_debugmode(V)m4_traceon()dnl diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/variant.hh b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/variant.hh new file mode 100644 index 0000000..2a490e8 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/variant.hh @@ -0,0 +1,525 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +## --------- ## +## variant. ## +## --------- ## + +# b4_assert +# --------- +# The name of YY_ASSERT. +m4_define([b4_assert], + [b4_api_PREFIX[]_ASSERT]) + + +# b4_symbol_variant(YYTYPE, YYVAL, ACTION, [ARGS]) +# ------------------------------------------------ +# Run some ACTION ("build", or "destroy") on YYVAL of symbol type +# YYTYPE. +m4_define([b4_symbol_variant], +[m4_pushdef([b4_dollar_dollar], + [$2.$3< $][3 > (m4_shift3($@))])dnl +switch ($1) + { +b4_type_foreach([_b4_type_action])[]dnl + default: + break; + } +m4_popdef([b4_dollar_dollar])dnl +]) + + +# _b4_char_sizeof_counter +# ----------------------- +# A counter used by _b4_char_sizeof_dummy to create fresh symbols. +m4_define([_b4_char_sizeof_counter], +[0]) + +# _b4_char_sizeof_dummy +# --------------------- +# At each call return a new C++ identifier. +m4_define([_b4_char_sizeof_dummy], +[m4_define([_b4_char_sizeof_counter], m4_incr(_b4_char_sizeof_counter))dnl +dummy[]_b4_char_sizeof_counter]) + + +# b4_char_sizeof(SYMBOL-NUMS) +# --------------------------- +# To be mapped on the list of type names to produce: +# +# char dummy1[sizeof (type_name_1)]; +# char dummy2[sizeof (type_name_2)]; +# +# for defined type names. +m4_define([b4_char_sizeof], +[b4_symbol_if([$1], [has_type], +[ +m4_map([ b4_symbol_tag_comment], [$@])dnl + char _b4_char_sizeof_dummy@{sizeof (b4_symbol([$1], [type]))@}; +])]) + + +# b4_variant_includes +# ------------------- +# The needed includes for variants support. +m4_define([b4_variant_includes], +[b4_parse_assert_if([[#include +#ifndef ]b4_assert[ +# include +# define ]b4_assert[ assert +#endif +]])]) + + + +## -------------------------- ## +## Adjustments for variants. ## +## -------------------------- ## + + +# b4_value_type_declare +# --------------------- +# Define value_type. +m4_define([b4_value_type_declare], +[[ /// A buffer to store and retrieve objects. + /// + /// Sort of a variant, but does not keep track of the nature + /// of the stored data, since that knowledge is available + /// via the current parser state. + class value_type + { + public: + /// Type of *this. + typedef value_type self_type; + + /// Empty construction. + value_type () YY_NOEXCEPT + : yyraw_ ()]b4_parse_assert_if([ + , yytypeid_ (YY_NULLPTR)])[ + {} + + /// Construct and fill. + template + value_type (YY_RVREF (T) t)]b4_parse_assert_if([ + : yytypeid_ (&typeid (T))])[ + {]b4_parse_assert_if([[ + ]b4_assert[ (sizeof (T) <= size);]])[ + new (yyas_ ()) T (YY_MOVE (t)); + } + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + value_type (const self_type&) = delete; + /// Non copyable. + self_type& operator= (const self_type&) = delete; +#endif + + /// Destruction, allowed only if empty. + ~value_type () YY_NOEXCEPT + {]b4_parse_assert_if([ + ]b4_assert[ (!yytypeid_); + ])[} + +# if 201103L <= YY_CPLUSPLUS + /// Instantiate a \a T in here from \a t. + template + T& + emplace (U&&... u) + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (std::forward (u)...); + } +# else + /// Instantiate an empty \a T in here. + template + T& + emplace () + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (); + } + + /// Instantiate a \a T in here from \a t. + template + T& + emplace (const T& t) + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (t); + } +# endif + + /// Instantiate an empty \a T in here. + /// Obsolete, use emplace. + template + T& + build () + { + return emplace (); + } + + /// Instantiate a \a T in here from \a t. + /// Obsolete, use emplace. + template + T& + build (const T& t) + { + return emplace (t); + } + + /// Accessor to a built \a T. + template + T& + as () YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == typeid (T)); + ]b4_assert[ (sizeof (T) <= size);]])[ + return *yyas_ (); + } + + /// Const accessor to a built \a T (for %printer). + template + const T& + as () const YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == typeid (T)); + ]b4_assert[ (sizeof (T) <= size);]])[ + return *yyas_ (); + } + + /// Swap the content with \a that, of same type. + /// + /// Both variants must be built beforehand, because swapping the actual + /// data requires reading it (with as()), and this is not possible on + /// unconstructed variants: it would require some dynamic testing, which + /// should not be the variant's responsibility. + /// Swapping between built and (possibly) non-built is done with + /// self_type::move (). + template + void + swap (self_type& that) YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == *that.yytypeid_);]])[ + std::swap (as (), that.as ()); + } + + /// Move the content of \a that to this. + /// + /// Destroys \a that. + template + void + move (self_type& that) + { +# if 201103L <= YY_CPLUSPLUS + emplace (std::move (that.as ())); +# else + emplace (); + swap (that); +# endif + that.destroy (); + } + +# if 201103L <= YY_CPLUSPLUS + /// Move the content of \a that to this. + template + void + move (self_type&& that) + { + emplace (std::move (that.as ())); + that.destroy (); + } +#endif + + /// Copy the content of \a that to this. + template + void + copy (const self_type& that) + { + emplace (that.as ()); + } + + /// Destroy the stored \a T. + template + void + destroy () + { + as ().~T ();]b4_parse_assert_if([ + yytypeid_ = YY_NULLPTR;])[ + } + + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + value_type (const self_type&); + /// Non copyable. + self_type& operator= (const self_type&); +#endif + + /// Accessor to raw memory as \a T. + template + T* + yyas_ () YY_NOEXCEPT + { + void *yyp = yyraw_; + return static_cast (yyp); + } + + /// Const accessor to raw memory as \a T. + template + const T* + yyas_ () const YY_NOEXCEPT + { + const void *yyp = yyraw_; + return static_cast (yyp); + } + + /// An auxiliary type to compute the largest semantic type. + union union_type + {]b4_type_foreach([b4_char_sizeof])[ }; + + /// The size of the largest semantic type. + enum { size = sizeof (union_type) }; + + /// A buffer to store semantic values. + union + { + /// Strongest alignment constraints. + long double yyalign_me_; + /// A buffer large enough to store any of the semantic values. + char yyraw_[size]; + };]b4_parse_assert_if([ + + /// Whether the content is built: if defined, the name of the stored type. + const std::type_info *yytypeid_;])[ + }; +]]) + + +# How the semantic value is extracted when using variants. + +# b4_symbol_value(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [$1.as< $3 > ()], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [$1.as < b4_symbol([$2], [type]) > ()], + [$1])], + [$1])])]) + +# b4_symbol_value_template(VAL, SYMBOL-NUM, [TYPE]) +# ------------------------------------------------- +# Same as b4_symbol_value, but used in a template method. +m4_define([b4_symbol_value_template], +[m4_ifval([$3], + [$1.template as< $3 > ()], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [$1.template as < b4_symbol([$2], [type]) > ()], + [$1])], + [$1])])]) + + + +## ------------- ## +## make_SYMBOL. ## +## ------------- ## + + +# _b4_includes_tokens(SYMBOL-NUM...) +# ---------------------------------- +# Expands to non-empty iff one of the SYMBOL-NUM denotes +# a token. +m4_define([_b4_is_token], + [b4_symbol_if([$1], [is_token], [1])]) +m4_define([_b4_includes_tokens], + [m4_map([_b4_is_token], [$@])]) + + +# _b4_token_maker_define(SYMBOL-NUM) +# ---------------------------------- +# Declare make_SYMBOL for SYMBOL-NUM. Use at class-level. +m4_define([_b4_token_maker_define], +[b4_token_visible_if([$1], +[#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_[]_b4_symbol([$1], [id]) (b4_join( + b4_symbol_if([$1], [has_type], + [b4_symbol([$1], [type]) v]), + b4_locations_if([location_type l]))) + { + return symbol_type (b4_join([token::b4_symbol([$1], [id])], + b4_symbol_if([$1], [has_type], [std::move (v)]), + b4_locations_if([std::move (l)]))); + } +#else + static + symbol_type + make_[]_b4_symbol([$1], [id]) (b4_join( + b4_symbol_if([$1], [has_type], + [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))) + { + return symbol_type (b4_join([token::b4_symbol([$1], [id])], + b4_symbol_if([$1], [has_type], [v]), + b4_locations_if([l]))); + } +#endif +])]) + + +# b4_token_kind(SYMBOL-NUM) +# ------------------------- +# Some tokens don't have an ID. +m4_define([b4_token_kind], +[b4_symbol_if([$1], [has_id], + [token::b4_symbol([$1], [id])], + [b4_symbol([$1], [code])])]) + + +# _b4_tok_in(SYMBOL-NUM, ...) +# --------------------------- +# See b4_tok_in below. The SYMBOL-NUMs... are tokens only. +# +# We iterate over the tokens to group them by "range" of token numbers (not +# symbols numbers!). +# +# b4_fst is the start of that range. +# b4_prev is the previous value. +# b4_val is the current value. +# If b4_val is the successor of b4_prev in token numbers, update the latter, +# otherwise emit the code for range b4_fst .. b4_prev. +# $1 is also used as a terminator in the foreach, but it will not be printed. +# +m4_define([_b4_tok_in], +[m4_pushdef([b4_prev], [$1])dnl +m4_pushdef([b4_fst], [$1])dnl +m4_pushdef([b4_sep], [])dnl +m4_foreach([b4_val], m4_dquote(m4_shift($@, $1)), + [m4_if(b4_symbol(b4_val, [code]), m4_eval(b4_symbol(b4_prev, [code]) + 1), [], + [b4_sep[]m4_if(b4_fst, b4_prev, + [tok == b4_token_kind(b4_fst)], + [(b4_token_kind(b4_fst) <= tok && tok <= b4_token_kind(b4_prev))])[]dnl +m4_define([b4_fst], b4_val)dnl +m4_define([b4_sep], [ + || ])])dnl +m4_define([b4_prev], b4_val)])dnl +m4_popdef([b4_sep])dnl +m4_popdef([b4_fst])dnl +m4_popdef([b4_prev])dnl +]) + + +# _b4_filter_tokens(SYMBOL-NUM, ...) +# ---------------------------------- +# Expand as the list of tokens amongst SYMBOL-NUM. +m4_define([_b4_filter_tokens], +[m4_pushdef([b4_sep])dnl +m4_foreach([b4_val], [$@], + [b4_symbol_if(b4_val, [is_token], [b4_sep[]b4_val[]m4_define([b4_sep], [,])])])dnl +m4_popdef([b4_sep])dnl +]) + + +# b4_tok_in(SYMBOL-NUM, ...) +# --------------------------- +# A C++ conditional that checks that `tok` is a member of this list of symbol +# numbers. +m4_define([b4_tok_in], + [_$0(_b4_filter_tokens($@))]) + + + + +# _b4_symbol_constructor_define(SYMBOL-NUM...) +# -------------------------------------------- +# Define a symbol_type constructor common to all the SYMBOL-NUM (they +# have the same type). Use at class-level. +m4_define([_b4_symbol_constructor_define], +[m4_ifval(_b4_includes_tokens($@), +[[#if 201103L <= YY_CPLUSPLUS + symbol_type (]b4_join( + [int tok], + b4_symbol_if([$1], [has_type], + [b4_symbol([$1], [type]) v]), + b4_locations_if([location_type l]))[) + : super_type (]b4_join([token_kind_type (tok)], + b4_symbol_if([$1], [has_type], [std::move (v)]), + b4_locations_if([std::move (l)]))[) +#else + symbol_type (]b4_join( + [int tok], + b4_symbol_if([$1], [has_type], + [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))[) + : super_type (]b4_join([token_kind_type (tok)], + b4_symbol_if([$1], [has_type], [v]), + b4_locations_if([l]))[) +#endif + {]b4_parse_assert_if([[ +#if !defined _MSC_VER || defined __clang__ + ]b4_assert[ (]b4_tok_in($@)[); +#endif + ]])[} +]])]) + + +# b4_basic_symbol_constructor_define(SYMBOL-NUM) +# ---------------------------------------------- +# Generate a constructor for basic_symbol from given type. +m4_define([b4_basic_symbol_constructor_define], +[[#if 201103L <= YY_CPLUSPLUS + basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_symbol_if([$1], [has_type], [b4_symbol([$1], [type])&& v]), + b4_locations_if([location_type&& l]))[) + : Base (t)]b4_symbol_if([$1], [has_type], [ + , value (std::move (v))])[]b4_locations_if([ + , location (std::move (l))])[ + {} +#else + basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_symbol_if([$1], [has_type], [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))[) + : Base (t)]b4_symbol_if([$1], [has_type], [ + , value (v)])[]b4_locations_if([ + , location (l)])[ + {} +#endif +]]) + + +# b4_token_constructor_define +# --------------------------- +# Define the overloaded versions of make_FOO for all the token kinds. +m4_define([b4_token_constructor_define], +[ // Implementation of make_symbol for each token kind. +b4_symbol_foreach([_b4_token_maker_define])]) diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/yacc.c b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/yacc.c new file mode 100644 index 0000000..64b9ac6 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/skeletons/yacc.c @@ -0,0 +1,2209 @@ +# -*- C -*- +# Yacc compatible skeleton for Bison + +# Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software +# Foundation, Inc. + +m4_pushdef([b4_copyright_years], + [1984, 1989-1990, 2000-2015, 2018-2021]) + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c.m4]) + + +## ---------- ## +## api.pure. ## +## ---------- ## + +b4_percent_define_default([[api.pure]], [[false]]) +b4_percent_define_check_values([[[[api.pure]], + [[false]], [[true]], [[]], [[full]]]]) + +m4_define([b4_pure_flag], [[0]]) +m4_case(b4_percent_define_get([[api.pure]]), + [false], [m4_define([b4_pure_flag], [[0]])], + [true], [m4_define([b4_pure_flag], [[1]])], + [], [m4_define([b4_pure_flag], [[1]])], + [full], [m4_define([b4_pure_flag], [[2]])]) + +m4_define([b4_pure_if], +[m4_case(b4_pure_flag, + [0], [$2], + [1], [$1], + [2], [$1])]) + [m4_fatal([invalid api.pure value: ]$1)])]) + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +# b4_pull_if, b4_push_if +# ---------------------- +# Whether the pull/push APIs are needed. Both can be enabled. + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + +## ----------- ## +## parse.lac. ## +## ----------- ## + +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_default([[parse.lac.es-capacity-initial]], [[20]]) +b4_percent_define_default([[parse.lac.memory-trace]], [[failures]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]], + [[[[parse.lac.memory-trace]], + [[failures]], [[full]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + + +# b4_yyerror_arg_loc_if(ARG) +# -------------------------- +# Expand ARG iff yyerror is to be given a location as argument. +m4_define([b4_yyerror_arg_loc_if], +[b4_locations_if([m4_case(b4_pure_flag, + [1], [m4_ifset([b4_parse_param], [$1])], + [2], [$1])])]) + +# b4_yyerror_formals +# ------------------ +m4_define([b4_yyerror_formals], +[b4_pure_if([b4_locations_if([, [[const ]b4_api_PREFIX[LTYPE *yyllocp], [&yylloc]]])[]dnl +m4_ifdef([b4_parse_param], [, b4_parse_param])[]dnl +,])dnl +[[const char *msg], [msg]]]) + + + +# b4_yyerror_args +# --------------- +# Arguments passed to yyerror: user args plus yylloc. +m4_define([b4_yyerror_args], +[b4_yyerror_arg_loc_if([&yylloc, ])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_accept([SYMBOL-NUM]) +# ----------------------- +# Used in actions of the rules of accept, the initial symbol, to call +# YYACCEPT. If SYMBOL-NUM is specified, run "yyvalue->SLOT = $2;" +# before, using the slot of SYMBOL-NUM. +m4_define([b4_accept], +[m4_ifval([$1], + [b4_symbol_value(yyimpl->yyvalue, [$1]) = b4_rhs_value(2, 1, [$1]); ]) YYACCEPT]) + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value(yyval, [$1], [$2])]) + + +# b4_rhs_value(RULE-LENGTH, POS, [SYMBOL-NUM], [TYPE]) +# ---------------------------------------------------- +# See README. +m4_define([b4_rhs_value], +[b4_symbol_value([yyvsp@{b4_subtract([$2], [$1])@}], [$3], [$4])]) + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +# Overparenthetized to avoid obscure problems with "foo$$bar = foo$1bar". +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +# Overparenthetized to avoid obscure problems with "foo$$bar = foo$1bar". +m4_define([b4_rhs_location], +[(yylsp@{b4_subtract([$2], [$1])@})]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + +# _b4_declare_sub_yyparse(START-SYMBOL-NUM, SWITCHING-TOKEN-SYMBOL-NUM) +# --------------------------------------------------------------------- +# Define the return type of the parsing function for SYMBOL-NUM, and +# declare its parsing function. +m4_define([_b4_declare_sub_yyparse], +[[ +// Return type when parsing one ]_b4_symbol($1, tag)[. +typedef struct +{]b4_symbol_if([$1], [has_type], [[ + ]_b4_symbol($1, type)[ yyvalue;]])[ + int yystatus; + int yynerrs; +} ]b4_prefix[parse_]_b4_symbol($1, id)[_t; + +// Parse one ]_b4_symbol($1, tag)[. +]b4_prefix[parse_]_b4_symbol($1, id)[_t ]b4_prefix[parse_]_b4_symbol($1, id)[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]]) + + +# _b4_first_switching_token +# ------------------------- +m4_define([b4_first], [$1]) +m4_define([b4_second], [$2]) +m4_define([_b4_first_switching_token], +[b4_second(b4_first(b4_start_symbols))]) + + +# _b4_define_sub_yyparse(START-SYMBOL-NUM, SWITCHING-TOKEN-SYMBOL-NUM) +# -------------------------------------------------------------------- +# Define the parsing function for START-SYMBOL-NUM. +m4_define([_b4_define_sub_yyparse], +[[ +]b4_prefix[parse_]_b4_symbol($1, id)[_t +]b4_prefix[parse_]_b4_symbol($1, id)[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + ]b4_prefix[parse_]_b4_symbol($1, id)[_t yyres; + yy_parse_impl_t yyimpl; + yyres.yystatus = yy_parse_impl (]b4_symbol($2, id)[, &yyimpl]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[);]b4_symbol_if([$1], [has_type], [[ + yyres.yyvalue = yyimpl.yyvalue.]b4_symbol($1, slot)[;]])[ + yyres.yynerrs = yyimpl.yynerrs; + return yyres; +} +]]) + + +# b4_declare_scanner_communication_variables +# ------------------------------------------ +# Declare the variables that are global, or local to YYPARSE if +# pure-parser. +m4_define([b4_declare_scanner_communication_variables], [[ +]m4_ifdef([b4_start_symbols], [], +[[/* Lookahead token kind. */ +int yychar; +]])[ +]b4_pure_if([[ +/* The semantic value of the lookahead symbol. */ +/* Default value used for initialization, for pacifying older GCCs + or non-GCC compilers. */ +YY_INITIAL_VALUE (static YYSTYPE yyval_default;) +YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);]b4_locations_if([[ + +/* Location data for the lookahead symbol. */ +static YYLTYPE yyloc_default]b4_yyloc_default[; +YYLTYPE yylloc = yyloc_default;]])], +[[/* The semantic value of the lookahead symbol. */ +YYSTYPE yylval;]b4_locations_if([[ +/* Location data for the lookahead symbol. */ +YYLTYPE yylloc]b4_yyloc_default[;]])[ +/* Number of syntax errors so far. */ +int yynerrs;]])]) + + +# b4_declare_parser_state_variables([INIT]) +# ----------------------------------------- +# Declare all the variables that are needed to maintain the parser state +# between calls to yypush_parse. +# If INIT is non-null, initialize these variables. +m4_define([b4_declare_parser_state_variables], +[b4_pure_if([[ + /* Number of syntax errors so far. */ + int yynerrs]m4_ifval([$1], [ = 0])[; +]])[ + yy_state_fast_t yystate]m4_ifval([$1], [ = 0])[; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus]m4_ifval([$1], [ = 0])[; + + /* Refer to the stacks through separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* Their size. */ + YYPTRDIFF_T yystacksize]m4_ifval([$1], [ = YYINITDEPTH])[; + + /* The state stack: array, bottom, top. */ + yy_state_t yyssa[YYINITDEPTH]; + yy_state_t *yyss]m4_ifval([$1], [ = yyssa])[; + yy_state_t *yyssp]m4_ifval([$1], [ = yyss])[; + + /* The semantic value stack: array, bottom, top. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs]m4_ifval([$1], [ = yyvsa])[; + YYSTYPE *yyvsp]m4_ifval([$1], [ = yyvs])[;]b4_locations_if([[ + + /* The location stack: array, bottom, top. */ + YYLTYPE yylsa[YYINITDEPTH]; + YYLTYPE *yyls]m4_ifval([$1], [ = yylsa])[; + YYLTYPE *yylsp]m4_ifval([$1], [ = yyls])[;]])[]b4_lac_if([[ + + yy_state_t yyesa@{]b4_percent_define_get([[parse.lac.es-capacity-initial]])[@}; + yy_state_t *yyes]m4_ifval([$1], [ = yyesa])[; + YYPTRDIFF_T yyes_capacity][]m4_ifval([$1], + [m4_do([ = b4_percent_define_get([[parse.lac.es-capacity-initial]]) < YYMAXDEPTH], + [ ? b4_percent_define_get([[parse.lac.es-capacity-initial]])], + [ : YYMAXDEPTH])])[;]])]) + + +m4_define([b4_macro_define], +[[#]define $1 $2]) + +m4_define([b4_macro_undef], +[[#]undef $1]) + +m4_define([b4_pstate_macro_define], +[b4_macro_define([$1], [yyps->$1])]) + +# b4_parse_state_variable_macros(b4_macro_define|b4_macro_undef) +# -------------------------------------------------------------- +m4_define([b4_parse_state_variable_macros], +[b4_pure_if([$1([b4_prefix[]nerrs])]) +$1([yystate]) +$1([yyerrstatus]) +$1([yyssa]) +$1([yyss]) +$1([yyssp]) +$1([yyvsa]) +$1([yyvs]) +$1([yyvsp])[]b4_locations_if([ +$1([yylsa]) +$1([yyls]) +$1([yylsp])]) +$1([yystacksize])[]b4_lac_if([ +$1([yyesa]) +$1([yyes]) +$1([yyes_capacity])])]) + + + + +# _b4_declare_yyparse_push +# ------------------------ +# Declaration of yyparse (and dependencies) when using the push parser +# (including in pull mode). +m4_define([_b4_declare_yyparse_push], +[[#ifndef YYPUSH_MORE_DEFINED +# define YYPUSH_MORE_DEFINED +enum { YYPUSH_MORE = 4 }; +#endif + +typedef struct ]b4_prefix[pstate ]b4_prefix[pstate; + +]b4_pull_if([[ +int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[);]])[ +int ]b4_prefix[push_parse (]b4_prefix[pstate *ps]b4_pure_if([[, + int pushed_char, ]b4_api_PREFIX[STYPE const *pushed_val]b4_locations_if([[, ]b4_api_PREFIX[LTYPE *pushed_loc]])])b4_user_formals[); +]b4_pull_if([[int ]b4_prefix[pull_parse (]b4_prefix[pstate *ps]b4_user_formals[);]])[ +]b4_prefix[pstate *]b4_prefix[pstate_new (void); +void ]b4_prefix[pstate_delete (]b4_prefix[pstate *ps); +]]) + + +# _b4_declare_yyparse +# ------------------- +# When not the push parser. +m4_define([_b4_declare_yyparse], +[[int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]m4_ifdef([b4_start_symbols], + [m4_map([_b4_declare_sub_yyparse], m4_defn([b4_start_symbols]))])]) + + +# b4_declare_yyparse +# ------------------ +m4_define([b4_declare_yyparse], +[b4_push_if([_b4_declare_yyparse_push], + [_b4_declare_yyparse])[]dnl +]) + + +# b4_declare_yyerror_and_yylex +# ---------------------------- +# Comply with POSIX Yacc. +# +m4_define([b4_declare_yyerror_and_yylex], +[b4_posix_if([[#if !defined ]b4_prefix[error && !defined ]b4_api_PREFIX[ERROR_IS_DECLARED +]b4_function_declare([b4_prefix[error]], void, b4_yyerror_formals)[ +#endif +#if !defined ]b4_prefix[lex && !defined ]b4_api_PREFIX[LEX_IS_DECLARED +]b4_function_declare([b4_prefix[lex]], int, b4_yylex_formals)[ +#endif +]])dnl +]) + + +# b4_shared_declarations +# ---------------------- +# Declarations that might either go into the header (if --header) +# or into the implementation file. +m4_define([b4_shared_declarations], +[b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_declare_yydebug[ +]b4_percent_code_get([[requires]])[ +]b4_token_enums_defines[ +]b4_declare_yylstype[ +]b4_declare_yyerror_and_yylex[ +]b4_declare_yyparse[ +]b4_percent_code_get([[provides]])[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[]dnl +]) + + +# b4_header_include_if(IF-TRUE, IF-FALSE) +# --------------------------------------- +# Run IF-TRUE if we generate an output file and api.header.include +# is defined. +m4_define([b4_header_include_if], +[m4_ifval(m4_quote(b4_spec_header_file), + [b4_percent_define_ifdef([[api.header.include]], + [$1], + [$2])], + [$2])]) + +m4_if(b4_spec_header_file, [y.tab.h], [], + [b4_percent_define_default([[api.header.include]], + [["@basename(]b4_spec_header_file[@)"]])]) + + + + +## -------------- ## +## Output files. ## +## -------------- ## + + +b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Bison interface for Yacc-like parsers in C])[ +]b4_disclaimer[ +]b4_shared_declarations[ +]b4_output_end[ +]])# b4_header_if + +b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Bison implementation for Yacc-like parsers in C])[ +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ + +]b4_disclaimer[ +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ + +]b4_identification[ +]b4_percent_code_get([[top]])[]dnl +m4_if(b4_api_prefix, [yy], [], +[[/* Substitute the type names. */ +#define YYSTYPE ]b4_api_PREFIX[STYPE]b4_locations_if([[ +#define YYLTYPE ]b4_api_PREFIX[LTYPE]])])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */]b4_pull_if([[ +#define yyparse ]b4_prefix[parse]])b4_push_if([[ +#define yypush_parse ]b4_prefix[push_parse]b4_pull_if([[ +#define yypull_parse ]b4_prefix[pull_parse]])[ +#define yypstate_new ]b4_prefix[pstate_new +#define yypstate_clear ]b4_prefix[pstate_clear +#define yypstate_delete ]b4_prefix[pstate_delete +#define yypstate ]b4_prefix[pstate]])[ +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug +#define yynerrs ]b4_prefix[nerrs]]b4_pure_if([], [[ +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])]))[ + +]b4_user_pre_prologue[ +]b4_cast_define[ +]b4_null_define[ + +]b4_header_include_if([[#include ]b4_percent_define_get([[api.header.include]])], + [m4_ifval(m4_quote(b4_spec_header_file), + [/* Use api.header.include to #include this header + instead of duplicating it here. */ +])b4_shared_declarations])[ +]b4_declare_symbol_enum[ + +]b4_user_post_prologue[ +]b4_percent_code_get[ +]b4_c99_int_type_define[ + +]b4_sizes_types_define[ + +/* Stored state numbers (used for stacks). */ +typedef ]b4_int_type(0, m4_eval(b4_states_number - 1))[ yy_state_t; + +/* State numbers in computations. */ +typedef int yy_state_fast_t; + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +]b4_attribute_define[ + +]b4_parse_assert_if([[#ifdef NDEBUG +# define YY_ASSERT(E) ((void) (0 && (E))) +#else +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_ASSERT(E) assert (E) +#endif +]], +[[#define YY_ASSERT(E) ((void) (0 && (E)))]])[ + +#if ]b4_lac_if([[1]], [b4_parse_error_case([simple], [[!defined yyoverflow]], [[1]])])[ + +/* The parser invokes alloca or malloc; define the necessary symbols. */]dnl +b4_push_if([], [b4_lac_if([], [[ + +# ifdef YYSTACK_USE_ALLOCA +# if YYSTACK_USE_ALLOCA +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca +# else +# define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS +# include /* INFRINGES ON USER NAME SPACE */ + /* Use EXIT_SUCCESS as a witness for stdlib.h. */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# endif +# endif +# endif]])])[ + +# ifdef YYSTACK_ALLOC + /* Pacify GCC's 'empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +# endif +# else +# define YYSTACK_ALLOC YYMALLOC +# define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) +# include /* INFRINGES ON USER NAME SPACE */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined EXIT_SUCCESS +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined EXIT_SUCCESS +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# endif]b4_lac_if([[ +# define YYCOPY_NEEDED 1]])[ +#endif /* ]b4_lac_if([[1]], [b4_parse_error_case([simple], [[!defined yyoverflow]], [[1]])])[ */ + +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (]b4_locations_if([[defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL \ + && ]])[defined ]b4_api_PREFIX[STYPE_IS_TRIVIAL && ]b4_api_PREFIX[STYPE_IS_TRIVIAL))) + +/* A type that is properly aligned for any stack member. */ +union yyalloc +{ + yy_state_t yyss_alloc; + YYSTYPE yyvs_alloc;]b4_locations_if([ + YYLTYPE yyls_alloc;])[ +}; + +/* The size of the maximum gap between one aligned stack and the next. */ +# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1) + +/* The size of an array large to enough to hold all stacks, each with + N elements. */ +]b4_locations_if( +[# define YYSTACK_BYTES(N) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE) \ + + YYSIZEOF (YYLTYPE)) \ + + 2 * YYSTACK_GAP_MAXIMUM)], +[# define YYSTACK_BYTES(N) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \ + + YYSTACK_GAP_MAXIMUM)])[ + +# define YYCOPY_NEEDED 1 + +/* Relocate STACK from its old location to the new one. The + local variables YYSIZE and YYSTACKSIZE give the old and new number of + elements in the stack, and YYPTR gives the new location of the + stack. Advance YYPTR to a properly aligned location for the next + stack. */ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ + do \ + { \ + YYPTRDIFF_T yynewbytes; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ + yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / YYSIZEOF (*yyptr); \ + } \ + while (0) + +#endif + +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from SRC to DST. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(Dst, Src, Count) \ + __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src))) +# else +# define YYCOPY(Dst, Src, Count) \ + do \ + { \ + YYPTRDIFF_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (Dst)[yyi] = (Src)[yyi]; \ + } \ + while (0) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ + +/* YYMAXUTOK -- Last valid token kind. */ +#define YYMAXUTOK ]b4_code_max[ + + +/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ +]b4_api_token_raw_if(dnl +[[#define YYTRANSLATE(YYX) YY_CAST (yysymbol_kind_t, YYX)]], +[[#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK \ + ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \ + : ]b4_symbol_prefix[YYUNDEF) + +/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM + as returned by yylex. */ +static const ]b4_int_type_for([b4_translate])[ yytranslate[] = +{ + ]b4_translate[ +};]])[ + +#if ]b4_api_PREFIX[DEBUG +]b4_integral_parser_table_define([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ +#endif + +/** Accessing symbol of state STATE. */ +#define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State]) + +#if ]b4_parse_error_case([simple], [b4_api_PREFIX[DEBUG || ]b4_token_table_flag], [[1]])[ +/* The user-facing name of the symbol whose (internal) number is + YYSYMBOL. No bounds checking. */ +static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED; + +]b4_parse_error_bmatch([simple\|verbose], +[[/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + ]b4_tname[ +}; + +static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + return yytname[yysymbol]; +}]], +[[static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ +}]])[ +#endif + +#define YYPACT_NINF (]b4_pact_ninf[) + +#define yypact_value_is_default(Yyn) \ + ]b4_table_value_equals([[pact]], [[Yyn]], [b4_pact_ninf], [YYPACT_NINF])[ + +#define YYTABLE_NINF (]b4_table_ninf[) + +#define yytable_value_is_error(Yyn) \ + ]b4_table_value_equals([[table]], [[Yyn]], [b4_table_ninf], [YYTABLE_NINF])[ + +]b4_parser_tables_define[ + +enum { YYENOMEM = -2 }; + +#define yyerrok (yyerrstatus = 0) +#define yyclearin (yychar = ]b4_symbol(empty, id)[) + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab +#define YYNOMEM goto yyexhaustedlab + + +#define YYRECOVERING() (!!yyerrstatus) + +#define YYBACKUP(Token, Value) \ + do \ + if (yychar == ]b4_symbol(empty, id)[) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (yylen); \ + yystate = *yyssp; \]b4_lac_if([[ + YY_LAC_DISCARD ("YYBACKUP"); \]])[ + goto yybackup; \ + } \ + else \ + { \ + yyerror (]b4_yyerror_args[YY_("syntax error: cannot back up")); \ + YYERROR; \ + } \ + while (0) + +/* Backward compatibility with an undocumented macro. + Use ]b4_symbol(error, id)[ or ]b4_symbol(undef, id)[. */ +#define YYERRCODE ]b4_symbol(undef, id)[ +]b4_locations_if([[ +]b4_yylloc_default_define[ +#define YYRHSLOC(Rhs, K) ((Rhs)[K]) +]])[ + +/* Enable debugging if requested. */ +#if ]b4_api_PREFIX[DEBUG + +# ifndef YYFPRINTF +# include /* INFRINGES ON USER NAME SPACE */ +# define YYFPRINTF fprintf +# endif + +# define YYDPRINTF(Args) \ +do { \ + if (yydebug) \ + YYFPRINTF Args; \ +} while (0) + +]b4_yylocation_print_define[ + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Kind, Value]b4_locations_if([, Location])[]b4_user_args[); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (0) + +]b4_yy_symbol_print_define[ + +/*------------------------------------------------------------------. +| yy_stack_print -- Print the state stack from its BOTTOM up to its | +| TOP (included). | +`------------------------------------------------------------------*/ + +static void +yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop) +{ + YYFPRINTF (stderr, "Stack now"); + for (; yybottom <= yytop; yybottom++) + { + int yybot = *yybottom; + YYFPRINTF (stderr, " %d", yybot); + } + YYFPRINTF (stderr, "\n"); +} + +# define YY_STACK_PRINT(Bottom, Top) \ +do { \ + if (yydebug) \ + yy_stack_print ((Bottom), (Top)); \ +} while (0) + + +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ + +static void +yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp,]b4_locations_if([[ YYLTYPE *yylsp,]])[ + int yyrule]b4_user_formals[) +{ + int yylno = yyrline[yyrule]; + int yynrhs = yyr2[yyrule]; + int yyi; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YYFPRINTF (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, + YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]), + &]b4_rhs_value(yynrhs, yyi + 1)[]b4_locations_if([, + &]b4_rhs_location(yynrhs, yyi + 1))[]b4_user_args[); + YYFPRINTF (stderr, "\n"); + } +} + +# define YY_REDUCE_PRINT(Rule) \ +do { \ + if (yydebug) \ + yy_reduce_print (yyssp, yyvsp, ]b4_locations_if([yylsp, ])[Rule]b4_user_args[); \ +} while (0) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; +#else /* !]b4_api_PREFIX[DEBUG */ +# define YYDPRINTF(Args) ((void) 0) +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) +# define YY_STACK_PRINT(Bottom, Top) +# define YY_REDUCE_PRINT(Rule) +#endif /* !]b4_api_PREFIX[DEBUG */ + + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif]b4_push_if([[ +/* Parser data structure. */ +struct yypstate + {]b4_declare_parser_state_variables[ + /* Whether this instance has not started parsing yet. + * If 2, it corresponds to a finished parsing. */ + int yynew; + };]b4_pure_if([], [[ + +/* Whether the only allowed instance of yypstate is allocated. */ +static char yypstate_allocated = 0;]])])[ +]b4_lac_if([[ + +/* Given a state stack such that *YYBOTTOM is its bottom, such that + *YYTOP is either its top or is YYTOP_EMPTY to indicate an empty + stack, and such that *YYCAPACITY is the maximum number of elements it + can hold without a reallocation, make sure there is enough room to + store YYADD more elements. If not, allocate a new stack using + YYSTACK_ALLOC, copy the existing elements, and adjust *YYBOTTOM, + *YYTOP, and *YYCAPACITY to reflect the new capacity and memory + location. If *YYBOTTOM != YYBOTTOM_NO_FREE, then free the old stack + using YYSTACK_FREE. Return 0 if successful or if no reallocation is + required. Return YYENOMEM if memory is exhausted. */ +static int +yy_lac_stack_realloc (YYPTRDIFF_T *yycapacity, YYPTRDIFF_T yyadd, +#if ]b4_api_PREFIX[DEBUG + char const *yydebug_prefix, + char const *yydebug_suffix, +#endif + yy_state_t **yybottom, + yy_state_t *yybottom_no_free, + yy_state_t **yytop, yy_state_t *yytop_empty) +{ + YYPTRDIFF_T yysize_old = + *yytop == yytop_empty ? 0 : *yytop - *yybottom + 1; + YYPTRDIFF_T yysize_new = yysize_old + yyadd; + if (*yycapacity < yysize_new) + { + YYPTRDIFF_T yyalloc = 2 * yysize_new; + yy_state_t *yybottom_new; + /* Use YYMAXDEPTH for maximum stack size given that the stack + should never need to grow larger than the main state stack + needs to grow without LAC. */ + if (YYMAXDEPTH < yysize_new) + { + YYDPRINTF ((stderr, "%smax size exceeded%s", yydebug_prefix, + yydebug_suffix)); + return YYENOMEM; + } + if (YYMAXDEPTH < yyalloc) + yyalloc = YYMAXDEPTH; + yybottom_new = + YY_CAST (yy_state_t *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, + yyalloc * YYSIZEOF (*yybottom_new)))); + if (!yybottom_new) + { + YYDPRINTF ((stderr, "%srealloc failed%s", yydebug_prefix, + yydebug_suffix)); + return YYENOMEM; + } + if (*yytop != yytop_empty) + { + YYCOPY (yybottom_new, *yybottom, yysize_old); + *yytop = yybottom_new + (yysize_old - 1); + } + if (*yybottom != yybottom_no_free) + YYSTACK_FREE (*yybottom); + *yybottom = yybottom_new; + *yycapacity = yyalloc;]m4_if(b4_percent_define_get([[parse.lac.memory-trace]]), + [full], [[ + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "%srealloc to %ld%s", yydebug_prefix, + YY_CAST (long, yyalloc), yydebug_suffix)); + YY_IGNORE_USELESS_CAST_END]])[ + } + return 0; +} + +/* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + YY_LAC_ESTABLISH should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). Iff there is a + lookahead token, it should also be invoked before reporting a syntax + error. This latter case is for the sake of the debugging output. + + For parse.lac=full, the implementation of YY_LAC_ESTABLISH is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. + Report a syntax error if it cannot. */ +#define YY_LAC_ESTABLISH \ +do { \ + if (!yy_lac_established) \ + { \ + YYDPRINTF ((stderr, \ + "LAC: initial context established for %s\n", \ + yysymbol_name (yytoken))); \ + yy_lac_established = 1; \ + switch (yy_lac (yyesa, &yyes, &yyes_capacity, yyssp, yytoken)) \ + { \ + case YYENOMEM: \ + YYNOMEM; \ + case 1: \ + goto yyerrlab; \ + } \ + } \ +} while (0) + +/* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ +#if ]b4_api_PREFIX[DEBUG +# define YY_LAC_DISCARD(Event) \ +do { \ + if (yy_lac_established) \ + { \ + YYDPRINTF ((stderr, "LAC: initial context discarded due to " \ + Event "\n")); \ + yy_lac_established = 0; \ + } \ +} while (0) +#else +# define YY_LAC_DISCARD(Event) yy_lac_established = 0 +#endif + +/* Given the stack whose top is *YYSSP, return 0 iff YYTOKEN can + eventually (after perhaps some reductions) be shifted, return 1 if + not, or return YYENOMEM if memory is exhausted. As preconditions and + postconditions: *YYES_CAPACITY is the allocated size of the array to + which *YYES points, and either *YYES = YYESA or *YYES points to an + array allocated with YYSTACK_ALLOC. yy_lac may overwrite the + contents of either array, alter *YYES and *YYES_CAPACITY, and free + any old *YYES other than YYESA. */ +static int +yy_lac (yy_state_t *yyesa, yy_state_t **yyes, + YYPTRDIFF_T *yyes_capacity, yy_state_t *yyssp, yysymbol_kind_t yytoken) +{ + yy_state_t *yyes_prev = yyssp; + yy_state_t *yyesp = yyes_prev; + /* Reduce until we encounter a shift and thereby accept the token. */ + YYDPRINTF ((stderr, "LAC: checking lookahead %s:", yysymbol_name (yytoken))); + if (yytoken == ]b4_symbol_prefix[YYUNDEF) + { + YYDPRINTF ((stderr, " Always Err\n")); + return 1; + } + while (1) + { + int yyrule = yypact[+*yyesp]; + if (yypact_value_is_default (yyrule) + || (yyrule += yytoken) < 0 || YYLAST < yyrule + || yycheck[yyrule] != yytoken) + { + /* Use the default action. */ + yyrule = yydefact[+*yyesp]; + if (yyrule == 0) + { + YYDPRINTF ((stderr, " Err\n")); + return 1; + } + } + else + { + /* Use the action from yytable. */ + yyrule = yytable[yyrule]; + if (yytable_value_is_error (yyrule)) + { + YYDPRINTF ((stderr, " Err\n")); + return 1; + } + if (0 < yyrule) + { + YYDPRINTF ((stderr, " S%d\n", yyrule)); + return 0; + } + yyrule = -yyrule; + } + /* By now we know we have to simulate a reduce. */ + YYDPRINTF ((stderr, " R%d", yyrule - 1)); + { + /* Pop the corresponding number of values from the stack. */ + YYPTRDIFF_T yylen = yyr2[yyrule]; + /* First pop from the LAC stack as many tokens as possible. */ + if (yyesp != yyes_prev) + { + YYPTRDIFF_T yysize = yyesp - *yyes + 1; + if (yylen < yysize) + { + yyesp -= yylen; + yylen = 0; + } + else + { + yyesp = yyes_prev; + yylen -= yysize; + } + } + /* Only afterwards look at the main stack. */ + if (yylen) + yyesp = yyes_prev -= yylen; + } + /* Push the resulting state of the reduction. */ + { + yy_state_fast_t yystate; + { + const int yylhs = yyr1[yyrule] - YYNTOKENS; + const int yyi = yypgoto[yylhs] + *yyesp; + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyesp + ? yytable[yyi] + : yydefgoto[yylhs]); + } + if (yyesp == yyes_prev) + { + yyesp = *yyes; + YY_IGNORE_USELESS_CAST_BEGIN + *yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + } + else + { + if (yy_lac_stack_realloc (yyes_capacity, 1, +#if ]b4_api_PREFIX[DEBUG + " (", ")", +#endif + yyes, yyesa, &yyesp, yyes_prev)) + { + YYDPRINTF ((stderr, "\n")); + return YYENOMEM; + } + YY_IGNORE_USELESS_CAST_BEGIN + *++yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + } + YYDPRINTF ((stderr, " G%d", yystate)); + } + } +}]])[ + +]b4_parse_error_case([simple], [], +[[/* Context of a parse error. */ +typedef struct +{]b4_push_if([[ + yypstate* yyps;]], [[ + yy_state_t *yyssp;]b4_lac_if([[ + yy_state_t *yyesa; + yy_state_t **yyes; + YYPTRDIFF_T *yyes_capacity;]])])[ + yysymbol_kind_t yytoken;]b4_locations_if([[ + YYLTYPE *yylloc;]])[ +} yypcontext_t; + +/* Put in YYARG at most YYARGN of the expected tokens given the + current YYCTX, and return the number of tokens stored in YYARG. If + YYARG is null, return the number of expected tokens (guaranteed to + be less than YYNTOKENS). Return YYENOMEM on memory exhaustion. + Return 0 if there are more than YYARGN expected tokens, yet fill + YYARG up to YYARGN. */]b4_push_if([[ +static int +yypstate_expected_tokens (yypstate *yyps, + yysymbol_kind_t yyarg[], int yyargn)]], [[ +static int +yypcontext_expected_tokens (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn)]])[ +{ + /* Actual size of YYARG. */ + int yycount = 0; +]b4_lac_if([[ + int yyx; + for (yyx = 0; yyx < YYNTOKENS; ++yyx) + { + yysymbol_kind_t yysym = YY_CAST (yysymbol_kind_t, yyx); + if (yysym != ]b4_symbol(error, kind)[ && yysym != ]b4_symbol_prefix[YYUNDEF) + switch (yy_lac (]b4_push_if([[yyps->yyesa, &yyps->yyes, &yyps->yyes_capacity, yyps->yyssp, yysym]], + [[yyctx->yyesa, yyctx->yyes, yyctx->yyes_capacity, yyctx->yyssp, yysym]])[)) + { + case YYENOMEM: + return YYENOMEM; + case 1: + continue; + default: + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], +[[ int yyn = yypact@{+*]b4_push_if([yyps], [yyctx])[->yyssp@}; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (yysymbol_kind_t, yyx); + } + }]])[ + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; +} + +]b4_push_if([[ +/* Similar to the previous function. */ +static int +yypcontext_expected_tokens (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn) +{ + return yypstate_expected_tokens (yyctx->yyps, yyarg, yyargn); +}]])[ +]])[ + +]b4_parse_error_bmatch( + [custom], +[[/* The kind of the lookahead of this context. */ +static yysymbol_kind_t +yypcontext_token (const yypcontext_t *yyctx) YY_ATTRIBUTE_UNUSED; + +static yysymbol_kind_t +yypcontext_token (const yypcontext_t *yyctx) +{ + return yyctx->yytoken; +} + +]b4_locations_if([[/* The location of the lookahead of this context. */ +static YYLTYPE * +yypcontext_location (const yypcontext_t *yyctx) YY_ATTRIBUTE_UNUSED; + +static YYLTYPE * +yypcontext_location (const yypcontext_t *yyctx) +{ + return yyctx->yylloc; +}]])[ + +/* User defined function to report a syntax error. */ +static int +yyreport_syntax_error (const yypcontext_t *yyctx]b4_user_formals[);]], + [detailed\|verbose], +[[#ifndef yystrlen +# if defined __GLIBC__ && defined _STRING_H +# define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S))) +# else +/* Return the length of YYSTR. */ +static YYPTRDIFF_T +yystrlen (const char *yystr) +{ + YYPTRDIFF_T yylen; + for (yylen = 0; yystr[yylen]; yylen++) + continue; + return yylen; +} +# endif +#endif + +#ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +static char * +yystpcpy (char *yydest, const char *yysrc) +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +#endif + +]b4_parse_error_case( + [verbose], +[[#ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYPTRDIFF_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYPTRDIFF_T yyn = 0; + char const *yyp = yystr; + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else + return yystrlen (yystr); +} +#endif +]])[ + +static int +yy_syntax_error_arguments (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn) +{ + /* Actual size of YYARG. */ + int yycount = 0; + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar.]b4_lac_if([[ + In the first two cases, it might appear that the current syntax + error should have been detected in the previous state when yy_lac + was invoked. However, at that time, there might have been a + different syntax error that discarded a different initial context + during error recovery, leaving behind the current lookahead.]], [[ + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state.]])[ + */ + if (yyctx->yytoken != ]b4_symbol(empty, kind)[) + { + int yyn;]b4_lac_if([[ + YYDPRINTF ((stderr, "Constructing syntax error message\n"));]])[ + if (yyarg) + yyarg[yycount] = yyctx->yytoken; + ++yycount; + yyn = yypcontext_expected_tokens (yyctx, + yyarg ? yyarg + 1 : yyarg, yyargn - 1); + if (yyn == YYENOMEM) + return YYENOMEM;]b4_lac_if([[ + else if (yyn == 0) + YYDPRINTF ((stderr, "No expected tokens.\n"));]])[ + else + yycount += yyn; + } + return yycount; +} + +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP.]b4_lac_if([[ In order to see if a particular token T is a + valid looakhead, invoke yy_lac (YYESA, YYES, YYES_CAPACITY, YYSSP, T).]])[ + + Return 0 if *YYMSG was successfully written. Return -1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return YYENOMEM if the + required number of bytes is too large to store]b4_lac_if([[ or if + yy_lac returned YYENOMEM]])[. */ +static int +yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg, + const yypcontext_t *yyctx) +{ + enum { YYARGS_MAX = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULLPTR; + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ + yysymbol_kind_t yyarg[YYARGS_MAX]; + /* Cumulated lengths of YYARG. */ + YYPTRDIFF_T yysize = 0; + + /* Actual size of YYARG. */ + int yycount = yy_syntax_error_arguments (yyctx, yyarg, YYARGS_MAX); + if (yycount == YYENOMEM) + return YYENOMEM; + + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: /* Avoid compiler warnings. */ + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + /* Compute error message size. Don't count the "%s"s, but reserve + room for the terminator. */ + yysize = yystrlen (yyformat) - 2 * yycount + 1; + { + int yyi; + for (yyi = 0; yyi < yycount; ++yyi) + { + YYPTRDIFF_T yysize1 + = yysize + ]b4_parse_error_case( + [verbose], [[yytnamerr (YY_NULLPTR, yytname[yyarg[yyi]])]], + [[yystrlen (yysymbol_name (yyarg[yyi]))]]);[ + if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) + yysize = yysize1; + else + return YYENOMEM; + } + } + + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return -1; + } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + {]b4_parse_error_case([verbose], [[ + yyp += yytnamerr (yyp, yytname[yyarg[yyi++]]);]], [[ + yyp = yystpcpy (yyp, yysymbol_name (yyarg[yyi++]));]])[ + yyformat += 2; + } + else + { + ++yyp; + ++yyformat; + } + } + return 0; +} +]])[ + +]b4_yydestruct_define[ + +]b4_pure_if([], [b4_declare_scanner_communication_variables])[ + +]b4_push_if([b4_pull_if([[ + +int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + yypstate *yyps = yypstate_new (); + if (!yyps) + {]b4_pure_if([b4_locations_if([[ + static YYLTYPE yyloc_default][]b4_yyloc_default[; + YYLTYPE yylloc = yyloc_default;]])[ + yyerror (]b4_yyerror_args[YY_("memory exhausted"));]], [[ + if (!yypstate_allocated) + yyerror (]b4_yyerror_args[YY_("memory exhausted"));]])[ + return 2; + } + int yystatus = yypull_parse (yyps]b4_user_args[); + yypstate_delete (yyps); + return yystatus; +} + +int +yypull_parse (yypstate *yyps]b4_user_formals[) +{ + YY_ASSERT (yyps);]b4_pure_if([b4_locations_if([[ + static YYLTYPE yyloc_default][]b4_yyloc_default[; + YYLTYPE yylloc = yyloc_default;]])])[ + int yystatus; + do { +]b4_pure_if([[ YYSTYPE yylval; + int ]])[yychar = ]b4_yylex[; + yystatus = yypush_parse (yyps]b4_pure_if([[, yychar, &yylval]b4_locations_if([[, &yylloc]])])m4_ifset([b4_parse_param], [, b4_args(b4_parse_param)])[); + } while (yystatus == YYPUSH_MORE); + return yystatus; +}]])[ + +]b4_parse_state_variable_macros([b4_pstate_macro_define])[ + +/* Initialize the parser data structure. */ +static void +yypstate_clear (yypstate *yyps) +{ + yynerrs = 0; + yystate = 0; + yyerrstatus = 0; + + yyssp = yyss; + yyvsp = yyvs;]b4_locations_if([[ + yylsp = yyls;]])[ + + /* Initialize the state stack, in case yypcontext_expected_tokens is + called before the first call to yyparse. */ + *yyssp = 0; + yyps->yynew = 1; +} + +/* Initialize the parser data structure. */ +yypstate * +yypstate_new (void) +{ + yypstate *yyps;]b4_pure_if([], [[ + if (yypstate_allocated) + return YY_NULLPTR;]])[ + yyps = YY_CAST (yypstate *, YYMALLOC (sizeof *yyps)); + if (!yyps) + return YY_NULLPTR;]b4_pure_if([], [[ + yypstate_allocated = 1;]])[ + yystacksize = YYINITDEPTH; + yyss = yyssa; + yyvs = yyvsa;]b4_locations_if([[ + yyls = yylsa;]])[]b4_lac_if([[ + yyes = yyesa; + yyes_capacity = ]b4_percent_define_get([[parse.lac.es-capacity-initial]])[; + if (YYMAXDEPTH < yyes_capacity) + yyes_capacity = YYMAXDEPTH;]])[ + yypstate_clear (yyps); + return yyps; +} + +void +yypstate_delete (yypstate *yyps) +{ + if (yyps) + { +#ifndef yyoverflow + /* If the stack was reallocated but the parse did not complete, then the + stack still needs to be freed. */ + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif]b4_lac_if([[ + if (yyes != yyesa) + YYSTACK_FREE (yyes);]])[ + YYFREE (yyps);]b4_pure_if([], [[ + yypstate_allocated = 0;]])[ + } +} +]])[ + +]b4_push_if([[ +/*---------------. +| yypush_parse. | +`---------------*/ + +int +yypush_parse (yypstate *yyps]b4_pure_if([[, + int yypushed_char, YYSTYPE const *yypushed_val]b4_locations_if([[, YYLTYPE *yypushed_loc]])])b4_user_formals[)]], +[[ +/*----------. +| yyparse. | +`----------*/ + +]m4_ifdef([b4_start_symbols], +[[// Extract data from the parser. +typedef struct +{ + YYSTYPE yyvalue; + int yynerrs; +} yy_parse_impl_t; + +// Run a full parse, using YYCHAR as switching token. +static int +yy_parse_impl (int yychar, yy_parse_impl_t *yyimpl]m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])[); + +]m4_map([_b4_define_sub_yyparse], m4_defn([b4_start_symbols]))[ + +int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + return yy_parse_impl (]b4_symbol(_b4_first_switching_token, id)[, YY_NULLPTR]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[); +} + +static int +yy_parse_impl (int yychar, yy_parse_impl_t *yyimpl]m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])[)]], +[[int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[)]])])[ +{]b4_pure_if([b4_declare_scanner_communication_variables +])b4_push_if([b4_pure_if([], [[ + int yypushed_char = yychar; + YYSTYPE yypushed_val = yylval;]b4_locations_if([[ + YYLTYPE yypushed_loc = yylloc;]]) +])], + [b4_declare_parser_state_variables([init]) +])b4_lac_if([[ + /* Whether LAC context is established. A Boolean. */ + int yy_lac_established = 0;]])[ + int yyn; + /* The return value of yyparse. */ + int yyresult; + /* Lookahead symbol kind. */ + yysymbol_kind_t yytoken = ]b4_symbol(empty, kind)[; + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc; + + /* The locations where the error started and ended. */ + YYLTYPE yyerror_range[3];]])[ + +]b4_parse_error_bmatch([detailed\|verbose], +[[ /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;]])[ + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)]b4_locations_if([, yylsp -= (N)])[) + + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0;]b4_push_if([[ + + switch (yyps->yynew) + { + case 0: + yyn = yypact[yystate]; + goto yyread_pushed_token; + + case 2: + yypstate_clear (yyps); + break; + + default: + break; + }]])[ + + YYDPRINTF ((stderr, "Starting parse\n")); + +]m4_ifdef([b4_start_symbols], [], +[[ yychar = ]b4_symbol(empty, id)[; /* Cause a token to be read. */ +]])[ +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([m4_define([b4_dollar_dollar_used])yylval], [], [], + [b4_push_if([b4_pure_if([*])yypushed_loc], [yylloc])])dnl +b4_user_initial_action +b4_dollar_popdef[]dnl +m4_ifdef([b4_dollar_dollar_used],[[ yyvsp[0] = yylval; +]])])dnl +b4_locations_if([[ yylsp[0] = ]b4_push_if([b4_pure_if([*])yypushed_loc], [yylloc])[; +]])dnl +[ goto yysetstate; + + +/*------------------------------------------------------------. +| yynewstate -- push a new state, which is found in yystate. | +`------------------------------------------------------------*/ +yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. So pushing a state here evens the stacks. */ + yyssp++; + + +/*--------------------------------------------------------------------. +| yysetstate -- set current state (the top of the stack) to yystate. | +`--------------------------------------------------------------------*/ +yysetstate: + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + YY_ASSERT (0 <= yystate && yystate < YYNSTATES); + YY_IGNORE_USELESS_CAST_BEGIN + *yyssp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + YY_STACK_PRINT (yyss, yyssp); + + if (yyss + yystacksize - 1 <= yyssp) +#if !defined yyoverflow && !defined YYSTACK_RELOCATE + YYNOMEM; +#else + { + /* Get the current used size of the three stacks, in elements. */ + YYPTRDIFF_T yysize = yyssp - yyss + 1; + +# if defined yyoverflow + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into + memory. */ + yy_state_t *yyss1 = yyss; + YYSTYPE *yyvs1 = yyvs;]b4_locations_if([ + YYLTYPE *yyls1 = yyls;])[ + + /* Each stack pointer address is followed by the size of the + data in use in that stack, in bytes. This used to be a + conditional around just the two extra args, but that might + be undefined if yyoverflow is a macro. */ + yyoverflow (YY_("memory exhausted"), + &yyss1, yysize * YYSIZEOF (*yyssp), + &yyvs1, yysize * YYSIZEOF (*yyvsp),]b4_locations_if([ + &yyls1, yysize * YYSIZEOF (*yylsp),])[ + &yystacksize); + yyss = yyss1; + yyvs = yyvs1;]b4_locations_if([ + yyls = yyls1;])[ + } +# else /* defined YYSTACK_RELOCATE */ + /* Extend the stack our own way. */ + if (YYMAXDEPTH <= yystacksize) + YYNOMEM; + yystacksize *= 2; + if (YYMAXDEPTH < yystacksize) + yystacksize = YYMAXDEPTH; + + { + yy_state_t *yyss1 = yyss; + union yyalloc *yyptr = + YY_CAST (union yyalloc *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize)))); + if (! yyptr) + YYNOMEM; + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs);]b4_locations_if([ + YYSTACK_RELOCATE (yyls_alloc, yyls);])[ +# undef YYSTACK_RELOCATE + if (yyss1 != yyssa) + YYSTACK_FREE (yyss1); + } +# endif + + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1;]b4_locations_if([ + yylsp = yyls + yysize - 1;])[ + + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "Stack size increased to %ld\n", + YY_CAST (long, yystacksize))); + YY_IGNORE_USELESS_CAST_END + + if (yyss + yystacksize - 1 <= yyssp) + YYABORT; + } +#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */ + +]m4_ifdef([b4_start_symbols], [], [[ + if (yystate == YYFINAL) + YYACCEPT;]])[ + + goto yybackup; + + +/*-----------. +| yybackup. | +`-----------*/ +yybackup: + /* Do appropriate processing given the current state. Read a + lookahead token if we need one and don't already have one. */ + + /* First try to decide what to do without reference to lookahead token. */ + yyn = yypact[yystate]; + if (yypact_value_is_default (yyn)) + goto yydefault; + + /* Not known => get a lookahead token if don't already have one. */ + + /* YYCHAR is either empty, or end-of-input, or a valid lookahead. */ + if (yychar == ]b4_symbol(empty, id)[) + {]b4_push_if([[ + if (!yyps->yynew) + {]b4_use_push_for_pull_if([], [[ + YYDPRINTF ((stderr, "Return for a new token:\n"));]])[ + yyresult = YYPUSH_MORE; + goto yypushreturn; + } + yyps->yynew = 0;]b4_pure_if([], [[ + /* Restoring the pushed token is only necessary for the first + yypush_parse invocation since subsequent invocations don't overwrite + it before jumping to yyread_pushed_token. */ + yychar = yypushed_char; + yylval = yypushed_val;]b4_locations_if([[ + yylloc = yypushed_loc;]])])[ +yyread_pushed_token:]])[ + YYDPRINTF ((stderr, "Reading a token\n"));]b4_push_if([b4_pure_if([[ + yychar = yypushed_char; + if (yypushed_val) + yylval = *yypushed_val;]b4_locations_if([[ + if (yypushed_loc) + yylloc = *yypushed_loc;]])])], [[ + yychar = ]b4_yylex[;]])[ + } + + if (yychar <= ]b4_symbol(eof, [id])[) + { + yychar = ]b4_symbol(eof, [id])[; + yytoken = ]b4_symbol(eof, [kind])[; + YYDPRINTF ((stderr, "Now at end of input.\n")); + } + else if (yychar == ]b4_symbol(error, [id])[) + { + /* The scanner already issued an error message, process directly + to error recovery. But do not keep the error token as + lookahead, it is too special and may lead us to an endless + loop in error recovery. */ + yychar = ]b4_symbol(undef, [id])[; + yytoken = ]b4_symbol(error, [kind])[;]b4_locations_if([[ + yyerror_range[1] = yylloc;]])[ + goto yyerrlab1; + } + else + { + yytoken = YYTRANSLATE (yychar); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)]b4_lac_if([[ + { + YY_LAC_ESTABLISH; + goto yydefault; + }]], [[ + goto yydefault;]])[ + yyn = yytable[yyn]; + if (yyn <= 0) + { + if (yytable_value_is_error (yyn)) + goto yyerrlab; + yyn = -yyn;]b4_lac_if([[ + YY_LAC_ESTABLISH;]])[ + goto yyreduce; + } + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; + + /* Shift the lookahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + yystate = yyn; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END]b4_locations_if([ + *++yylsp = yylloc;])[ + + /* Discard the shifted token. */ + yychar = ]b4_symbol(empty, id)[;]b4_lac_if([[ + YY_LAC_DISCARD ("shift");]])[ + goto yynewstate; + + +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + +/*-----------------------------. +| yyreduce -- do a reduction. | +`-----------------------------*/ +yyreduce: + /* yyn is the number of a rule to reduce with. */ + yylen = yyr2[yyn]; + + /* If YYLEN is nonzero, implement the default value of the action: + '$$ = $1'. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. Assigning to YYVAL + unconditionally makes the parser a bit smaller, and it avoids a + GCC warning that YYVAL may be used uninitialized. */ + yyval = yyvsp[1-yylen]; + +]b4_locations_if( +[[ /* Default location. */ + YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); + yyerror_range[1] = yyloc;]])[ + YY_REDUCE_PRINT (yyn);]b4_lac_if([[ + { + int yychar_backup = yychar; + switch (yyn) + { +]b4_user_actions[ + default: break; + } + if (yychar_backup != yychar) + YY_LAC_DISCARD ("yychar change"); + }]], [[ + switch (yyn) + { +]b4_user_actions[ + default: break; + }]])[ + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ + YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc); + + YYPOPSTACK (yylen); + yylen = 0; + + *++yyvsp = yyval;]b4_locations_if([ + *++yylsp = yyloc;])[ + + /* Now 'shift' the result of the reduction. Determine what state + that goes to, based on the state we popped back to and the rule + number reduced by. */ + { + const int yylhs = yyr1[yyn] - YYNTOKENS; + const int yyi = yypgoto[yylhs] + *yyssp; + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp + ? yytable[yyi] + : yydefgoto[yylhs]); + } + + goto yynewstate; + + +/*--------------------------------------. +| yyerrlab -- here on detecting error. | +`--------------------------------------*/ +yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + /* If not already recovering from an error, report this error. */ + if (!yyerrstatus) + { + ++yynerrs; +]b4_parse_error_case( + [custom], +[[ { + yypcontext_t yyctx + = {]b4_push_if([[yyps]], [[yyssp]b4_lac_if([[, yyesa, &yyes, &yyes_capacity]])])[, yytoken]b4_locations_if([[, &yylloc]])[};]b4_lac_if([[ + if (yychar != ]b4_symbol(empty, id)[) + YY_LAC_ESTABLISH;]])[ + if (yyreport_syntax_error (&yyctx]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[) == 2) + YYNOMEM; + }]], + [simple], +[[ yyerror (]b4_yyerror_args[YY_("syntax error"));]], +[[ { + yypcontext_t yyctx + = {]b4_push_if([[yyps]], [[yyssp]b4_lac_if([[, yyesa, &yyes, &yyes_capacity]])])[, yytoken]b4_locations_if([[, &yylloc]])[}; + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status;]b4_lac_if([[ + if (yychar != ]b4_symbol(empty, id)[) + YY_LAC_ESTABLISH;]])[ + yysyntax_error_status = yysyntax_error (&yymsg_alloc, &yymsg, &yyctx); + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == -1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = YY_CAST (char *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc))); + if (yymsg) + { + yysyntax_error_status + = yysyntax_error (&yymsg_alloc, &yymsg, &yyctx); + yymsgp = yymsg; + } + else + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = YYENOMEM; + } + } + yyerror (]b4_yyerror_args[yymsgp); + if (yysyntax_error_status == YYENOMEM) + YYNOMEM; + }]])[ + } +]b4_locations_if([[ + yyerror_range[1] = yylloc;]])[ + if (yyerrstatus == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= ]b4_symbol(eof, [id])[) + { + /* Return failure if at end of input. */ + if (yychar == ]b4_symbol(eof, [id])[) + YYABORT; + } + else + { + yydestruct ("Error: discarding", + yytoken, &yylval]b4_locations_if([, &yylloc])[]b4_user_args[); + yychar = ]b4_symbol(empty, id)[; + } + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + goto yyerrlab1; + + +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: + /* Pacify compilers when the user code never invokes YYERROR and the + label yyerrorlab therefore never appears in user code. */ + if (0) + YYERROR; + ++yynerrs; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + yystate = *yyssp; + goto yyerrlab1; + + +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ + + /* Pop stack until we find a state that shifts the error token. */ + for (;;) + { + yyn = yypact[yystate]; + if (!yypact_value_is_default (yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; + +]b4_locations_if([[ yyerror_range[1] = *yylsp;]])[ + yydestruct ("Error: popping", + YY_ACCESSING_SYMBOL (yystate), yyvsp]b4_locations_if([, yylsp])[]b4_user_args[); + YYPOPSTACK (1); + yystate = *yyssp; + YY_STACK_PRINT (yyss, yyssp); + }]b4_lac_if([[ + + /* If the stack popping above didn't lose the initial context for the + current lookahead token, the shift below will for sure. */ + YY_LAC_DISCARD ("error recovery");]])[ + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END +]b4_locations_if([[ + yyerror_range[2] = yylloc; + ++yylsp; + YYLLOC_DEFAULT (*yylsp, yyerror_range, 2);]])[ + + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp); + + yystate = yyn; + goto yynewstate; + + +/*-------------------------------------. +| yyacceptlab -- YYACCEPT comes here. | +`-------------------------------------*/ +yyacceptlab: + yyresult = 0; + goto yyreturnlab; + + +/*-----------------------------------. +| yyabortlab -- YYABORT comes here. | +`-----------------------------------*/ +yyabortlab: + yyresult = 1; + goto yyreturnlab; + + +/*-----------------------------------------------------------. +| yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here. | +`-----------------------------------------------------------*/ +yyexhaustedlab: + yyerror (]b4_yyerror_args[YY_("memory exhausted")); + yyresult = 2; + goto yyreturnlab; + + +/*----------------------------------------------------------. +| yyreturnlab -- parsing is finished, clean up and return. | +`----------------------------------------------------------*/ +yyreturnlab: + if (yychar != ]b4_symbol(empty, id)[) + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval]b4_locations_if([, &yylloc])[]b4_user_args[); + } + /* Do not reclaim the symbols of the rule whose action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + YY_ACCESSING_SYMBOL (+*yyssp), yyvsp]b4_locations_if([, yylsp])[]b4_user_args[); + YYPOPSTACK (1); + }]b4_push_if([[ + yyps->yynew = 2; + goto yypushreturn; + + +/*-------------------------. +| yypushreturn -- return. | +`-------------------------*/ +yypushreturn:]], [[ +#ifndef yyoverflow + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif]b4_lac_if([[ + if (yyes != yyesa) + YYSTACK_FREE (yyes);]])])[ +]b4_parse_error_bmatch([detailed\|verbose], +[[ if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg);]])[]m4_ifdef([b4_start_symbols], [[ + if (yyimpl) + yyimpl->yynerrs = yynerrs;]])[ + return yyresult; +} +]b4_push_if([b4_parse_state_variable_macros([b4_macro_undef])])[ +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/bison.xsl b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/bison.xsl new file mode 100644 index 0000000..989a343 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/bison.xsl @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + s + + + r + + + + + + , + + + + + 0 + + + + + + + + + + + diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2dot.xsl b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2dot.xsl new file mode 100644 index 0000000..7715d1a --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2dot.xsl @@ -0,0 +1,401 @@ + + + + + + + + + + + + + + + // Generated by GNU Bison + + . + // Report bugs to < + + >. + // Home page: < + + >. + + + + + + + + digraph " + + + + " { + node [fontname = courier, shape = box, colorscheme = paired6] + edge [fontname = courier] + + + + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + label="[ + + + + + + , + + + ]", + + + + style=solid] + + + + + + + + + 3 + + + 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + : + + + + . + + + + + + + . + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + -> " + + R + + + d + + " [ + + + + + + + + " + + R + + + d + + " [label=" + + + Acc", fillcolor=1 + + + R + + ", fillcolor= + + + + , shape=diamond, style=filled] + + + + + + + + + + dotted + + + solid + + + dashed + + + + + + + + + + + + + + + + + [label=" + State + + \n + + + + \l"] + + + + + + + + + + -> + + [style= + + + label=" + + + + " + + ] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2text.xsl b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2text.xsl new file mode 100644 index 0000000..1fc5731 --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2text.xsl @@ -0,0 +1,572 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Nonterminals useless in grammar + + + + + + + + + + + + Terminals unused in grammar + + + + + + + + + + + + + + Rules useless in grammar + + + + + + + + + + + Rules useless in parser due to conflicts + + + + + + + + + Grammar + + + + + + + + + + + + + + + + + + + + + + + + + Terminals, with rules where they appear + + + + + + Nonterminals, with rules where they appear + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + on@left: + + + + + + + + + on@right: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + State + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + : + + + + + + + + + + + + + + + + + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + + + shift, and go to state + + + + go to state + + + + + + + + + + + + + + error + ( + + ) + + + + + + + + + + + + [ + + + + accept + + + reduce using rule + + ( + + ) + + + + ] + + + + + + + + + + + + + Conflict between rule + + and token + + resolved as + + an + + + ( + + ). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2xhtml.xsl b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2xhtml.xsl new file mode 100644 index 0000000..aaa5dba --- /dev/null +++ b/_CPack_Packages/win64/ZIP/win_flex_bison-master/data/xslt/xml2xhtml.xsl @@ -0,0 +1,765 @@ + + + + + + + + + + + + + + + + <xsl:value-of select="bison-xml-report/filename"/> + <xsl:text> - GNU Bison XML Automaton Report</xsl:text> + + + + + + +

+ + + + + +

GNU Bison XML Automaton Report

+

+ input grammar: +

+ + +

Table of Contents

+ + + + + + +
+ + +

+ + Reductions +

+ + + +
+ + +

+ + Nonterminals useless in grammar +

+ + +

+ + + + + + +

+
+ + + +

+ + Terminals unused in grammar +

+ + +

+ + + + + + + +

+
+ + + +

+ + Rules useless in grammar +

+ + + +

+ + + + +

+
+ + + + + +

+ + Rules useless in parser due to conflicts +

+ +

+ + + +

+ + + + + +

+ + Grammar +

+ +

+ + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

+ + Conflicts +

+ + + + + +

+ + +

+
+ + + + + + + + + +
+ + + + + + conflicts: + + + + + + + + + + + + + + +

+ + Terminals, with rules where they appear +

+ +
    + + +
+ +
+ + +

+ + Nonterminals, with rules where they appear +

+ +
    + + +
+ + + + +
  • + + + + + + + + +
  • + +
    + + + +
  • + + + + + + +
      + + + +
    • + on left: + + + +
    • + +
      + + +
    • + on right: + + + +
    • + +
      + +
    + +
  • + +
    + + + +
    + + + + + + + + +

    + + Automaton +

    + + + +
    + + + + +

    + + + + + + State + +

    + +

    + + + + + + + + + + + + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + error + ( + + ) + + + + + + + + + + + + [ + + + + accept + + + + + + + + + ( + + ) + + + + ] + + + + + + + + + + + + + Conflict between + + + + + + + and token + + resolved as + + an + + + ( + + ). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + + + + + + diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/win_bison.exe b/_CPack_Packages/win64/ZIP/win_flex_bison-master/win_bison.exe new file mode 100644 index 0000000000000000000000000000000000000000..59f43656bb8acf15c65541209fd552c2c64dd7ba GIT binary patch literal 611840 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
    _CZc>TYuE2q4DtodD}BM zUVQj$qqyy1>fc1%?kq#xGG5dlrqQBN+HOV2Gc`q=uo@Gan89@W14a>TK{I?jPwM0f z|3fAN{+%q^)02Y^!g+oM9qYfhgf9^P^;Fy6Y#cF%jwTFK?{9$9O)35E7Dq35rDaM+ zS%RbQ;eFZfX31#Y?PONmqP?@;BailUNOFE4jCkZ;?$O!g)w)gAOW>~AM&i2!8X^Np z@TdPIyU;U1%+Dz66z9A?hWtwZMI zNW4t_p^5rVSIXYK$&?K?CH`G}sJfcL38`V6GMEvHHShv=L+{8%2-2xX6iI;$jU!y@ z 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

    HH_jW-T2 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

    S0PdzSEB7)>F{Lp%sIB)E7%<9)1udE{+H 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 J{_E2M{|6G-70dtt literal 0 HcmV?d00001 diff --git a/_CPack_Packages/win64/ZIP/win_flex_bison-master/win_flex.exe b/_CPack_Packages/win64/ZIP/win_flex_bison-master/win_flex.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb15e6ffe62420c360ee739030dd19ba2340c66e GIT binary patch literal 491008 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

      }>OnpJ%%5kr5*m}HXT%MeOl^!?rsmrt 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 literal 0 HcmV?d00001 diff --git a/bison/MinSizeRel/data/README.md b/bison/MinSizeRel/data/README.md new file mode 100644 index 0000000..09886ea --- /dev/null +++ b/bison/MinSizeRel/data/README.md @@ -0,0 +1,227 @@ +This directory contains data needed by Bison. + +# Directory Content +## Skeletons +Bison skeletons: the general shapes of the different parser kinds, that are +specialized for specific grammars by the bison program. + +Currently, the supported skeletons are: + +- yacc.c + It used to be named bison.simple: it corresponds to C Yacc + compatible LALR(1) parsers. + +- lalr1.cc + Produces a C++ parser class. + +- lalr1.java + Produces a Java parser class. + +- glr.c + A Generalized LR C parser based on Bison's LALR(1) tables. + +- glr.cc + A Generalized LR C++ parser. Actually a C++ wrapper around glr.c. + +These skeletons are the only ones supported by the Bison team. Because the +interface between skeletons and the bison program is not finished, *we are +not bound to it*. In particular, Bison is not mature enough for us to +consider that "foreign skeletons" are supported. + +## m4sugar +This directory contains M4sugar, sort of an extended library for M4, which +is used by Bison to instantiate the skeletons. + +## xslt +This directory contains XSLT programs that transform Bison's XML output into +various formats. + +- bison.xsl + A library of routines used by the other XSLT programs. + +- xml2dot.xsl + Conversion into GraphViz's dot format. + +- xml2text.xsl + Conversion into text. + +- xml2xhtml.xsl + Conversion into XHTML. + +# Implementation Notes About the Skeletons + +"Skeleton" in Bison parlance means "backend": a skeleton is fed by the bison +executable with LR tables, facts about the symbols, etc. and they generate +the output (say parser.cc, parser.hh, location.hh, etc.). They are only in +charge of generating the parser and its auxiliary files, they do not +generate the XML output, the parser.output reports, nor the graphical +rendering. + +The bits of information passing from bison to the backend is named +"muscles". Muscles are passed to M4 via its standard input: it's a set of +m4 definitions. To see them, use `--trace=muscles`. + +Except for muscles, whose names are generated by bison, the skeletons have +no constraint at all on the macro names: there is no technical/theoretical +limitation, as long as you generate the output, you can do what you want. +However, of course, that would be a bad idea if, say, the C and C++ +skeletons used different approaches and had completely different +implementations. That would be a maintenance nightmare. + +Below, we document some of the macros that we use in several of the +skeletons. If you are to write a new skeleton, please, implement them for +your language. Overall, be sure to follow the same patterns as the existing +skeletons. + +## Vocabulary + +We use "formal arguments", or "formals" for short, to denote the declared +parameters of a function (e.g., `int argc, const char **argv`). Yes, this +is somewhat contradictory with `param` in the `%param` directives. + +We use "effective arguments", or "args" for short, to denote the values +passed in function calls (e.g., `argc, argv`). + +## Symbols + +### `b4_symbol(NUM, FIELD)` +In order to unify the handling of the various aspects of symbols (tag, type +name, whether terminal, etc.), bison.exe defines one macro per (token, +field), where field can `has_id`, `id`, etc.: see +`prepare_symbol_definitions()` in `src/output.c`. + +NUM can be: +- `empty` to denote the "empty" pseudo-symbol when it exists, +- `eof`, `error`, or `undef` +- a symbol number. + +FIELD can be: + +- `has_id`: 0 or 1 + Whether the symbol has an `id`. + +- `id`: string (e.g., `exp`, `NUM`, or `TOK_NUM` with api.token.prefix) + If `has_id`, the name of the token kind (prefixed by api.token.prefix if + defined), otherwise empty. Guaranteed to be usable as a C identifier. + This is used to define the token kind (i.e., the enum used by the return + value of yylex). Should be named `token_kind`. + +- `tag`: string + A human readable representation of the symbol. Can be `'foo'`, + `'foo.id'`, `'"foo"'` etc. + +- `code`: integer + The token code associated to the token kind `id`. + The external number as used by yylex. Can be ASCII code when a character, + some number chosen by bison, or some user number in the case of `%token + FOO `. Corresponds to `yychar` in `yacc.c`. + +- `is_token`: 0 or 1 + Whether this is a terminal symbol. + +- `kind_base`: string (e.g., `YYSYMBOL_exp`, `YYSYMBOL_NUM`) + The base of the symbol kind, i.e., the enumerator of this symbol (token or + nonterminal) which is mapped to its `number`. + +- `kind`: string + Same as `kind_base`, but possibly with a prefix in some languages. E.g., + EOF's `kind_base` and `kind` are `YYSYMBOL_YYEOF` in C, but are + `S_YYEMPTY` and `symbol_kind::S_YYEMPTY` in C++. + +- `number`: integer + The code associated to the `kind`. + The internal number (computed from the external number by yytranslate). + Corresponds to yytoken in yacc.c. This is the same number that serves as + key in b4_symbol(NUM, FIELD). + + In bison, symbols are first assigned increasing numbers in order of + appearance (but tokens first, then nterms). After grammar reduction, + unused nterms are then renumbered to appear last (i.e., first tokens, then + used nterms and finally unused nterms). This final number NUM is the one + contained in this field, and it is the one used as key in `b4_symbol(NUM, + FIELD)`. + + The code of the rule actions, however, is emitted before we know what + symbols are unused, so they use the original numbers. To avoid confusion, + they actually use "orig NUM" instead of just "NUM". bison also emits + definitions for `b4_symbol(orig NUM, number)` that map from original + numbers to the new ones. `b4_symbol` actually resolves `orig NUM` in the + other case, i.e., `b4_symbol(orig 42, tag)` would return the tag of the + symbols whose original number was 42. + +- `has_type`: 0, 1 + Whether has a semantic value. + +- `type_tag`: string + When api.value.type=union, the generated name for the union member. + yytype_INT etc. for symbols that has_id, otherwise yytype_1 etc. + +- `type`: string + If it has a semantic value, its type tag, or, if variant are used, + its type. + In the case of api.value.type=union, type is the real type (e.g. int). + +- `slot`: string + If it has a semantic value, the name of the union member (i.e., bounces to + either `type_tag` or `type`). It would be better to fix our mess and + always use `type` for the true type of the member, and `type_tag` for the + name of the union member. + +- `has_printer`: 0, 1 +- `printer`: string +- `printer_file`: string +- `printer_line`: integer +- `printer_loc`: location + If the symbol has a printer, everything about it. + +- `has_destructor`, `destructor`, `destructor_file`, `destructor_line`, `destructor_loc` + Likewise. + +### `b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG])` +Expansion of $$, $1, $3, etc. + +The semantic value from a given VAL. +- `VAL`: some semantic value storage (typically a union). e.g., `yylval` +- `SYMBOL-NUM`: the symbol number from which we extract the type tag. +- `TYPE-TAG`, the user forced the ``. + +The result can be used safely, it is put in parens to avoid nasty precedence +issues. + +### `b4_lhs_value(SYMBOL-NUM, [TYPE])` +Expansion of `$$` or `$$`, for symbol `SYMBOL-NUM`. + +### `b4_rhs_data(RULE-LENGTH, POS)` +The data corresponding to the symbol `#POS`, where the current rule has +`RULE-LENGTH` symbols on RHS. + +### `b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE])` +Expansion of `$POS`, where the current rule has `RULE-LENGTH` symbols +on RHS. + + diff --git a/bison/MinSizeRel/data/bison-default.css b/bison/MinSizeRel/data/bison-default.css new file mode 100644 index 0000000..aadaba1 --- /dev/null +++ b/bison/MinSizeRel/data/bison-default.css @@ -0,0 +1,61 @@ +/* Default styling rules for Bison when doing terminal output. + Copyright (C) 2019-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* This is an experimental feature. The class names may change in the + future. */ + +/* Diagnostics. */ +.warning { color: purple; } +.error { color: red; } +.note { color: cyan; } + +.fixit-insert { color: green; } + +/* Semantic values in Bison's own parser traces. */ +.value { color: green; } + +/* "Sections" in traces (--trace). */ +.trace0 { color: green; } + +/* Syntax error messages. */ +.expected { color: green; } +.unexpected { color: red; } + + +/* Counterexamples. */ + +/* Cex: point in rule. */ +.cex-dot { color: red; } + +/* Cex: coloring various rules. */ +.cex-0 { color: yellow; } +.cex-1 { color: green; } +.cex-2 { color: blue; } +.cex-3 { color: purple; } +.cex-4 { color: violet; } +.cex-5 { color: orange; } +.cex-6 { color: brown; } +.cex-7 { color: mauve; } +.cex-8 { color: #013220; } /* Dark green. */ +.cex-9 { color: #e75480; } /* Dark pink. */ +.cex-10 { color: cyan; } +.cex-11 { color: orange; } + +/* Cex: derivation rewriting steps. */ +.cex-step { font-style: italic; } + +/* Cex: leaves of a derivation. */ +.cex-leaf { font-weight: 600; } diff --git a/bison/MinSizeRel/data/local.mk b/bison/MinSizeRel/data/local.mk new file mode 100644 index 0000000..c51d287 --- /dev/null +++ b/bison/MinSizeRel/data/local.mk @@ -0,0 +1,58 @@ +## Copyright (C) 2002, 2005-2015, 2018-2021 Free Software Foundation, +## Inc. + +## This program is free software: you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program. If not, see . + +dist_pkgdata_DATA = \ + data/README.md \ + data/bison-default.css + +skeletonsdir = $(pkgdatadir)/skeletons +dist_skeletons_DATA = \ + data/skeletons/bison.m4 \ + data/skeletons/c++-skel.m4 \ + data/skeletons/c++.m4 \ + data/skeletons/c-like.m4 \ + data/skeletons/c-skel.m4 \ + data/skeletons/c.m4 \ + data/skeletons/glr.c \ + data/skeletons/glr.cc \ + data/skeletons/glr2.cc \ + data/skeletons/java-skel.m4 \ + data/skeletons/java.m4 \ + data/skeletons/lalr1.cc \ + data/skeletons/lalr1.java \ + data/skeletons/location.cc \ + data/skeletons/stack.hh \ + data/skeletons/traceon.m4 \ + data/skeletons/variant.hh \ + data/skeletons/yacc.c + +# Experimental support for the D language. +dist_skeletons_DATA += \ + data/skeletons/d-skel.m4 \ + data/skeletons/d.m4 \ + data/skeletons/lalr1.d + +m4sugardir = $(pkgdatadir)/m4sugar +dist_m4sugar_DATA = \ + data/m4sugar/foreach.m4 \ + data/m4sugar/m4sugar.m4 + +xsltdir = $(pkgdatadir)/xslt +dist_xslt_DATA = \ + data/xslt/bison.xsl \ + data/xslt/xml2dot.xsl \ + data/xslt/xml2text.xsl \ + data/xslt/xml2xhtml.xsl diff --git a/bison/MinSizeRel/data/m4sugar/foreach.m4 b/bison/MinSizeRel/data/m4sugar/foreach.m4 new file mode 100644 index 0000000..2052d44 --- /dev/null +++ b/bison/MinSizeRel/data/m4sugar/foreach.m4 @@ -0,0 +1,362 @@ +# -*- Autoconf -*- +# This file is part of Autoconf. +# foreach-based replacements for recursive functions. +# Speeds up GNU M4 1.4.x by avoiding quadratic $@ recursion, but penalizes +# GNU M4 1.6 by requiring more memory and macro expansions. +# +# Copyright (C) 2008-2017, 2020 Free Software Foundation, Inc. + +# This file is part of Autoconf. This program is free +# software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# Under Section 7 of GPL version 3, you are granted additional +# permissions described in the Autoconf Configure Script Exception, +# version 3.0, as published by the Free Software Foundation. +# +# You should have received a copy of the GNU General Public License +# and a copy of the Autoconf Configure Script Exception along with +# this program; see the files COPYINGv3 and COPYING.EXCEPTION +# respectively. If not, see . + +# Written by Eric Blake. + +# In M4 1.4.x, every byte of $@ is rescanned. This means that an +# algorithm on n arguments that recurses with one less argument each +# iteration will scan n * (n + 1) / 2 arguments, for O(n^2) time. In +# M4 1.6, this was fixed so that $@ is only scanned once, then +# back-references are made to information stored about the scan. +# Thus, n iterations need only scan n arguments, for O(n) time. +# Additionally, in M4 1.4.x, recursive algorithms did not clean up +# memory very well, requiring O(n^2) memory rather than O(n) for n +# iterations. +# +# This file is designed to overcome the quadratic nature of $@ +# recursion by writing a variant of m4_foreach that uses m4_for rather +# than $@ recursion to operate on the list. This involves more macro +# expansions, but avoids the need to rescan a quadratic number of +# arguments, making these replacements very attractive for M4 1.4.x. +# On the other hand, in any version of M4, expanding additional macros +# costs additional time; therefore, in M4 1.6, where $@ recursion uses +# fewer macros, these replacements actually pessimize performance. +# Additionally, the use of $10 to mean the tenth argument violates +# POSIX; although all versions of m4 1.4.x support this meaning, a +# future m4 version may switch to take it as the first argument +# concatenated with a literal 0, so the implementations in this file +# are not future-proof. Thus, this file is conditionally included as +# part of m4_init(), only when it is detected that M4 probably has +# quadratic behavior (ie. it lacks the macro __m4_version__). +# +# Please keep this file in sync with m4sugar.m4. + +# _m4_foreach(PRE, POST, IGNORED, ARG...) +# --------------------------------------- +# Form the common basis of the m4_foreach and m4_map macros. For each +# ARG, expand PRE[ARG]POST[]. The IGNORED argument makes recursion +# easier, and must be supplied rather than implicit. +# +# This version minimizes the number of times that $@ is evaluated by +# using m4_for to generate a boilerplate into _m4_f then passing $@ to +# that temporary macro. Thus, the recursion is done in m4_for without +# reparsing any user input, and is not quadratic. For an idea of how +# this works, note that m4_foreach(i,[1,2],[i]) calls +# _m4_foreach([m4_define([i],],[)i],[],[1],[2]) +# which defines _m4_f: +# $1[$4]$2[]$1[$5]$2[]_m4_popdef([_m4_f]) +# then calls _m4_f([m4_define([i],],[)i],[],[1],[2]) for a net result: +# m4_define([i],[1])i[]m4_define([i],[2])i[]_m4_popdef([_m4_f]). +m4_define([_m4_foreach], +[m4_if([$#], [3], [], + [m4_pushdef([_m4_f], _m4_for([4], [$#], [1], + [$0_([1], [2],], [)])[_m4_popdef([_m4_f])])_m4_f($@)])]) + +m4_define([_m4_foreach_], +[[$$1[$$3]$$2[]]]) + +# m4_case(SWITCH, VAL1, IF-VAL1, VAL2, IF-VAL2, ..., DEFAULT) +# ----------------------------------------------------------- +# Find the first VAL that SWITCH matches, and expand the corresponding +# IF-VAL. If there are no matches, expand DEFAULT. +# +# Use m4_for to create a temporary macro in terms of a boilerplate +# m4_if with final cleanup. If $# is even, we have DEFAULT; if it is +# odd, then rounding the last $# up in the temporary macro is +# harmless. For example, both m4_case(1,2,3,4,5) and +# m4_case(1,2,3,4,5,6) result in the intermediate _m4_case being +# m4_if([$1],[$2],[$3],[$1],[$4],[$5],_m4_popdef([_m4_case])[$6]) +m4_define([m4_case], +[m4_if(m4_eval([$# <= 2]), [1], [$2], +[m4_pushdef([_$0], [m4_if(]_m4_for([2], m4_eval([($# - 1) / 2 * 2]), [2], + [_$0_(], [)])[_m4_popdef( + [_$0])]m4_dquote($m4_eval([($# + 1) & ~1]))[)])_$0($@)])]) + +m4_define([_m4_case_], +[$0_([1], [$1], m4_incr([$1]))]) + +m4_define([_m4_case__], +[[[$$1],[$$2],[$$3],]]) + +# m4_bmatch(SWITCH, RE1, VAL1, RE2, VAL2, ..., DEFAULT) +# ----------------------------------------------------- +# m4 equivalent of +# +# if (SWITCH =~ RE1) +# VAL1; +# elif (SWITCH =~ RE2) +# VAL2; +# elif ... +# ... +# else +# DEFAULT +# +# We build the temporary macro _m4_b: +# m4_define([_m4_b], _m4_defn([_m4_bmatch]))_m4_b([$1], [$2], [$3])... +# _m4_b([$1], [$m-1], [$m])_m4_b([], [], [$m+1]_m4_popdef([_m4_b])) +# then invoke m4_unquote(_m4_b($@)), for concatenation with later text. +m4_define([m4_bmatch], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [$2], + [m4_pushdef([_m4_b], [m4_define([_m4_b], + _m4_defn([_$0]))]_m4_for([3], m4_eval([($# + 1) / 2 * 2 - 1]), + [2], [_$0_(], [)])[_m4_b([], [],]m4_dquote([$]m4_eval( + [($# + 1) / 2 * 2]))[_m4_popdef([_m4_b]))])m4_unquote(_m4_b($@))])]) + +m4_define([_m4_bmatch], +[m4_if(m4_bregexp([$1], [$2]), [-1], [], [[$3]m4_define([$0])])]) + +m4_define([_m4_bmatch_], +[$0_([1], m4_decr([$1]), [$1])]) + +m4_define([_m4_bmatch__], +[[_m4_b([$$1], [$$2], [$$3])]]) + + +# m4_cond(TEST1, VAL1, IF-VAL1, TEST2, VAL2, IF-VAL2, ..., [DEFAULT]) +# ------------------------------------------------------------------- +# Similar to m4_if, except that each TEST is expanded when encountered. +# If the expansion of TESTn matches the string VALn, the result is IF-VALn. +# The result is DEFAULT if no tests passed. This macro allows +# short-circuiting of expensive tests, where it pays to arrange quick +# filter tests to run first. +# +# m4_cond already guarantees either 3*n or 3*n + 1 arguments, 1 <= n. +# We only have to speed up _m4_cond, by building the temporary _m4_c: +# m4_define([_m4_c], _m4_defn([m4_unquote]))_m4_c([m4_if(($1), [($2)], +# [[$3]m4_define([_m4_c])])])_m4_c([m4_if(($4), [($5)], +# [[$6]m4_define([_m4_c])])])..._m4_c([m4_if(($m-2), [($m-1)], +# [[$m]m4_define([_m4_c])])])_m4_c([[$m+1]]_m4_popdef([_m4_c])) +# We invoke m4_unquote(_m4_c($@)), for concatenation with later text. +m4_define([_m4_cond], +[m4_pushdef([_m4_c], [m4_define([_m4_c], + _m4_defn([m4_unquote]))]_m4_for([2], m4_eval([$# / 3 * 3 - 1]), [3], + [$0_(], [)])[_m4_c(]m4_dquote(m4_dquote( + [$]m4_eval([$# / 3 * 3 + 1])))[_m4_popdef([_m4_c]))])m4_unquote(_m4_c($@))]) + +m4_define([_m4_cond_], +[$0_(m4_decr([$1]), [$1], m4_incr([$1]))]) + +m4_define([_m4_cond__], +[[_m4_c([m4_if(($$1), [($$2)], [[$$3]m4_define([_m4_c])])])]]) + +# m4_bpatsubsts(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# m4_bpatsubsts already validated an odd number of arguments; we only +# need to speed up _m4_bpatsubsts. To avoid nesting, we build the +# temporary _m4_p: +# m4_define([_m4_p], [$1])m4_define([_m4_p], +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$2], [$3]))m4_define([_m4_p], +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$4], [$5]))m4_define([_m4_p],... +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$m-1], [$m]))m4_unquote( +# _m4_defn([_m4_p])_m4_popdef([_m4_p])) +m4_define([_m4_bpatsubsts], +[m4_pushdef([_m4_p], [m4_define([_m4_p], + ]m4_dquote([$]1)[)]_m4_for([3], [$#], [2], [$0_(], + [)])[m4_unquote(_m4_defn([_m4_p])_m4_popdef([_m4_p]))])_m4_p($@)]) + +m4_define([_m4_bpatsubsts_], +[$0_(m4_decr([$1]), [$1])]) + +m4_define([_m4_bpatsubsts__], +[[m4_define([_m4_p], +m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$$1], [$$2]))]]) + +# m4_shiftn(N, ...) +# ----------------- +# Returns ... shifted N times. Useful for recursive "varargs" constructs. +# +# m4_shiftn already validated arguments; we only need to speed up +# _m4_shiftn. If N is 3, then we build the temporary _m4_s, defined as +# ,[$5],[$6],...,[$m]_m4_popdef([_m4_s]) +# before calling m4_shift(_m4_s($@)). +m4_define([_m4_shiftn], +[m4_if(m4_incr([$1]), [$#], [], [m4_pushdef([_m4_s], + _m4_for(m4_eval([$1 + 2]), [$#], [1], + [[,]m4_dquote($], [)])[_m4_popdef([_m4_s])])m4_shift(_m4_s($@))])]) + +# m4_do(STRING, ...) +# ------------------ +# This macro invokes all its arguments (in sequence, of course). It is +# useful for making your macros more structured and readable by dropping +# unnecessary dnl's and have the macros indented properly. +# +# Here, we use the temporary macro _m4_do, defined as +# $1[]$2[]...[]$n[]_m4_popdef([_m4_do]) +m4_define([m4_do], +[m4_if([$#], [0], [], + [m4_pushdef([_$0], _m4_for([1], [$#], [1], + [$], [[[]]])[_m4_popdef([_$0])])_$0($@)])]) + +# m4_dquote_elt(ARGS) +# ------------------- +# Return ARGS as an unquoted list of double-quoted arguments. +# +# _m4_foreach to the rescue. +m4_define([m4_dquote_elt], +[m4_if([$#], [0], [], [[[$1]]_m4_foreach([,m4_dquote(], [)], $@)])]) + +# m4_reverse(ARGS) +# ---------------- +# Output ARGS in reverse order. +# +# Invoke _m4_r($@) with the temporary _m4_r built as +# [$m], [$m-1], ..., [$2], [$1]_m4_popdef([_m4_r]) +m4_define([m4_reverse], +[m4_if([$#], [0], [], [$#], [1], [[$1]], +[m4_pushdef([_m4_r], [[$$#]]_m4_for(m4_decr([$#]), [1], [-1], + [[, ]m4_dquote($], [)])[_m4_popdef([_m4_r])])_m4_r($@)])]) + + +# m4_map_args_pair(EXPRESSION, [END-EXPR = EXPRESSION], ARG...) +# ------------------------------------------------------------- +# Perform a pairwise grouping of consecutive ARGs, by expanding +# EXPRESSION([ARG1], [ARG2]). If there are an odd number of ARGs, the +# final argument is expanded with END-EXPR([ARGn]). +# +# Build the temporary macro _m4_map_args_pair, with the $2([$m+1]) +# only output if $# is odd: +# $1([$3], [$4])[]$1([$5], [$6])[]...$1([$m-1], +# [$m])[]m4_default([$2], [$1])([$m+1])[]_m4_popdef([_m4_map_args_pair]) +m4_define([m4_map_args_pair], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [m4_fatal([$0: too few arguments: $#: $1])], + [$#], [2], [], + [$#], [3], [m4_default([$2], [$1])([$3])[]], + [m4_pushdef([_$0], _m4_for([3], + m4_eval([$# / 2 * 2 - 1]), [2], [_$0_(], [)])_$0_end( + [1], [2], [$#])[_m4_popdef([_$0])])_$0($@)])]) + +m4_define([_m4_map_args_pair_], +[$0_([1], [$1], m4_incr([$1]))]) + +m4_define([_m4_map_args_pair__], +[[$$1([$$2], [$$3])[]]]) + +m4_define([_m4_map_args_pair_end], +[m4_if(m4_eval([$3 & 1]), [1], [[m4_default([$$2], [$$1])([$$3])[]]])]) + +# m4_join(SEP, ARG1, ARG2...) +# --------------------------- +# Produce ARG1SEPARG2...SEPARGn. Avoid back-to-back SEP when a given ARG +# is the empty string. No expansion is performed on SEP or ARGs. +# +# Use a self-modifying separator, since we don't know how many +# arguments might be skipped before a separator is first printed, but +# be careful if the separator contains $. _m4_foreach to the rescue. +m4_define([m4_join], +[m4_pushdef([_m4_sep], [m4_define([_m4_sep], _m4_defn([m4_echo]))])]dnl +[_m4_foreach([_$0([$1],], [)], $@)_m4_popdef([_m4_sep])]) + +m4_define([_m4_join], +[m4_if([$2], [], [], [_m4_sep([$1])[$2]])]) + +# m4_joinall(SEP, ARG1, ARG2...) +# ------------------------------ +# Produce ARG1SEPARG2...SEPARGn. An empty ARG results in back-to-back SEP. +# No expansion is performed on SEP or ARGs. +# +# A bit easier than m4_join. _m4_foreach to the rescue. +m4_define([m4_joinall], +[[$2]m4_if(m4_eval([$# <= 2]), [1], [], + [_m4_foreach([$1], [], m4_shift($@))])]) + +# m4_list_cmp(A, B) +# ----------------- +# Compare the two lists of integer expressions A and B. +# +# m4_list_cmp takes care of any side effects; we only override +# _m4_list_cmp_raw, where we can safely expand lists multiple times. +# First, insert padding so that both lists are the same length; the +# trailing +0 is necessary to handle a missing list. Next, create a +# temporary macro to perform pairwise comparisons until an inequality +# is found. For example, m4_list_cmp([1], [1,2]) creates _m4_cmp as +# m4_if(m4_eval([($1) != ($3)]), [1], [m4_cmp([$1], [$3])], +# m4_eval([($2) != ($4)]), [1], [m4_cmp([$2], [$4])], +# [0]_m4_popdef([_m4_cmp])) +# then calls _m4_cmp([1+0], [0*2], [1], [2+0]) +m4_define([_m4_list_cmp_raw], +[m4_if([$1], [$2], 0, + [_m4_list_cmp($1+0_m4_list_pad(m4_count($1), m4_count($2)), + $2+0_m4_list_pad(m4_count($2), m4_count($1)))])]) + +m4_define([_m4_list_pad], +[m4_if(m4_eval($1 < $2), [1], + [_m4_for(m4_incr([$1]), [$2], [1], [,0*])])]) + +m4_define([_m4_list_cmp], +[m4_pushdef([_m4_cmp], [m4_if(]_m4_for( + [1], m4_eval([$# >> 1]), [1], [$0_(], [,]m4_eval([$# >> 1])[)])[ + [0]_m4_popdef([_m4_cmp]))])_m4_cmp($@)]) + +m4_define([_m4_list_cmp_], +[$0_([$1], m4_eval([$1 + $2]))]) + +m4_define([_m4_list_cmp__], +[[m4_eval([($$1) != ($$2)]), [1], [m4_cmp([$$1], [$$2])], +]]) + +# m4_max(EXPR, ...) +# m4_min(EXPR, ...) +# ----------------- +# Return the decimal value of the maximum (or minimum) in a series of +# integer expressions. +# +# _m4_foreach to the rescue; we only need to replace _m4_minmax. Here, +# we need a temporary macro to track the best answer so far, so that +# the foreach expression is tractable. +m4_define([_m4_minmax], +[m4_pushdef([_m4_best], m4_eval([$2]))_m4_foreach( + [m4_define([_m4_best], $1(_m4_best,], [))], m4_shift($@))]dnl +[_m4_best[]_m4_popdef([_m4_best])]) + +# m4_set_add_all(SET, VALUE...) +# ----------------------------- +# Add each VALUE into SET. This is O(n) in the number of VALUEs, and +# can be faster than calling m4_set_add for each VALUE. +# +# _m4_foreach to the rescue. If no deletions have occurred, then +# avoid the speed penalty of m4_set_add. +m4_define([m4_set_add_all], +[m4_if([$#], [0], [], [$#], [1], [], + [m4_define([_m4_set_size($1)], m4_eval(m4_set_size([$1]) + + m4_len(_m4_foreach(m4_ifdef([_m4_set_cleanup($1)], + [[m4_set_add]], [[_$0]])[([$1],], [)], $@))))])]) + +m4_define([_m4_set_add_all], +[m4_ifdef([_m4_set([$1],$2)], [], + [m4_define([_m4_set([$1],$2)], + [1])m4_pushdef([_m4_set([$1])], [$2])-])]) diff --git a/bison/MinSizeRel/data/m4sugar/m4sugar.m4 b/bison/MinSizeRel/data/m4sugar/m4sugar.m4 new file mode 100644 index 0000000..b42fc1a --- /dev/null +++ b/bison/MinSizeRel/data/m4sugar/m4sugar.m4 @@ -0,0 +1,3329 @@ +divert(-1)# -*- Autoconf -*- +# This file is part of Autoconf. +# Base M4 layer. +# Requires GNU M4. +# +# Copyright (C) 1999-2017, 2020 Free Software Foundation, Inc. + +# This file is part of Autoconf. This program is free +# software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# Under Section 7 of GPL version 3, you are granted additional +# permissions described in the Autoconf Configure Script Exception, +# version 3.0, as published by the Free Software Foundation. +# +# You should have received a copy of the GNU General Public License +# and a copy of the Autoconf Configure Script Exception along with +# this program; see the files COPYINGv3 and COPYING.EXCEPTION +# respectively. If not, see . + +# Written by Akim Demaille. + +# Set the quotes, whatever the current quoting system. +changequote() +changequote([, ]) + +# Some old m4's don't support m4exit. But they provide +# equivalent functionality by core dumping because of the +# long macros we define. +ifdef([__gnu__], , +[errprint(M4sugar requires GNU M4. Install it before installing M4sugar or +set the M4 environment variable to its absolute file name.) +m4exit(2)]) + + +## ------------------------------- ## +## 1. Simulate --prefix-builtins. ## +## ------------------------------- ## + +# m4_define +# m4_defn +# m4_undefine +define([m4_define], defn([define])) +define([m4_defn], defn([defn])) +define([m4_undefine], defn([undefine])) + +m4_undefine([define]) +m4_undefine([defn]) +m4_undefine([undefine]) + + +# m4_copy(SRC, DST) +# ----------------- +# Define DST as the definition of SRC. +# What's the difference between: +# 1. m4_copy([from], [to]) +# 2. m4_define([to], [from($@)]) +# Well, obviously 1 is more expensive in space. Maybe 2 is more expensive +# in time, but because of the space cost of 1, it's not that obvious. +# Nevertheless, one huge difference is the handling of `$0'. If `from' +# uses `$0', then with 1, `to''s `$0' is `to', while it is `from' in 2. +# The user would certainly prefer to see `to'. +# +# This definition is in effect during m4sugar initialization, when +# there are no pushdef stacks; later on, we redefine it to something +# more powerful for all other clients to use. +m4_define([m4_copy], +[m4_define([$2], m4_defn([$1]))]) + + +# m4_rename(SRC, DST) +# ------------------- +# Rename the macro SRC to DST. +m4_define([m4_rename], +[m4_copy([$1], [$2])m4_undefine([$1])]) + + +# m4_rename_m4(MACRO-NAME) +# ------------------------ +# Rename MACRO-NAME to m4_MACRO-NAME. +m4_define([m4_rename_m4], +[m4_rename([$1], [m4_$1])]) + + +# m4_copy_unm4(m4_MACRO-NAME) +# --------------------------- +# Copy m4_MACRO-NAME to MACRO-NAME. +m4_define([m4_copy_unm4], +[m4_copy([$1], m4_bpatsubst([$1], [^m4_\(.*\)], [[\1]]))]) + + +# Some m4 internals have names colliding with tokens we might use. +# Rename them a` la `m4 --prefix-builtins'. Conditionals first, since +# some subsequent renames are conditional. +m4_rename_m4([ifdef]) +m4_rename([ifelse], [m4_if]) + +m4_rename_m4([builtin]) +m4_rename_m4([changecom]) +m4_rename_m4([changequote]) +m4_ifdef([changeword],dnl conditionally available in 1.4.x +[m4_undefine([changeword])]) +m4_rename_m4([debugfile]) +m4_rename_m4([debugmode]) +m4_rename_m4([decr]) +m4_rename_m4([divnum]) +m4_rename_m4([dumpdef]) +m4_rename_m4([errprint]) +m4_rename_m4([esyscmd]) +m4_rename_m4([eval]) +m4_rename_m4([format]) +m4_undefine([include]) +m4_rename_m4([incr]) +m4_rename_m4([index]) +m4_rename_m4([indir]) +m4_rename_m4([len]) +m4_rename([m4exit], [m4_exit]) +m4_undefine([m4wrap]) +m4_ifdef([mkstemp],dnl added in M4 1.4.8 +[m4_rename_m4([mkstemp]) +m4_copy([m4_mkstemp], [m4_maketemp]) +m4_undefine([maketemp])], +[m4_rename_m4([maketemp]) +m4_copy([m4_maketemp], [m4_mkstemp])]) +m4_rename([patsubst], [m4_bpatsubst]) +m4_rename_m4([popdef]) +m4_rename_m4([pushdef]) +m4_rename([regexp], [m4_bregexp]) +m4_rename_m4([shift]) +m4_undefine([sinclude]) +m4_rename_m4([substr]) +m4_ifdef([symbols],dnl present only in alpha-quality 1.4o +[m4_rename_m4([symbols])]) +m4_rename_m4([syscmd]) +m4_rename_m4([sysval]) +m4_rename_m4([traceoff]) +m4_rename_m4([traceon]) +m4_rename_m4([translit]) + +# _m4_defn(ARG) +# ------------- +# _m4_defn is for internal use only - it bypasses the wrapper, so it +# must only be used on one argument at a time, and only on macros +# known to be defined. Make sure this still works if the user renames +# m4_defn but not _m4_defn. +m4_copy([m4_defn], [_m4_defn]) + +# _m4_divert_raw(NUM) +# ------------------- +# _m4_divert_raw is for internal use only. Use this instead of +# m4_builtin([divert], NUM), so that tracing diversion flow is easier. +m4_rename([divert], [_m4_divert_raw]) + +# _m4_popdef(ARG...) +# ------------------ +# _m4_popdef is for internal use only - it bypasses the wrapper, so it +# must only be used on macros known to be defined. Make sure this +# still works if the user renames m4_popdef but not _m4_popdef. +m4_copy([m4_popdef], [_m4_popdef]) + +# _m4_undefine(ARG...) +# -------------------- +# _m4_undefine is for internal use only - it bypasses the wrapper, so +# it must only be used on macros known to be defined. Make sure this +# still works if the user renames m4_undefine but not _m4_undefine. +m4_copy([m4_undefine], [_m4_undefine]) + +# _m4_undivert(NUM...) +# -------------------- +# _m4_undivert is for internal use only, and should always be given +# arguments. Use this instead of m4_builtin([undivert], NUM...), so +# that tracing diversion flow is easier. +m4_rename([undivert], [_m4_undivert]) + + +## ------------------- ## +## 2. Error messages. ## +## ------------------- ## + + +# m4_location +# ----------- +# Output the current file, colon, and the current line number. +m4_define([m4_location], +[__file__:__line__]) + + +# m4_errprintn(MSG) +# ----------------- +# Same as `errprint', but with the missing end of line. +m4_define([m4_errprintn], +[m4_errprint([$1 +])]) + + +# m4_warning(MSG) +# --------------- +# Warn the user. +m4_define([m4_warning], +[m4_errprintn(m4_location[: warning: $1])]) + + +# m4_fatal(MSG, [EXIT-STATUS]) +# ---------------------------- +# Fatal the user. :) +m4_define([m4_fatal], +[m4_errprintn(m4_location[: error: $1] +m4_expansion_stack)m4_exit(m4_if([$2],, 1, [$2]))]) + + +# m4_assert(EXPRESSION, [EXIT-STATUS = 1]) +# ---------------------------------------- +# This macro ensures that EXPRESSION evaluates to true, and exits if +# EXPRESSION evaluates to false. +m4_define([m4_assert], +[m4_if(m4_eval([$1]), 0, + [m4_fatal([assert failed: $1], [$2])])]) + + + +## ------------- ## +## 3. Warnings. ## +## ------------- ## + + +# _m4_warn(CATEGORY, MESSAGE, [STACK-TRACE]) +# ------------------------------------------ +# Report a MESSAGE to the user if the CATEGORY of warnings is enabled. +# This is for traces only. +# If present, STACK-TRACE is a \n-separated list of "LOCATION: MESSAGE", +# where the last line (and no other) ends with "the top level". +# +# Within m4, the macro is a no-op. This macro really matters +# when autom4te post-processes the trace output. +m4_define([_m4_warn], []) + + +# m4_warn(CATEGORY, MESSAGE) +# -------------------------- +# Report a MESSAGE to the user if the CATEGORY of warnings is enabled. +m4_define([m4_warn], +[_m4_warn([$1], [$2], +m4_ifdef([_m4_expansion_stack], [m4_expansion_stack]))]) + + + +## ------------------- ## +## 4. File inclusion. ## +## ------------------- ## + + +# We also want to neutralize include (and sinclude for symmetry), +# but we want to extend them slightly: warn when a file is included +# several times. This is, in general, a dangerous operation, because +# too many people forget to quote the first argument of m4_define. +# +# For instance in the following case: +# m4_define(foo, [bar]) +# then a second reading will turn into +# m4_define(bar, [bar]) +# which is certainly not what was meant. + +# m4_include_unique(FILE) +# ----------------------- +# Declare that the FILE was loading; and warn if it has already +# been included. +m4_define([m4_include_unique], +[m4_ifdef([m4_include($1)], + [m4_warn([syntax], [file `$1' included several times])])dnl +m4_define([m4_include($1)])]) + + +# m4_include(FILE) +# ---------------- +# Like the builtin include, but warns against multiple inclusions. +m4_define([m4_include], +[m4_include_unique([$1])dnl +m4_builtin([include], [$1])]) + + +# m4_sinclude(FILE) +# ----------------- +# Like the builtin sinclude, but warns against multiple inclusions. +m4_define([m4_sinclude], +[m4_include_unique([$1])dnl +m4_builtin([sinclude], [$1])]) + + + +## ------------------------------------ ## +## 5. Additional branching constructs. ## +## ------------------------------------ ## + +# Both `m4_ifval' and `m4_ifset' tests against the empty string. The +# difference is that `m4_ifset' is specialized on macros. +# +# In case of arguments of macros, eg. $1, it makes little difference. +# In the case of a macro `FOO', you don't want to check `m4_ifval(FOO, +# TRUE)', because if `FOO' expands with commas, there is a shifting of +# the arguments. So you want to run `m4_ifval([FOO])', but then you just +# compare the *string* `FOO' against `', which, of course fails. +# +# So you want the variation `m4_ifset' that expects a macro name as $1. +# If this macro is both defined and defined to a non empty value, then +# it runs TRUE, etc. + + +# m4_ifblank(COND, [IF-BLANK], [IF-TEXT]) +# m4_ifnblank(COND, [IF-TEXT], [IF-BLANK]) +# ---------------------------------------- +# If COND is empty, or consists only of blanks (space, tab, newline), +# then expand IF-BLANK, otherwise expand IF-TEXT. This differs from +# m4_ifval only if COND has just whitespace, but it helps optimize in +# spite of users who mistakenly leave trailing space after what they +# thought was an empty argument: +# macro( +# [] +# ) +# +# Writing one macro in terms of the other causes extra overhead, so +# we inline both definitions. +m4_define([m4_ifblank], +[m4_if(m4_translit([[$1]], [ ][ ][ +]), [], [$2], [$3])]) + +m4_define([m4_ifnblank], +[m4_if(m4_translit([[$1]], [ ][ ][ +]), [], [$3], [$2])]) + + +# m4_ifval(COND, [IF-TRUE], [IF-FALSE]) +# ------------------------------------- +# If COND is not the empty string, expand IF-TRUE, otherwise IF-FALSE. +# Comparable to m4_ifdef. +m4_define([m4_ifval], +[m4_if([$1], [], [$3], [$2])]) + + +# m4_n(TEXT) +# ---------- +# If TEXT is not empty, return TEXT and a new line, otherwise nothing. +m4_define([m4_n], +[m4_if([$1], + [], [], + [$1 +])]) + + +# m4_ifvaln(COND, [IF-TRUE], [IF-FALSE]) +# -------------------------------------- +# Same as `m4_ifval', but add an extra newline to IF-TRUE or IF-FALSE +# unless that argument is empty. +m4_define([m4_ifvaln], +[m4_if([$1], + [], [m4_n([$3])], + [m4_n([$2])])]) + + +# m4_ifset(MACRO, [IF-TRUE], [IF-FALSE]) +# -------------------------------------- +# If MACRO has no definition, or of its definition is the empty string, +# expand IF-FALSE, otherwise IF-TRUE. +m4_define([m4_ifset], +[m4_ifdef([$1], + [m4_ifval(_m4_defn([$1]), [$2], [$3])], + [$3])]) + + +# m4_ifndef(NAME, [IF-NOT-DEFINED], [IF-DEFINED]) +# ----------------------------------------------- +m4_define([m4_ifndef], +[m4_ifdef([$1], [$3], [$2])]) + + +# m4_case(SWITCH, VAL1, IF-VAL1, VAL2, IF-VAL2, ..., DEFAULT) +# ----------------------------------------------------------- +# m4 equivalent of +# switch (SWITCH) +# { +# case VAL1: +# IF-VAL1; +# break; +# case VAL2: +# IF-VAL2; +# break; +# ... +# default: +# DEFAULT; +# break; +# }. +# All the values are optional, and the macro is robust to active +# symbols properly quoted. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_case], +[m4_if([$#], 0, [], + [$#], 1, [], + [$#], 2, [$2], + [$1], [$2], [$3], + [$0([$1], m4_shift3($@))])]) + + +# m4_bmatch(SWITCH, RE1, VAL1, RE2, VAL2, ..., DEFAULT) +# ----------------------------------------------------- +# m4 equivalent of +# +# if (SWITCH =~ RE1) +# VAL1; +# elif (SWITCH =~ RE2) +# VAL2; +# elif ... +# ... +# else +# DEFAULT +# +# All the values are optional, and the macro is robust to active symbols +# properly quoted. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_bmatch], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [$2], + [m4_if(m4_bregexp([$1], [$2]), -1, [$0([$1], m4_shift3($@))], + [$3])])]) + +# m4_argn(N, ARGS...) +# ------------------- +# Extract argument N (greater than 0) from ARGS. Example: +# m4_define([b], [B]) +# m4_argn([2], [a], [b], [c]) => b +# +# Rather than using m4_car(m4_shiftn([$1], $@)), we exploit the fact that +# GNU m4 can directly reference any argument, through an indirect macro. +m4_define([m4_argn], +[m4_assert([0 < $1])]dnl +[m4_pushdef([_$0], [_m4_popdef([_$0])]m4_dquote([$]m4_incr([$1])))_$0($@)]) + + +# m4_car(ARGS...) +# m4_cdr(ARGS...) +# --------------- +# Manipulate m4 lists. m4_car returns the first argument. m4_cdr +# bundles all but the first argument into a quoted list. These two +# macros are generally used with list arguments, with quoting removed +# to break the list into multiple m4 ARGS. +m4_define([m4_car], [[$1]]) +m4_define([m4_cdr], +[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], + [$#], 1, [], + [m4_dquote(m4_shift($@))])]) + +# _m4_cdr(ARGS...) +# ---------------- +# Like m4_cdr, except include a leading comma unless only one argument +# remains. Why? Because comparing a large list against [] is more +# expensive in expansion time than comparing the number of arguments; so +# _m4_cdr can be used to reduce the number of arguments when it is time +# to end recursion. +m4_define([_m4_cdr], +[m4_if([$#], 1, [], + [, m4_dquote(m4_shift($@))])]) + + + +# m4_cond(TEST1, VAL1, IF-VAL1, TEST2, VAL2, IF-VAL2, ..., [DEFAULT]) +# ------------------------------------------------------------------- +# Similar to m4_if, except that each TEST is expanded when encountered. +# If the expansion of TESTn matches the string VALn, the result is IF-VALn. +# The result is DEFAULT if no tests passed. This macro allows +# short-circuiting of expensive tests, where it pays to arrange quick +# filter tests to run first. +# +# For an example, consider a previous implementation of _AS_QUOTE_IFELSE: +# +# m4_if(m4_index([$1], [\]), [-1], [$2], +# m4_eval(m4_index([$1], [\\]) >= 0), [1], [$2], +# m4_eval(m4_index([$1], [\$]) >= 0), [1], [$2], +# m4_eval(m4_index([$1], [\`]) >= 0), [1], [$3], +# m4_eval(m4_index([$1], [\"]) >= 0), [1], [$3], +# [$2]) +# +# Here, m4_index is computed 5 times, and m4_eval 4, even if $1 contains +# no backslash. It is more efficient to do: +# +# m4_cond([m4_index([$1], [\])], [-1], [$2], +# [m4_eval(m4_index([$1], [\\]) >= 0)], [1], [$2], +# [m4_eval(m4_index([$1], [\$]) >= 0)], [1], [$2], +# [m4_eval(m4_index([$1], [\`]) >= 0)], [1], [$3], +# [m4_eval(m4_index([$1], [\"]) >= 0)], [1], [$3], +# [$2]) +# +# In the common case of $1 with no backslash, only one m4_index expansion +# occurs, and m4_eval is avoided altogether. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_cond], +[m4_if([$#], [0], [m4_fatal([$0: cannot be called without arguments])], + [$#], [1], [$1], + m4_eval([$# % 3]), [2], [m4_fatal([$0: missing an argument])], + [_$0($@)])]) + +m4_define([_m4_cond], +[m4_if(($1), [($2)], [$3], + [$#], [3], [], + [$#], [4], [$4], + [$0(m4_shift3($@))])]) + + +## ---------------------------------------- ## +## 6. Enhanced version of some primitives. ## +## ---------------------------------------- ## + +# m4_bpatsubsts(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# All the values are optional, and the macro is robust to active symbols +# properly quoted. +# +# I would have liked to name this macro `m4_bpatsubst', unfortunately, +# due to quotation problems, I need to double quote $1 below, therefore +# the anchors are broken :( I can't let users be trapped by that. +# +# Recall that m4_shift3 always results in an argument. Hence, we need +# to distinguish between a final deletion vs. ending recursion. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_bpatsubsts], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [m4_unquote(m4_builtin([patsubst], [[$1]], [$2]))], + [$#], 3, [m4_unquote(m4_builtin([patsubst], [[$1]], [$2], [$3]))], + [_$0($@m4_if(m4_eval($# & 1), 0, [,]))])]) +m4_define([_m4_bpatsubsts], +[m4_if([$#], 2, [$1], + [$0(m4_builtin([patsubst], [[$1]], [$2], [$3]), + m4_shift3($@))])]) + + +# m4_copy(SRC, DST) +# ----------------- +# Define the pushdef stack DST as a copy of the pushdef stack SRC; +# give an error if DST is already defined. This is particularly nice +# for copying self-modifying pushdef stacks, where the top definition +# includes one-shot initialization that is later popped to the normal +# definition. This version intentionally does nothing if SRC is +# undefined. +# +# Some macros simply can't be renamed with this method: namely, anything +# involved in the implementation of m4_stack_foreach_sep. +m4_define([m4_copy], +[m4_ifdef([$2], [m4_fatal([$0: won't overwrite defined macro: $2])], + [m4_stack_foreach_sep([$1], [m4_pushdef([$2],], [)])])]dnl +[m4_ifdef([m4_location($1)], [m4_define([m4_location($2)], m4_location)])]) + + +# m4_copy_force(SRC, DST) +# m4_rename_force(SRC, DST) +# ------------------------- +# Like m4_copy/m4_rename, except blindly overwrite any existing DST. +# Note that m4_copy_force tolerates undefined SRC, while m4_rename_force +# does not. +m4_define([m4_copy_force], +[m4_ifdef([$2], [_m4_undefine([$2])])m4_copy($@)]) + +m4_define([m4_rename_force], +[m4_ifdef([$2], [_m4_undefine([$2])])m4_rename($@)]) + + +# m4_define_default(MACRO, VALUE) +# ------------------------------- +# If MACRO is undefined, set it to VALUE. +m4_define([m4_define_default], +[m4_ifndef([$1], [m4_define($@)])]) + + +# m4_default(EXP1, EXP2) +# m4_default_nblank(EXP1, EXP2) +# ----------------------------- +# Returns EXP1 if not empty/blank, otherwise EXP2. Expand the result. +# +# m4_default is called on hot paths, so inline the contents of m4_ifval, +# for one less round of expansion. +m4_define([m4_default], +[m4_if([$1], [], [$2], [$1])]) + +m4_define([m4_default_nblank], +[m4_ifblank([$1], [$2], [$1])]) + + +# m4_default_quoted(EXP1, EXP2) +# m4_default_nblank_quoted(EXP1, EXP2) +# ------------------------------------ +# Returns EXP1 if non empty/blank, otherwise EXP2. Leave the result quoted. +# +# For comparison: +# m4_define([active], [ACTIVE]) +# m4_default([active], [default]) => ACTIVE +# m4_default([], [active]) => ACTIVE +# -m4_default([ ], [active])- => - - +# -m4_default_nblank([ ], [active])- => -ACTIVE- +# m4_default_quoted([active], [default]) => active +# m4_default_quoted([], [active]) => active +# -m4_default_quoted([ ], [active])- => - - +# -m4_default_nblank_quoted([ ], [active])- => -active- +# +# m4_default macro is called on hot paths, so inline the contents of m4_ifval, +# for one less round of expansion. +m4_define([m4_default_quoted], +[m4_if([$1], [], [[$2]], [[$1]])]) + +m4_define([m4_default_nblank_quoted], +[m4_ifblank([$1], [[$2]], [[$1]])]) + + +# m4_defn(NAME) +# ------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). This replacement is not a full-featured +# replacement: if any of the defined macros contain unbalanced quoting, but +# when pasted together result in a well-quoted string, then only native m4 +# support is able to get it correct. But that's where quadrigraphs come in +# handy, if you really need unbalanced quotes inside your macros. +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_defn], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_defn([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + + +# m4_dumpdef(NAME...) +# ------------------- +# In m4 1.4.x, dumpdef writes to the current debugfile, rather than +# stderr. This in turn royally confuses autom4te; so we follow the +# lead of newer m4 and always dump to stderr. Unlike the original, +# this version requires an argument, since there is no convenient way +# in m4 1.4.x to grab the names of all defined macros. Newer m4 +# always dumps to stderr, regardless of the current debugfile; it also +# provides m4symbols as a way to grab all current macro names. But +# dumpdefs is not frequently called, so we don't need to worry about +# conditionally using these newer features. Also, this version +# doesn't sort multiple arguments. +# +# If we detect m4 1.6 or newer, then provide an alternate definition, +# installed during m4_init, that allows builtins through. +# Unfortunately, there is no nice way in m4 1.4.x to dump builtins. +m4_define([m4_dumpdef], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_ifdef([$1], [m4_errprintn( + [$1: ]m4_dquote(_m4_defn([$1])))], [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + +m4_define([_m4_dumpdef], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_builtin([dumpdef], [$1])], + [m4_map_args_sep([m4_builtin([dumpdef],], [)], [], $@)])]) + + +# m4_dumpdefs(NAME...) +# -------------------- +# Similar to `m4_dumpdef(NAME)', but if NAME was m4_pushdef'ed, display its +# value stack (most recent displayed first). Also, this version silently +# ignores undefined macros, rather than erroring out. +# +# This macro cheats, because it relies on the current definition of NAME +# while the second argument of m4_stack_foreach_lifo is evaluated (which +# would be undefined according to the API). +m4_define([m4_dumpdefs], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_stack_foreach_lifo([$1], [m4_dumpdef([$1])m4_ignore])], + [m4_map_args([$0], $@)])]) + +# m4_esyscmd_s(COMMAND) +# --------------------- +# Like m4_esyscmd, except strip any trailing newlines, thus behaving +# more like shell command substitution. +m4_define([m4_esyscmd_s], +[m4_chomp_all(m4_esyscmd([$1]))]) + + +# m4_popdef(NAME) +# --------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_popdef], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_popdef([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + + +# m4_shiftn(N, ...) +# ----------------- +# Returns ... shifted N times. Useful for recursive "varargs" constructs. +# +# Autoconf does not use this macro, because it is inherently slower than +# calling the common cases of m4_shift2 or m4_shift3 directly. But it +# might as well be fast for other clients, such as Libtool. One way to +# do this is to expand $@ only once in _m4_shiftn (otherwise, for long +# lists, the expansion of m4_if takes twice as much memory as what the +# list itself occupies, only to throw away the unused branch). The end +# result is strictly equivalent to +# m4_if([$1], 1, [m4_shift(,m4_shift(m4_shift($@)))], +# [_m4_shiftn(m4_decr([$1]), m4_shift(m4_shift($@)))]) +# but with the final `m4_shift(m4_shift($@)))' shared between the two +# paths. The first leg uses a no-op m4_shift(,$@) to balance out the (). +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_shiftn], +[m4_assert(0 < $1 && $1 < $#)_$0($@)]) + +m4_define([_m4_shiftn], +[m4_if([$1], 1, [m4_shift(], + [$0(m4_decr([$1])]), m4_shift(m4_shift($@)))]) + +# m4_shift2(...) +# m4_shift3(...) +# -------------- +# Returns ... shifted twice, and three times. Faster than m4_shiftn. +m4_define([m4_shift2], [m4_shift(m4_shift($@))]) +m4_define([m4_shift3], [m4_shift(m4_shift(m4_shift($@)))]) + +# _m4_shift2(...) +# _m4_shift3(...) +# --------------- +# Like m4_shift2 or m4_shift3, except include a leading comma unless shifting +# consumes all arguments. Why? Because in recursion, it is nice to +# distinguish between 1 element left and 0 elements left, based on how many +# arguments this shift expands to. +m4_define([_m4_shift2], +[m4_if([$#], [2], [], + [, m4_shift(m4_shift($@))])]) +m4_define([_m4_shift3], +[m4_if([$#], [3], [], + [, m4_shift(m4_shift(m4_shift($@)))])]) + + +# m4_undefine(NAME) +# ----------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_undefine], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_undefine([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + +# _m4_wrap(PRE, POST) +# ------------------- +# Helper macro for m4_wrap and m4_wrap_lifo. Allows nested calls to +# m4_wrap within wrapped text. Use _m4_defn and _m4_popdef for speed. +m4_define([_m4_wrap], +[m4_ifdef([$0_text], + [m4_define([$0_text], [$1]_m4_defn([$0_text])[$2])], + [m4_builtin([m4wrap], [m4_unquote( + _m4_defn([$0_text])_m4_popdef([$0_text]))])m4_define([$0_text], [$1$2])])]) + +# m4_wrap(TEXT) +# ------------- +# Append TEXT to the list of hooks to be executed at the end of input. +# Whereas the order of the original may be LIFO in the underlying m4, +# this version is always FIFO. +m4_define([m4_wrap], +[_m4_wrap([], [$1[]])]) + +# m4_wrap_lifo(TEXT) +# ------------------ +# Prepend TEXT to the list of hooks to be executed at the end of input. +# Whereas the order of m4_wrap may be FIFO in the underlying m4, this +# version is always LIFO. +m4_define([m4_wrap_lifo], +[_m4_wrap([$1[]])]) + +## ------------------------- ## +## 7. Quoting manipulation. ## +## ------------------------- ## + + +# m4_apply(MACRO, LIST) +# --------------------- +# Invoke MACRO, with arguments provided from the quoted list of +# comma-separated quoted arguments. If LIST is empty, invoke MACRO +# without arguments. The expansion will not be concatenated with +# subsequent text. +m4_define([m4_apply], +[m4_if([$2], [], [$1], [$1($2)])[]]) + +# _m4_apply(MACRO, LIST) +# ---------------------- +# Like m4_apply, except do nothing if LIST is empty. +m4_define([_m4_apply], +[m4_if([$2], [], [], [$1($2)[]])]) + + +# m4_count(ARGS) +# -------------- +# Return a count of how many ARGS are present. +m4_define([m4_count], [$#]) + + +# m4_curry(MACRO, ARG...) +# ----------------------- +# Perform argument currying. The expansion of this macro is another +# macro that takes exactly one argument, appends it to the end of the +# original ARG list, then invokes MACRO. For example: +# m4_curry([m4_curry], [m4_reverse], [1])([2])([3]) => 3, 2, 1 +# Not quite as practical as m4_incr, but you could also do: +# m4_define([add], [m4_eval(([$1]) + ([$2]))]) +# m4_define([add_one], [m4_curry([add], [1])]) +# add_one()([2]) => 3 +m4_define([m4_curry], [$1(m4_shift($@,)_$0]) +m4_define([_m4_curry], [[$1])]) + + +# m4_do(STRING, ...) +# ------------------ +# This macro invokes all its arguments (in sequence, of course). It is +# useful for making your macros more structured and readable by dropping +# unnecessary dnl's and have the macros indented properly. No concatenation +# occurs after a STRING; use m4_unquote(m4_join(,STRING)) for that. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_do], +[m4_if([$#], 0, [], + [$#], 1, [$1[]], + [$1[]$0(m4_shift($@))])]) + + +# m4_dquote(ARGS) +# --------------- +# Return ARGS as a quoted list of quoted arguments. +m4_define([m4_dquote], [[$@]]) + + +# m4_dquote_elt(ARGS) +# ------------------- +# Return ARGS as an unquoted list of double-quoted arguments. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_dquote_elt], +[m4_if([$#], [0], [], + [$#], [1], [[[$1]]], + [[[$1]],$0(m4_shift($@))])]) + + +# m4_echo(ARGS) +# ------------- +# Return the ARGS, with the same level of quoting. Whitespace after +# unquoted commas are consumed. +m4_define([m4_echo], [$@]) + + +# m4_expand(ARG) +# _m4_expand(ARG) +# --------------- +# Return the expansion of ARG as a single string. Unlike +# m4_quote($1), this preserves whitespace following single-quoted +# commas that appear within ARG. It also deals with shell case +# statements. +# +# m4_define([active], [ACT, IVE]) +# m4_define([active2], [[ACT, IVE]]) +# m4_quote(active, active2) +# => ACT,IVE,ACT, IVE +# m4_expand([active, active2]) +# => ACT, IVE, ACT, IVE +# +# Unfortunately, due to limitations in m4, ARG must expand to +# something with balanced quotes (use quadrigraphs to get around +# this), and should not contain the unlikely delimiters -=<{( or +# )}>=-. It is possible to have unbalanced quoted `(' or `)', as well +# as unbalanced unquoted `)'. m4_expand can handle unterminated +# comments or dnl on the final line, at the expense of speed; it also +# aids in detecting attempts to incorrectly change the current +# diversion inside ARG. Meanwhile, _m4_expand is faster but must be +# given a terminated expansion, and has no safety checks for +# mis-diverted text. +# +# Exploit that extra unquoted () will group unquoted commas and the +# following whitespace. m4_bpatsubst can't handle newlines inside $1, +# and m4_substr strips quoting. So we (ab)use m4_changequote, using +# temporary quotes to remove the delimiters that conveniently included +# the unquoted () that were added prior to the changequote. +# +# Thanks to shell case statements, too many people are prone to pass +# underquoted `)', so we try to detect that by passing a marker as a +# fourth argument; if the marker is not present, then we assume that +# we encountered an early `)', and re-expand the first argument, but +# this time with one more `(' in the second argument and in the +# open-quote delimiter. We must also ignore the slop from the +# previous try. The final macro is thus half line-noise, half art. +m4_define([m4_expand], +[m4_pushdef([m4_divert], _m4_defn([_m4_divert_unsafe]))]dnl +[m4_pushdef([m4_divert_push], _m4_defn([_m4_divert_unsafe]))]dnl +[m4_chomp(_$0([$1 +]))_m4_popdef([m4_divert], [m4_divert_push])]) + +m4_define([_m4_expand], [$0_([$1], [(], -=<{($1)}>=-, [}>=-])]) + +m4_define([_m4_expand_], +[m4_if([$4], [}>=-], + [m4_changequote([-=<{$2], [)}>=-])$3m4_changequote([, ])], + [$0([$1], [($2], -=<{($2$1)}>=-, [}>=-])m4_ignore$2])]) + + +# m4_ignore(ARGS) +# --------------- +# Expands to nothing. Useful for conditionally ignoring an arbitrary +# number of arguments (see _m4_list_cmp for an example). +m4_define([m4_ignore]) + + +# m4_make_list(ARGS) +# ------------------ +# Similar to m4_dquote, this creates a quoted list of quoted ARGS. This +# version is less efficient than m4_dquote, but separates each argument +# with a comma and newline, rather than just comma, for readability. +# When developing an m4sugar algorithm, you could temporarily use +# m4_pushdef([m4_dquote],m4_defn([m4_make_list])) +# around your code to make debugging easier. +m4_define([m4_make_list], [m4_join([, +], m4_dquote_elt($@))]) + + +# m4_noquote(STRING) +# ------------------ +# Return the result of ignoring all quotes in STRING and invoking the +# macros it contains. Among other things, this is useful for enabling +# macro invocations inside strings with [] blocks (for instance regexps +# and help-strings). On the other hand, since all quotes are disabled, +# any macro expanded during this time that relies on nested [] quoting +# will likely crash and burn. This macro is seldom useful; consider +# m4_unquote or m4_expand instead. +m4_define([m4_noquote], +[m4_changequote([-=<{(],[)}>=-])$1-=<{()}>=-m4_changequote([,])]) + + +# m4_quote(ARGS) +# -------------- +# Return ARGS as a single argument. Any whitespace after unquoted commas +# is stripped. There is always output, even when there were no arguments. +# +# It is important to realize the difference between `m4_quote(exp)' and +# `[exp]': in the first case you obtain the quoted *result* of the +# expansion of EXP, while in the latter you just obtain the string +# `exp'. +m4_define([m4_quote], [[$*]]) + + +# _m4_quote(ARGS) +# --------------- +# Like m4_quote, except that when there are no arguments, there is no +# output. For conditional scenarios (such as passing _m4_quote as the +# macro name in m4_mapall), this feature can be used to distinguish between +# one argument of the empty string vs. no arguments. However, in the +# normal case with arguments present, this is less efficient than m4_quote. +m4_define([_m4_quote], +[m4_if([$#], [0], [], [[$*]])]) + + +# m4_reverse(ARGS) +# ---------------- +# Output ARGS in reverse order. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_reverse], +[m4_if([$#], [0], [], [$#], [1], [[$1]], + [$0(m4_shift($@)), [$1]])]) + + +# m4_unquote(ARGS) +# ---------------- +# Remove one layer of quotes from each ARG, performing one level of +# expansion. For one argument, m4_unquote([arg]) is more efficient than +# m4_do([arg]), but for multiple arguments, the difference is that +# m4_unquote separates arguments with commas while m4_do concatenates. +# Follow this macro with [] if concatenation with subsequent text is +# undesired. +m4_define([m4_unquote], [$*]) + + +## -------------------------- ## +## 8. Implementing m4 loops. ## +## -------------------------- ## + + +# m4_for(VARIABLE, FIRST, LAST, [STEP = +/-1], EXPRESSION) +# -------------------------------------------------------- +# Expand EXPRESSION defining VARIABLE to FROM, FROM + 1, ..., TO with +# increments of STEP. Both limits are included, and bounds are +# checked for consistency. The algorithm is robust to indirect +# VARIABLE names. Changing VARIABLE inside EXPRESSION will not impact +# the number of iterations. +# +# Uses _m4_defn for speed, and avoid dnl in the macro body. Factor +# the _m4_for call so that EXPRESSION is only parsed once. +m4_define([m4_for], +[m4_pushdef([$1], m4_eval([$2]))]dnl +[m4_cond([m4_eval(([$3]) > ([$2]))], 1, + [m4_pushdef([_m4_step], m4_eval(m4_default_quoted([$4], + 1)))m4_assert(_m4_step > 0)_$0(_m4_defn([$1]), + m4_eval((([$3]) - ([$2])) / _m4_step * _m4_step + ([$2])), _m4_step,], + [m4_eval(([$3]) < ([$2]))], 1, + [m4_pushdef([_m4_step], m4_eval(m4_default_quoted([$4], + -1)))m4_assert(_m4_step < 0)_$0(_m4_defn([$1]), + m4_eval((([$2]) - ([$3])) / -(_m4_step) * _m4_step + ([$2])), _m4_step,], + [m4_pushdef([_m4_step])_$0(_m4_defn([$1]), _m4_defn([$1]), 0,])]dnl +[[m4_define([$1],], [)$5])m4_popdef([_m4_step], [$1])]) + +# _m4_for(COUNT, LAST, STEP, PRE, POST) +# ------------------------------------- +# Core of the loop, no consistency checks, all arguments are plain +# numbers. Expand PRE[COUNT]POST, then alter COUNT by STEP and +# iterate if COUNT is not LAST. +m4_define([_m4_for], +[$4[$1]$5[]m4_if([$1], [$2], [], + [$0(m4_eval([$1 + $3]), [$2], [$3], [$4], [$5])])]) + + +# Implementing `foreach' loops in m4 is much more tricky than it may +# seem. For example, the old M4 1.4.4 manual had an incorrect example, +# which looked like this (when translated to m4sugar): +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], +# | [m4_pushdef([$1])_foreach([$1], [$2], [$3])m4_popdef([$1])]) +# | m4_define([_arg1], [$1]) +# | m4_define([_foreach], +# | [m4_if([$2], [()], , +# | [m4_define([$1], _arg1$2)$3[]_foreach([$1], (m4_shift$2), [$3])])]) +# +# But then if you run +# +# | m4_define(a, 1) +# | m4_define(b, 2) +# | m4_define(c, 3) +# | foreach([f], [([a], [(b], [c)])], [echo f +# | ]) +# +# it gives +# +# => echo 1 +# => echo (2,3) +# +# which is not what is expected. +# +# Of course the problem is that many quotes are missing. So you add +# plenty of quotes at random places, until you reach the expected +# result. Alternatively, if you are a quoting wizard, you directly +# reach the following implementation (but if you really did, then +# apply to the maintenance of m4sugar!). +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], [m4_pushdef([$1])_foreach($@)m4_popdef([$1])]) +# | m4_define([_arg1], [[$1]]) +# | m4_define([_foreach], +# | [m4_if($2, [()], , +# | [m4_define([$1], [_arg1$2])$3[]_foreach([$1], [(m4_shift$2)], [$3])])]) +# +# which this time answers +# +# => echo a +# => echo (b +# => echo c) +# +# Bingo! +# +# Well, not quite. +# +# With a better look, you realize that the parens are more a pain than +# a help: since anyway you need to quote properly the list, you end up +# with always using an outermost pair of parens and an outermost pair +# of quotes. Rejecting the parens both eases the implementation, and +# simplifies the use: +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], [m4_pushdef([$1])_foreach($@)m4_popdef([$1])]) +# | m4_define([_arg1], [$1]) +# | m4_define([_foreach], +# | [m4_if($2, [], , +# | [m4_define([$1], [_arg1($2)])$3[]_foreach([$1], [m4_shift($2)], [$3])])]) +# +# +# Now, just replace the `$2' with `m4_quote($2)' in the outer `m4_if' +# to improve robustness, and you come up with a nice implementation +# that doesn't require extra parentheses in the user's LIST. +# +# But wait - now the algorithm is quadratic, because every recursion of +# the algorithm keeps the entire LIST and merely adds another m4_shift to +# the quoted text. If the user has a lot of elements in LIST, you can +# bring the system to its knees with the memory m4 then requires, or trip +# the m4 --nesting-limit recursion factor. The only way to avoid +# quadratic growth is ensure m4_shift is expanded prior to the recursion. +# Hence the design below. +# +# The M4 manual now includes a chapter devoted to this issue, with +# the lessons learned from m4sugar. And still, this design is only +# optimal for M4 1.6; see foreach.m4 for yet more comments on why +# M4 1.4.x uses yet another implementation. + + +# m4_foreach(VARIABLE, LIST, EXPRESSION) +# -------------------------------------- +# +# Expand EXPRESSION assigning each value of the LIST to VARIABLE. +# LIST should have the form `item_1, item_2, ..., item_n', i.e. the +# whole list must *quoted*. Quote members too if you don't want them +# to be expanded. +# +# This macro is robust to active symbols: +# | m4_define(active, [ACT, IVE]) +# | m4_foreach(Var, [active, active], [-Var-]) +# => -ACT--IVE--ACT--IVE- +# +# | m4_foreach(Var, [[active], [active]], [-Var-]) +# => -ACT, IVE--ACT, IVE- +# +# | m4_foreach(Var, [[[active]], [[active]]], [-Var-]) +# => -active--active- +# +# This macro is called frequently, so avoid extra expansions such as +# m4_ifval and dnl. Also, since $2 might be quite large, try to use it +# as little as possible in _m4_foreach; each extra use requires that much +# more memory for expansion. So, rather than directly compare $2 against +# [] and use m4_car/m4_cdr for recursion, we instead unbox the list (which +# requires swapping the argument order in the helper), insert an ignored +# third argument, and use m4_shift3 to detect when recursion is complete, +# at which point this looks very much like m4_map_args. +m4_define([m4_foreach], +[m4_if([$2], [], [], + [m4_pushdef([$1])_$0([m4_define([$1],], [)$3], [], + $2)m4_popdef([$1])])]) + +# _m4_foreach(PRE, POST, IGNORED, ARG...) +# --------------------------------------- +# Form the common basis of the m4_foreach and m4_map macros. For each +# ARG, expand PRE[ARG]POST[]. The IGNORED argument makes recursion +# easier, and must be supplied rather than implicit. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([_m4_foreach], +[m4_if([$#], [3], [], + [$1[$4]$2[]$0([$1], [$2], m4_shift3($@))])]) + + +# m4_foreach_w(VARIABLE, LIST, EXPRESSION) +# ---------------------------------------- +# Like m4_foreach, but the list is whitespace separated. Depending on +# EXPRESSION, it may be more efficient to use m4_map_args_w. +# +# This macro is robust to active symbols: +# m4_foreach_w([Var], [ active +# b act\ +# ive ], [-Var-])end +# => -active--b--active-end +# +# This used to use a slower implementation based on m4_foreach: +# m4_foreach([$1], m4_split(m4_normalize([$2]), [ ]), [$3]) +m4_define([m4_foreach_w], +[m4_pushdef([$1])m4_map_args_w([$2], + [m4_define([$1],], [)$3])m4_popdef([$1])]) + + +# m4_map(MACRO, LIST) +# m4_mapall(MACRO, LIST) +# ---------------------- +# Invoke MACRO($1), MACRO($2) etc. where $1, $2... are the elements of +# LIST. $1, $2... must in turn be lists, appropriate for m4_apply. +# If LIST contains an empty sublist, m4_map skips the expansion of +# MACRO, while m4_mapall expands MACRO with no arguments. +# +# Since LIST may be quite large, we want to minimize how often it +# appears in the expansion. Rather than use m4_car/m4_cdr iteration, +# we unbox the list, and use _m4_foreach for iteration. For m4_map, +# an empty list behaves like an empty sublist and gets ignored; for +# m4_mapall, we must special-case the empty list. +m4_define([m4_map], +[_m4_foreach([_m4_apply([$1],], [)], [], $2)]) + +m4_define([m4_mapall], +[m4_if([$2], [], [], + [_m4_foreach([m4_apply([$1],], [)], [], $2)])]) + + +# m4_map_sep(MACRO, [SEPARATOR], LIST) +# m4_mapall_sep(MACRO, [SEPARATOR], LIST) +# --------------------------------------- +# Invoke MACRO($1), SEPARATOR, MACRO($2), ..., MACRO($N) where $1, +# $2... $N are the elements of LIST, and are in turn lists appropriate +# for m4_apply. SEPARATOR is expanded, in order to allow the creation +# of a list of arguments by using a single-quoted comma as the +# separator. For each empty sublist, m4_map_sep skips the expansion +# of MACRO and SEPARATOR, while m4_mapall_sep expands MACRO with no +# arguments. +# +# For m4_mapall_sep, merely expand the first iteration without the +# separator, then include separator as part of subsequent recursion; +# but avoid extra expansion of LIST's side-effects via a helper macro. +# For m4_map_sep, things are trickier - we don't know if the first +# list element is an empty sublist, so we must define a self-modifying +# helper macro and use that as the separator instead. +m4_define([m4_map_sep], +[m4_pushdef([m4_Sep], [m4_define([m4_Sep], _m4_defn([m4_unquote]))])]dnl +[_m4_foreach([_m4_apply([m4_Sep([$2])[]$1],], [)], [], $3)m4_popdef([m4_Sep])]) + +m4_define([m4_mapall_sep], +[m4_if([$3], [], [], [_$0([$1], [$2], $3)])]) + +m4_define([_m4_mapall_sep], +[m4_apply([$1], [$3])_m4_foreach([m4_apply([$2[]$1],], [)], m4_shift2($@))]) + +# m4_map_args(EXPRESSION, ARG...) +# ------------------------------- +# Expand EXPRESSION([ARG]) for each argument. More efficient than +# m4_foreach([var], [ARG...], [EXPRESSION(m4_defn([var]))]) +# Shorthand for m4_map_args_sep([EXPRESSION(], [)], [], ARG...). +m4_define([m4_map_args], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [], + [$#], [2], [$1([$2])[]], + [_m4_foreach([$1(], [)], $@)])]) + + +# m4_map_args_pair(EXPRESSION, [END-EXPR = EXPRESSION], ARG...) +# ------------------------------------------------------------- +# Perform a pairwise grouping of consecutive ARGs, by expanding +# EXPRESSION([ARG1], [ARG2]). If there are an odd number of ARGs, the +# final argument is expanded with END-EXPR([ARGn]). +# +# For example: +# m4_define([show], [($*)m4_newline])dnl +# m4_map_args_pair([show], [], [a], [b], [c], [d], [e])dnl +# => (a,b) +# => (c,d) +# => (e) +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_map_args_pair], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [m4_fatal([$0: too few arguments: $#: $1])], + [$#], [2], [], + [$#], [3], [m4_default([$2], [$1])([$3])[]], + [$#], [4], [$1([$3], [$4])[]], + [$1([$3], [$4])[]$0([$1], [$2], m4_shift(m4_shift3($@)))])]) + + +# m4_map_args_sep([PRE], [POST], [SEP], ARG...) +# --------------------------------------------- +# Expand PRE[ARG]POST for each argument, with SEP between arguments. +m4_define([m4_map_args_sep], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [], + [$#], [2], [], + [$#], [3], [], + [$#], [4], [$1[$4]$2[]], + [$1[$4]$2[]_m4_foreach([$3[]$1], [$2], m4_shift3($@))])]) + + +# m4_map_args_w(STRING, [PRE], [POST], [SEP]) +# ------------------------------------------- +# Perform the expansion of PRE[word]POST[] for each word in STRING +# separated by whitespace. More efficient than: +# m4_foreach_w([var], [STRING], [PRE[]m4_defn([var])POST]) +# Additionally, expand SEP between words. +# +# As long as we have to use m4_bpatsubst to split the string, we might +# as well make it also apply PRE and POST; this avoids iteration +# altogether. But we must be careful of any \ in PRE or POST. +# _m4_strip returns a quoted string, but that's okay, since it also +# supplies an empty leading and trailing argument due to our +# intentional whitespace around STRING. We use m4_substr to strip the +# empty elements and remove the extra layer of quoting. +m4_define([m4_map_args_w], +[_$0(_m4_split([ ]m4_flatten([$1])[ ], [[ ]+], + m4_if(m4_index([$2$3$4], [\]), [-1], [[$3[]$4[]$2]], + [m4_bpatsubst([[$3[]$4[]$2]], [\\], [\\\\])])), + m4_len([[]$3[]$4]), m4_len([$4[]$2[]]))]) + +m4_define([_m4_map_args_w], +[m4_substr([$1], [$2], m4_eval(m4_len([$1]) - [$2] - [$3]))]) + + +# m4_stack_foreach(MACRO, FUNC) +# m4_stack_foreach_lifo(MACRO, FUNC) +# ---------------------------------- +# Pass each stacked definition of MACRO to the one-argument macro FUNC. +# m4_stack_foreach proceeds in FIFO order, while m4_stack_foreach_lifo +# processes the topmost definitions first. In addition, FUNC should +# not push or pop definitions of MACRO, and should not expect anything about +# the active definition of MACRO (it will not be the topmost, and may not +# be the one passed to FUNC either). +# +# Some macros simply can't be examined with this method: namely, +# anything involved in the implementation of _m4_stack_reverse. +m4_define([m4_stack_foreach], +[_m4_stack_reverse([$1], [m4_tmp-$1])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1], [$2(_m4_defn([m4_tmp-$1]))])]) + +m4_define([m4_stack_foreach_lifo], +[_m4_stack_reverse([$1], [m4_tmp-$1], [$2(_m4_defn([m4_tmp-$1]))])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1])]) + +# m4_stack_foreach_sep(MACRO, [PRE], [POST], [SEP]) +# m4_stack_foreach_sep_lifo(MACRO, [PRE], [POST], [SEP]) +# ------------------------------------------------------ +# Similar to m4_stack_foreach and m4_stack_foreach_lifo, in that every +# definition of a pushdef stack will be visited. But rather than +# passing the definition as a single argument to a macro, this variant +# expands the concatenation of PRE[]definition[]POST, and expands SEP +# between consecutive expansions. Note that m4_stack_foreach([a], [b]) +# is equivalent to m4_stack_foreach_sep([a], [b(], [)]). +m4_define([m4_stack_foreach_sep], +[_m4_stack_reverse([$1], [m4_tmp-$1])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1], [$2[]_m4_defn([m4_tmp-$1])$3], [$4[]])]) + +m4_define([m4_stack_foreach_sep_lifo], +[_m4_stack_reverse([$1], [m4_tmp-$1], [$2[]_m4_defn([m4_tmp-$1])$3], [$4[]])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1])]) + + +# _m4_stack_reverse(OLD, NEW, [ACTION], [SEP]) +# -------------------------------------------- +# A recursive worker for pushdef stack manipulation. Destructively +# copy the OLD stack into the NEW, and expanding ACTION for each +# iteration. After the first iteration, SEP is promoted to the front +# of ACTION (note that SEP should include a trailing [] if it is to +# avoid interfering with ACTION). The current definition is examined +# after the NEW has been pushed but before OLD has been popped; this +# order is important, as ACTION is permitted to operate on either +# _m4_defn([OLD]) or _m4_defn([NEW]). Since the operation is +# destructive, this macro is generally used twice, with a temporary +# macro name holding the swapped copy. +m4_define([_m4_stack_reverse], +[m4_ifdef([$1], [m4_pushdef([$2], + _m4_defn([$1]))$3[]_m4_popdef([$1])$0([$1], [$2], [$4$3])])]) + + + +## --------------------------- ## +## 9. More diversion support. ## +## --------------------------- ## + + +# m4_cleardivert(DIVERSION-NAME...) +# --------------------------------- +# Discard any text in DIVERSION-NAME. +# +# This works even inside m4_expand. +m4_define([m4_cleardivert], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [_m4_divert_raw([-1])m4_undivert($@)_m4_divert_raw( + _m4_divert(_m4_defn([_m4_divert_diversion]), [-]))])]) + + +# _m4_divert(DIVERSION-NAME or NUMBER, [NOWARN]) +# ---------------------------------------------- +# If DIVERSION-NAME is the name of a diversion, return its number, +# otherwise if it is a NUMBER return it. Issue a warning about +# the use of a number instead of a name, unless NOWARN is provided. +m4_define([_m4_divert], +[m4_ifdef([_m4_divert($1)], + [m4_indir([_m4_divert($1)])], + [m4_if([$2], [], [m4_warn([syntax], + [prefer named diversions])])$1])]) + +# KILL is only used to suppress output. +m4_define([_m4_divert(KILL)], -1) + +# The empty diversion name is a synonym for 0. +m4_define([_m4_divert()], 0) + + +# m4_divert_stack +# --------------- +# Print the diversion stack, if it's nonempty. The caller is +# responsible for any leading or trailing newline. +m4_define([m4_divert_stack], +[m4_stack_foreach_sep_lifo([_m4_divert_stack], [], [], [ +])]) + + +# m4_divert_stack_push(MACRO-NAME, DIVERSION-NAME) +# ------------------------------------------------ +# Form an entry of the diversion stack from caller MACRO-NAME and +# entering DIVERSION-NAME and push it. +m4_define([m4_divert_stack_push], +[m4_pushdef([_m4_divert_stack], m4_location[: $1: $2])]) + + +# m4_divert(DIVERSION-NAME) +# ------------------------- +# Change the diversion stream to DIVERSION-NAME. +m4_define([m4_divert], +[m4_popdef([_m4_divert_stack])]dnl +[m4_define([_m4_divert_diversion], [$1])]dnl +[m4_divert_stack_push([$0], [$1])]dnl +[_m4_divert_raw(_m4_divert([$1]))]) + + +# m4_divert_push(DIVERSION-NAME, [NOWARN]) +# ---------------------------------------- +# Change the diversion stream to DIVERSION-NAME, while stacking old values. +# For internal use only: if NOWARN is not empty, DIVERSION-NAME can be a +# number instead of a name. +m4_define([m4_divert_push], +[m4_divert_stack_push([$0], [$1])]dnl +[m4_pushdef([_m4_divert_diversion], [$1])]dnl +[_m4_divert_raw(_m4_divert([$1], [$2]))]) + + +# m4_divert_pop([DIVERSION-NAME]) +# ------------------------------- +# Change the diversion stream to its previous value, unstacking it. +# If specified, verify we left DIVERSION-NAME. +# When we pop the last value from the stack, we divert to -1. +m4_define([m4_divert_pop], +[m4_if([$1], [], [], + [$1], _m4_defn([_m4_divert_diversion]), [], + [m4_fatal([$0($1): diversion mismatch: +]m4_divert_stack)])]dnl +[_m4_popdef([_m4_divert_stack], [_m4_divert_diversion])]dnl +[m4_ifdef([_m4_divert_diversion], [], + [m4_fatal([too many m4_divert_pop])])]dnl +[_m4_divert_raw(_m4_divert(_m4_defn([_m4_divert_diversion]), [-]))]) + + +# m4_divert_text(DIVERSION-NAME, CONTENT) +# --------------------------------------- +# Output CONTENT into DIVERSION-NAME (which may be a number actually). +# An end of line is appended for free to CONTENT. +m4_define([m4_divert_text], +[m4_divert_push([$1])$2 +m4_divert_pop([$1])]) + + +# m4_divert_once(DIVERSION-NAME, CONTENT) +# --------------------------------------- +# Output CONTENT into DIVERSION-NAME once, if not already there. +# An end of line is appended for free to CONTENT. +m4_define([m4_divert_once], +[m4_expand_once([m4_divert_text([$1], [$2])])]) + + +# _m4_divert_unsafe(DIVERSION-NAME) +# --------------------------------- +# Issue a warning that the attempt to change the current diversion to +# DIVERSION-NAME is unsafe, because this macro is being expanded +# during argument collection of m4_expand. +m4_define([_m4_divert_unsafe], +[m4_fatal([$0: cannot change diversion to `$1' inside m4_expand])]) + + +# m4_undivert(DIVERSION-NAME...) +# ------------------------------ +# Undivert DIVERSION-NAME. Unlike the M4 version, this requires at +# least one DIVERSION-NAME; also, due to support for named diversions, +# this should not be used to undivert files. +m4_define([m4_undivert], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [_m4_undivert(_m4_divert([$1]))], + [m4_map_args([$0], $@)])]) + + +## --------------------------------------------- ## +## 10. Defining macros with bells and whistles. ## +## --------------------------------------------- ## + +# `m4_defun' is basically `m4_define' but it equips the macro with the +# needed machinery for `m4_require'. A macro must be m4_defun'd if +# either it is m4_require'd, or it m4_require's. +# +# Two things deserve attention and are detailed below: +# 1. Implementation of m4_require +# 2. Keeping track of the expansion stack +# +# 1. Implementation of m4_require +# =============================== +# +# Of course m4_defun calls m4_provide, so that a macro which has +# been expanded is not expanded again when m4_require'd, but the +# difficult part is the proper expansion of macros when they are +# m4_require'd. +# +# The implementation is based on three ideas, (i) using diversions to +# prepare the expansion of the macro and its dependencies (by Franc,ois +# Pinard), (ii) expand the most recently m4_require'd macros _after_ +# the previous macros (by Axel Thimm), and (iii) track instances of +# provide before require (by Eric Blake). +# +# +# The first idea: why use diversions? +# ----------------------------------- +# +# When a macro requires another, the other macro is expanded in new +# diversion, GROW. When the outer macro is fully expanded, we first +# undivert the most nested diversions (GROW - 1...), and finally +# undivert GROW. To understand why we need several diversions, +# consider the following example: +# +# | m4_defun([TEST1], [Test...m4_require([TEST2])1]) +# | m4_defun([TEST2], [Test...m4_require([TEST3])2]) +# | m4_defun([TEST3], [Test...3]) +# +# Because m4_require is not required to be first in the outer macros, we +# must keep the expansions of the various levels of m4_require separated. +# Right before executing the epilogue of TEST1, we have: +# +# GROW - 2: Test...3 +# GROW - 1: Test...2 +# GROW: Test...1 +# BODY: +# +# Finally the epilogue of TEST1 undiverts GROW - 2, GROW - 1, and +# GROW into the regular flow, BODY. +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: Test...3; Test...2; Test...1 +# +# (The semicolons are here for clarification, but of course are not +# emitted.) This is what Autoconf 2.0 (I think) to 2.13 (I'm sure) +# implement. +# +# +# The second idea: first required first out +# ----------------------------------------- +# +# The natural implementation of the idea above is buggy and produces +# very surprising results in some situations. Let's consider the +# following example to explain the bug: +# +# | m4_defun([TEST1], [m4_require([TEST2a])m4_require([TEST2b])]) +# | m4_defun([TEST2a], []) +# | m4_defun([TEST2b], [m4_require([TEST3])]) +# | m4_defun([TEST3], [m4_require([TEST2a])]) +# | +# | AC_INIT +# | TEST1 +# +# The dependencies between the macros are: +# +# 3 --- 2b +# / \ is m4_require'd by +# / \ left -------------------- right +# 2a ------------ 1 +# +# If you strictly apply the rules given in the previous section you get: +# +# GROW - 2: TEST3 +# GROW - 1: TEST2a; TEST2b +# GROW: TEST1 +# BODY: +# +# (TEST2a, although required by TEST3 is not expanded in GROW - 3 +# because is has already been expanded before in GROW - 1, so it has +# been AC_PROVIDE'd, so it is not expanded again) so when you undivert +# the stack of diversions, you get: +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: TEST3; TEST2a; TEST2b; TEST1 +# +# i.e., TEST2a is expanded after TEST3 although the latter required the +# former. +# +# Starting from 2.50, we use an implementation provided by Axel Thimm. +# The idea is simple: the order in which macros are emitted must be the +# same as the one in which macros are expanded. (The bug above can +# indeed be described as: a macro has been m4_provide'd before its +# dependent, but it is emitted after: the lack of correlation between +# emission and expansion order is guilty). +# +# How to do that? You keep the stack of diversions to elaborate the +# macros, but each time a macro is fully expanded, emit it immediately. +# +# In the example above, when TEST2a is expanded, but it's epilogue is +# not run yet, you have: +# +# GROW - 2: +# GROW - 1: TEST2a +# GROW: Elaboration of TEST1 +# BODY: +# +# The epilogue of TEST2a emits it immediately: +# +# GROW - 2: +# GROW - 1: +# GROW: Elaboration of TEST1 +# BODY: TEST2a +# +# TEST2b then requires TEST3, so right before the epilogue of TEST3, you +# have: +# +# GROW - 2: TEST3 +# GROW - 1: Elaboration of TEST2b +# GROW: Elaboration of TEST1 +# BODY: TEST2a +# +# The epilogue of TEST3 emits it: +# +# GROW - 2: +# GROW - 1: Elaboration of TEST2b +# GROW: Elaboration of TEST1 +# BODY: TEST2a; TEST3 +# +# TEST2b is now completely expanded, and emitted: +# +# GROW - 2: +# GROW - 1: +# GROW: Elaboration of TEST1 +# BODY: TEST2a; TEST3; TEST2b +# +# and finally, TEST1 is finished and emitted: +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: TEST2a; TEST3; TEST2b: TEST1 +# +# The idea is simple, but the implementation is a bit involved. If +# you are like me, you will want to see the actual functioning of this +# implementation to be convinced. The next section gives the full +# details. +# +# +# The Axel Thimm implementation at work +# ------------------------------------- +# +# We consider the macros above, and this configure.ac: +# +# AC_INIT +# TEST1 +# +# You should keep the definitions of _m4_defun_pro, _m4_defun_epi, and +# m4_require at hand to follow the steps. +# +# This implementation tries not to assume that the current diversion is +# BODY, so as soon as a macro (m4_defun'd) is expanded, we first +# record the current diversion under the name _m4_divert_dump (denoted +# DUMP below for short). This introduces an important difference with +# the previous versions of Autoconf: you cannot use m4_require if you +# are not inside an m4_defun'd macro, and especially, you cannot +# m4_require directly from the top level. +# +# We have not tried to simulate the old behavior (better yet, we +# diagnose it), because it is too dangerous: a macro m4_require'd from +# the top level is expanded before the body of `configure', i.e., before +# any other test was run. I let you imagine the result of requiring +# AC_STDC_HEADERS for instance, before AC_PROG_CC was actually run.... +# +# After AC_INIT was run, the current diversion is BODY. +# * AC_INIT was run +# DUMP: undefined +# diversion stack: BODY |- +# +# * TEST1 is expanded +# The prologue of TEST1 sets _m4_divert_dump, which is the diversion +# where the current elaboration will be dumped, to the current +# diversion. It also m4_divert_push to GROW, where the full +# expansion of TEST1 and its dependencies will be elaborated. +# DUMP: BODY +# BODY: empty +# diversions: GROW, BODY |- +# +# * TEST1 requires TEST2a +# _m4_require_call m4_divert_pushes another temporary diversion, +# GROW - 1, and expands TEST2a in there. +# DUMP: BODY +# BODY: empty +# GROW - 1: TEST2a +# diversions: GROW - 1, GROW, BODY |- +# Then the content of the temporary diversion is moved to DUMP and the +# temporary diversion is popped. +# DUMP: BODY +# BODY: TEST2a +# diversions: GROW, BODY |- +# +# * TEST1 requires TEST2b +# Again, _m4_require_call pushes GROW - 1 and heads to expand TEST2b. +# DUMP: BODY +# BODY: TEST2a +# diversions: GROW - 1, GROW, BODY |- +# +# * TEST2b requires TEST3 +# _m4_require_call pushes GROW - 2 and expands TEST3 here. +# (TEST3 requires TEST2a, but TEST2a has already been m4_provide'd, so +# nothing happens.) +# DUMP: BODY +# BODY: TEST2a +# GROW - 2: TEST3 +# diversions: GROW - 2, GROW - 1, GROW, BODY |- +# Then the diversion is appended to DUMP, and popped. +# DUMP: BODY +# BODY: TEST2a; TEST3 +# diversions: GROW - 1, GROW, BODY |- +# +# * TEST1 requires TEST2b (contd.) +# The content of TEST2b is expanded... +# DUMP: BODY +# BODY: TEST2a; TEST3 +# GROW - 1: TEST2b, +# diversions: GROW - 1, GROW, BODY |- +# ... and moved to DUMP. +# DUMP: BODY +# BODY: TEST2a; TEST3; TEST2b +# diversions: GROW, BODY |- +# +# * TEST1 is expanded: epilogue +# TEST1's own content is in GROW... +# DUMP: BODY +# BODY: TEST2a; TEST3; TEST2b +# GROW: TEST1 +# diversions: BODY |- +# ... and it's epilogue moves it to DUMP and then undefines DUMP. +# DUMP: undefined +# BODY: TEST2a; TEST3; TEST2b; TEST1 +# diversions: BODY |- +# +# +# The third idea: track macros provided before they were required +# --------------------------------------------------------------- +# +# Using just the first two ideas, Autoconf 2.50 through 2.63 still had +# a subtle bug for more than seven years. Let's consider the +# following example to explain the bug: +# +# | m4_defun([TEST1], [1]) +# | m4_defun([TEST2], [2[]m4_require([TEST1])]) +# | m4_defun([TEST3], [3 TEST1 m4_require([TEST2])]) +# | TEST3 +# +# After the prologue of TEST3, we are collecting text in GROW with the +# intent of dumping it in BODY during the epilogue. Next, we +# encounter the direct invocation of TEST1, which provides the macro +# in place in GROW. From there, we encounter a requirement for TEST2, +# which must be collected in a new diversion. While expanding TEST2, +# we encounter a requirement for TEST1, but since it has already been +# expanded, the Axel Thimm algorithm states that we can treat it as a +# no-op. But that would lead to an end result of `2 3 1', meaning +# that we have once again output a macro (TEST2) prior to its +# requirements (TEST1). +# +# The problem can only occur if a single defun'd macro first provides, +# then later indirectly requires, the same macro. Note that directly +# expanding then requiring a macro is okay: because the dependency was +# met, the require phase can be a no-op. For that matter, the outer +# macro can even require two helpers, where the first helper expands +# the macro, and the second helper indirectly requires the macro. +# Out-of-order expansion is only present if the inner macro is +# required by something that will be hoisted in front of where the +# direct expansion occurred. In other words, we must be careful not +# to warn on: +# +# | m4_defun([TEST4], [4]) +# | m4_defun([TEST5], [5 TEST4 m4_require([TEST4])]) +# | TEST5 => 5 4 +# +# or even the more complex: +# +# | m4_defun([TEST6], [6]) +# | m4_defun([TEST7], [7 TEST6]) +# | m4_defun([TEST8], [8 m4_require([TEST6])]) +# | m4_defun([TEST9], [9 m4_require([TEST8])]) +# | m4_defun([TEST10], [10 m4_require([TEST7]) m4_require([TEST9])]) +# | TEST10 => 7 6 8 9 10 +# +# So, to detect whether a require was direct or indirect, m4_defun and +# m4_require track the name of the macro that caused a diversion to be +# created (using the stack _m4_diverting, coupled with an O(1) lookup +# _m4_diverting([NAME])), and m4_provide stores the name associated +# with the diversion at which a macro was provided. A require call is +# direct if it occurs within the same diversion where the macro was +# provided, or if the diversion associated with the providing context +# has been collected. +# +# The implementation of the warning involves tracking the set of +# macros which have been provided since the start of the outermost +# defun'd macro (the set is named _m4_provide). When starting an +# outermost macro, the set is emptied; when a macro is provided, it is +# added to the set; when require expands the body of a macro, it is +# removed from the set; and when a macro is indirectly required, the +# set is checked. If a macro is in the set, then it has been provided +# before it was required, and we satisfy dependencies by expanding the +# macro as if it had never been provided; in the example given above, +# this means we now output `1 2 3 1'. Meanwhile, a warning is issued +# to inform the user that her macros trigger the bug in older autoconf +# versions, and that her output file now contains redundant contents +# (and possibly new problems, if the repeated macro was not +# idempotent). Meanwhile, macros defined by m4_defun_once instead of +# m4_defun are idempotent, avoiding any warning or duplicate output. +# +# +# 2. Keeping track of the expansion stack +# ======================================= +# +# When M4 expansion goes wrong it is often extremely hard to find the +# path amongst macros that drove to the failure. What is needed is +# the stack of macro `calls'. One could imagine that GNU M4 would +# maintain a stack of macro expansions, unfortunately it doesn't, so +# we do it by hand. This is of course extremely costly, but the help +# this stack provides is worth it. Nevertheless to limit the +# performance penalty this is implemented only for m4_defun'd macros, +# not for define'd macros. +# +# Each time we enter an m4_defun'd macros, we add a definition in +# _m4_expansion_stack, and when we exit the macro, we remove it (thanks +# to pushdef/popdef). m4_stack_foreach is used to print the expansion +# stack in the rare cases when it's needed. +# +# In addition, we want to detect circular m4_require dependencies. +# Each time we expand a macro FOO we define _m4_expanding(FOO); and +# m4_require(BAR) simply checks whether _m4_expanding(BAR) is defined. + + +# m4_expansion_stack +# ------------------ +# Expands to the entire contents of the expansion stack. The caller +# must supply a trailing newline. This macro always prints a +# location; check whether _m4_expansion_stack is defined to filter out +# the case when no defun'd macro is in force. +m4_define([m4_expansion_stack], +[m4_stack_foreach_sep_lifo([_$0], [_$0_entry(], [) +])m4_location[: the top level]]) + +# _m4_expansion_stack_entry(MACRO) +# -------------------------------- +# Format an entry for MACRO found on the expansion stack. +m4_define([_m4_expansion_stack_entry], +[_m4_defn([m4_location($1)])[: $1 is expanded from...]]) + +# m4_expansion_stack_push(MACRO) +# ------------------------------ +# Form an entry of the expansion stack on entry to MACRO and push it. +m4_define([m4_expansion_stack_push], +[m4_pushdef([_m4_expansion_stack], [$1])]) + + +# _m4_divert(GROW) +# ---------------- +# This diversion is used by the m4_defun/m4_require machinery. It is +# important to keep room before GROW because for each nested +# AC_REQUIRE we use an additional diversion (i.e., two m4_require's +# will use GROW - 2. More than 3 levels has never seemed to be +# needed.) +# +# ... +# - GROW - 2 +# m4_require'd code, 2 level deep +# - GROW - 1 +# m4_require'd code, 1 level deep +# - GROW +# m4_defun'd macros are elaborated here. + +m4_define([_m4_divert(GROW)], 10000) + + +# _m4_defun_pro(MACRO-NAME) +# ------------------------- +# The prologue for Autoconf macros. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and m4_defn overhead. +m4_define([_m4_defun_pro], +[m4_ifdef([_m4_expansion_stack], [], [_m4_defun_pro_outer([$1])])]dnl +[m4_expansion_stack_push([$1])m4_pushdef([_m4_expanding($1)])]) + +m4_define([_m4_defun_pro_outer], +[m4_set_delete([_m4_provide])]dnl +[m4_pushdef([_m4_diverting([$1])])m4_pushdef([_m4_diverting], [$1])]dnl +[m4_pushdef([_m4_divert_dump], m4_divnum)m4_divert_push([GROW])]) + +# _m4_defun_epi(MACRO-NAME) +# ------------------------- +# The Epilogue for Autoconf macros. MACRO-NAME only helps tracing +# the PRO/EPI pairs. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and m4_popdef overhead. +m4_define([_m4_defun_epi], +[_m4_popdef([_m4_expanding($1)], [_m4_expansion_stack])]dnl +[m4_ifdef([_m4_expansion_stack], [], [_m4_defun_epi_outer([$1])])]dnl +[m4_provide([$1])]) + +m4_define([_m4_defun_epi_outer], +[_m4_popdef([_m4_divert_dump], [_m4_diverting([$1])], [_m4_diverting])]dnl +[m4_divert_pop([GROW])m4_undivert([GROW])]) + + +# _m4_divert_dump +# --------------- +# If blank, we are outside of any defun'd macro. Otherwise, expands +# to the diversion number (not name) where require'd macros should be +# moved once completed. +m4_define([_m4_divert_dump]) + + +# m4_divert_require(DIVERSION, NAME-TO-CHECK, [BODY-TO-EXPAND]) +# ------------------------------------------------------------- +# Same as m4_require, but BODY-TO-EXPAND goes into the named DIVERSION; +# requirements still go in the current diversion though. +# +m4_define([m4_divert_require], +[m4_ifdef([_m4_expanding($2)], + [m4_fatal([$0: circular dependency of $2])])]dnl +[m4_if(_m4_divert_dump, [], + [m4_fatal([$0($2): cannot be used outside of an m4_defun'd macro])])]dnl +[m4_provide_if([$2], [], + [_m4_require_call([$2], [$3], _m4_divert([$1], [-]))])]) + + +# m4_defun(NAME, EXPANSION, [MACRO = m4_define]) +# ---------------------------------------------- +# Define a macro NAME which automatically provides itself. Add +# machinery so the macro automatically switches expansion to the +# diversion stack if it is not already using it, prior to EXPANSION. +# In this case, once finished, it will bring back all the code +# accumulated in the diversion stack. This, combined with m4_require, +# achieves the topological ordering of macros. We don't use this +# macro to define some frequently called macros that are not involved +# in ordering constraints, to save m4 processing. +# +# MACRO is an undocumented argument; when set to m4_pushdef, and NAME +# is already defined, the new definition is added to the pushdef +# stack, rather than overwriting the current definition. It can thus +# be used to write self-modifying macros, which pop themselves to a +# previously m4_define'd definition so that subsequent use of the +# macro is faster. +m4_define([m4_defun], +[m4_define([m4_location($1)], m4_location)]dnl +[m4_default([$3], [m4_define])([$1], + [_m4_defun_pro(]m4_dquote($[0])[)$2[]_m4_defun_epi(]m4_dquote($[0])[)])]) + + +# m4_defun_init(NAME, INIT, COMMON) +# --------------------------------- +# Like m4_defun, but split EXPANSION into two portions: INIT which is +# done only the first time NAME is invoked, and COMMON which is +# expanded every time. +# +# For now, the COMMON definition is always m4_define'd, giving an even +# lighter-weight definition. m4_defun allows self-providing, but once +# a macro is provided, m4_require no longer cares if it is m4_define'd +# or m4_defun'd. m4_defun also provides location tracking to identify +# dependency bugs, but once the INIT has been expanded, we know there +# are no dependency bugs. However, if a future use needs COMMON to be +# m4_defun'd, we can add a parameter, similar to the third parameter +# to m4_defun. +m4_define([m4_defun_init], +[m4_define([$1], [$3[]])m4_defun([$1], + [$2[]_m4_popdef(]m4_dquote($[0])[)m4_indir(]m4_dquote($[0])dnl +[m4_if(]m4_dquote($[#])[, [0], [], ]m4_dquote([,$]@)[))], [m4_pushdef])]) + + +# m4_defun_once(NAME, EXPANSION) +# ------------------------------ +# Like m4_defun, but guarantee that EXPANSION only happens once +# (thereafter, using NAME is a no-op). +# +# If _m4_divert_dump is empty, we are called at the top level; +# otherwise, we must ensure that we are required in front of the +# current defun'd macro. Use a helper macro so that EXPANSION need +# only occur once in the definition of NAME, since it might be large. +m4_define([m4_defun_once], +[m4_define([m4_location($1)], m4_location)]dnl +[m4_define([$1], [_m4_defun_once([$1], [$2], m4_if(_m4_divert_dump, [], + [[_m4_defun_pro([$1])m4_unquote(], [)_m4_defun_epi([$1])]], +m4_ifdef([_m4_diverting([$1])], [-]), [-], [[m4_unquote(], [)]], + [[_m4_require_call([$1],], [, _m4_divert_dump)]]))])]) + +m4_define([_m4_defun_once], +[m4_pushdef([$1])$3[$2[]m4_provide([$1])]$4]) + + +# m4_pattern_forbid(ERE, [WHY]) +# ----------------------------- +# Declare that no token matching the forbidden perl extended regular +# expression ERE should be seen in the output unless... +m4_define([m4_pattern_forbid], []) + + +# m4_pattern_allow(ERE) +# --------------------- +# ... that token also matches the allowed extended regular expression ERE. +# Both used via traces, by autom4te post-processing. +m4_define([m4_pattern_allow], []) + + +## --------------------------------- ## +## 11. Dependencies between macros. ## +## --------------------------------- ## + + +# m4_before(THIS-MACRO-NAME, CALLED-MACRO-NAME) +# --------------------------------------------- +# Issue a warning if CALLED-MACRO-NAME was called before THIS-MACRO-NAME. +m4_define([m4_before], +[m4_provide_if([$2], + [m4_warn([syntax], [$2 was called before $1])])]) + + +# m4_require(NAME-TO-CHECK, [BODY-TO-EXPAND = NAME-TO-CHECK]) +# ----------------------------------------------------------- +# If NAME-TO-CHECK has never been expanded (actually, if it is not +# m4_provide'd), expand BODY-TO-EXPAND *before* the current macro +# expansion; follow the expansion with a newline. Once expanded, emit +# it in _m4_divert_dump. Keep track of the m4_require chain in +# _m4_expansion_stack. +# +# The normal cases are: +# +# - NAME-TO-CHECK == BODY-TO-EXPAND +# Which you can use for regular macros with or without arguments, e.g., +# m4_require([AC_PROG_CC], [AC_PROG_CC]) +# m4_require([AC_CHECK_HEADERS(threads.h)], [AC_CHECK_HEADERS(threads.h)]) +# which is just the same as +# m4_require([AC_PROG_CC]) +# m4_require([AC_CHECK_HEADERS(threads.h)]) +# +# - BODY-TO-EXPAND == m4_indir([NAME-TO-CHECK]) +# In the case of macros with irregular names. For instance: +# m4_require([AC_LANG_COMPILER(C)], [indir([AC_LANG_COMPILER(C)])]) +# which means `if the macro named `AC_LANG_COMPILER(C)' (the parens are +# part of the name, it is not an argument) has not been run, then +# call it.' +# Had you used +# m4_require([AC_LANG_COMPILER(C)], [AC_LANG_COMPILER(C)]) +# then m4_require would have tried to expand `AC_LANG_COMPILER(C)', i.e., +# call the macro `AC_LANG_COMPILER' with `C' as argument. +# +# You could argue that `AC_LANG_COMPILER', when it receives an argument +# such as `C' should dispatch the call to `AC_LANG_COMPILER(C)'. But this +# `extension' prevents `AC_LANG_COMPILER' from having actual arguments that +# it passes to `AC_LANG_COMPILER(C)'. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and other overhead on the common path. +m4_define([m4_require], +[m4_ifdef([_m4_expanding($1)], + [m4_fatal([$0: circular dependency of $1])])]dnl +[m4_if(_m4_divert_dump, [], + [m4_fatal([$0($1): cannot be used outside of an ]dnl +m4_if([$0], [m4_require], [[m4_defun]], [[AC_DEFUN]])['d macro])])]dnl +[m4_provide_if([$1], [m4_set_contains([_m4_provide], [$1], + [_m4_require_check([$1], _m4_defn([m4_provide($1)]), [$0])], [m4_ignore])], + [_m4_require_call])([$1], [$2], _m4_divert_dump)]) + + +# _m4_require_call(NAME-TO-CHECK, [BODY-TO-EXPAND = NAME-TO-CHECK], +# DIVERSION-NUMBER) +# ----------------------------------------------------------------- +# If m4_require decides to expand the body, it calls this macro. The +# expansion is placed in DIVERSION-NUMBER. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and other overhead on the common path. +# The use of a witness macro protecting the warning allows aclocal +# to silence any warnings when probing for what macros are required +# and must therefore be located, when using the Autoconf-without-aclocal-m4 +# autom4te language. For more background, see: +# https://lists.gnu.org/archive/html/automake-patches/2012-11/msg00035.html +m4_define([_m4_require_call], +[m4_pushdef([_m4_divert_grow], m4_decr(_m4_divert_grow))]dnl +[m4_pushdef([_m4_diverting([$1])])m4_pushdef([_m4_diverting], [$1])]dnl +[m4_divert_push(_m4_divert_grow, [-])]dnl +[m4_if([$2], [], [$1], [$2]) +m4_provide_if([$1], [m4_set_remove([_m4_provide], [$1])], + [m4_ifndef([m4_require_silent_probe], + [m4_warn([syntax], [$1 is m4_require'd but not m4_defun'd])])])]dnl +[_m4_divert_raw($3)_m4_undivert(_m4_divert_grow)]dnl +[m4_divert_pop(_m4_divert_grow)_m4_popdef([_m4_divert_grow], +[_m4_diverting([$1])], [_m4_diverting])]) + + +# _m4_require_check(NAME-TO-CHECK, OWNER, CALLER) +# ----------------------------------------------- +# NAME-TO-CHECK has been identified as previously expanded in the +# diversion owned by OWNER. If this is a problem, warn on behalf of +# CALLER and return _m4_require_call; otherwise return m4_ignore. +m4_define([_m4_require_check], +[m4_if(_m4_defn([_m4_diverting]), [$2], [m4_ignore], + m4_ifdef([_m4_diverting([$2])], [-]), [-], [m4_warn([syntax], + [$3: `$1' was expanded before it was required +https://www.gnu.org/software/autoconf/manual/autoconf.html#Expanded-Before-Required])_m4_require_call], + [m4_ignore])]) + + +# _m4_divert_grow +# --------------- +# The counter for _m4_require_call. +m4_define([_m4_divert_grow], _m4_divert([GROW])) + + +# m4_expand_once(TEXT, [WITNESS = TEXT]) +# -------------------------------------- +# If TEXT has never been expanded, expand it *here*. Use WITNESS as +# as a memory that TEXT has already been expanded. +m4_define([m4_expand_once], +[m4_provide_if(m4_default_quoted([$2], [$1]), + [], + [m4_provide(m4_default_quoted([$2], [$1]))[]$1])]) + + +# m4_provide(MACRO-NAME) +# ---------------------- +m4_define([m4_provide], +[m4_ifdef([m4_provide($1)], [], +[m4_set_add([_m4_provide], [$1], [m4_define([m4_provide($1)], + m4_ifdef([_m4_diverting], [_m4_defn([_m4_diverting])]))])])]) + + +# m4_provide_if(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) +# ------------------------------------------------------- +# If MACRO-NAME is provided do IF-PROVIDED, else IF-NOT-PROVIDED. +# The purpose of this macro is to provide the user with a means to +# check macros which are provided without letting her know how the +# information is coded. +m4_define([m4_provide_if], +[m4_ifdef([m4_provide($1)], + [$2], [$3])]) + + +## --------------------- ## +## 12. Text processing. ## +## --------------------- ## + + +# m4_cr_letters +# m4_cr_LETTERS +# m4_cr_Letters +# ------------- +m4_define([m4_cr_letters], [abcdefghijklmnopqrstuvwxyz]) +m4_define([m4_cr_LETTERS], [ABCDEFGHIJKLMNOPQRSTUVWXYZ]) +m4_define([m4_cr_Letters], +m4_defn([m4_cr_letters])dnl +m4_defn([m4_cr_LETTERS])dnl +) + + +# m4_cr_digits +# ------------ +m4_define([m4_cr_digits], [0123456789]) + + +# m4_cr_alnum +# ----------- +m4_define([m4_cr_alnum], +m4_defn([m4_cr_Letters])dnl +m4_defn([m4_cr_digits])dnl +) + + +# m4_cr_symbols1 +# m4_cr_symbols2 +# -------------- +m4_define([m4_cr_symbols1], +m4_defn([m4_cr_Letters])dnl +_) + +m4_define([m4_cr_symbols2], +m4_defn([m4_cr_symbols1])dnl +m4_defn([m4_cr_digits])dnl +) + +# m4_cr_all +# --------- +# The character range representing everything, with `-' as the last +# character, since it is special to m4_translit. Use with care, because +# it contains characters special to M4 (fortunately, both ASCII and EBCDIC +# have [] in order, so m4_defn([m4_cr_all]) remains a valid string). It +# also contains characters special to terminals, so it should never be +# displayed in an error message. Also, attempts to map [ and ] to other +# characters via m4_translit must deal with the fact that m4_translit does +# not add quotes to the output. +# +# In EBCDIC, $ is immediately followed by *, which leads to problems +# if m4_cr_all is inlined into a macro definition; so swap them. +# +# It is mainly useful in generating inverted character range maps, for use +# in places where m4_translit is faster than an equivalent m4_bpatsubst; +# the regex `[^a-z]' is equivalent to: +# m4_translit(m4_dquote(m4_defn([m4_cr_all])), [a-z]) +m4_define([m4_cr_all], +m4_translit(m4_dquote(m4_format(m4_dquote(m4_for( + ,1,255,,[[%c]]))m4_for([i],1,255,,[,i]))), [$*-], [*$])-) + + +# _m4_define_cr_not(CATEGORY) +# --------------------------- +# Define m4_cr_not_CATEGORY as the inverse of m4_cr_CATEGORY. +m4_define([_m4_define_cr_not], +[m4_define([m4_cr_not_$1], + m4_translit(m4_dquote(m4_defn([m4_cr_all])), + m4_defn([m4_cr_$1])))]) + + +# m4_cr_not_letters +# m4_cr_not_LETTERS +# m4_cr_not_Letters +# m4_cr_not_digits +# m4_cr_not_alnum +# m4_cr_not_symbols1 +# m4_cr_not_symbols2 +# ------------------ +# Inverse character sets +_m4_define_cr_not([letters]) +_m4_define_cr_not([LETTERS]) +_m4_define_cr_not([Letters]) +_m4_define_cr_not([digits]) +_m4_define_cr_not([alnum]) +_m4_define_cr_not([symbols1]) +_m4_define_cr_not([symbols2]) + + +# m4_newline([STRING]) +# -------------------- +# Expands to a newline, possibly followed by STRING. Exists mostly for +# formatting reasons. +m4_define([m4_newline], [ +$1]) + + +# m4_re_escape(STRING) +# -------------------- +# Escape RE active characters in STRING. +m4_define([m4_re_escape], +[m4_bpatsubst([$1], + [[][*+.?\^$]], [\\\&])]) + + +# m4_re_string +# ------------ +# Regexp for `[a-zA-Z_0-9]*' +# m4_dquote provides literal [] for the character class. +m4_define([m4_re_string], +m4_dquote(m4_defn([m4_cr_symbols2]))dnl +[*]dnl +) + + +# m4_re_word +# ---------- +# Regexp for `[a-zA-Z_][a-zA-Z_0-9]*' +m4_define([m4_re_word], +m4_dquote(m4_defn([m4_cr_symbols1]))dnl +m4_defn([m4_re_string])dnl +) + + +# m4_tolower(STRING) +# m4_toupper(STRING) +# ------------------ +# These macros convert STRING to lowercase or uppercase. +# +# Rather than expand the m4_defn each time, we inline them up front. +m4_define([m4_tolower], +[m4_translit([[$1]], ]m4_dquote(m4_defn([m4_cr_LETTERS]))[, + ]m4_dquote(m4_defn([m4_cr_letters]))[)]) +m4_define([m4_toupper], +[m4_translit([[$1]], ]m4_dquote(m4_defn([m4_cr_letters]))[, + ]m4_dquote(m4_defn([m4_cr_LETTERS]))[)]) + + +# m4_split(STRING, [REGEXP]) +# -------------------------- +# Split STRING into an m4 list of quoted elements. The elements are +# quoted with [ and ]. Beginning spaces and end spaces *are kept*. +# Use m4_strip to remove them. +# +# REGEXP specifies where to split. Default is [\t ]+. +# +# If STRING is empty, the result is an empty list. +# +# Pay attention to the m4_changequotes. When m4 reads the definition of +# m4_split, it still has quotes set to [ and ]. Luckily, these are matched +# in the macro body, so the definition is stored correctly. Use the same +# alternate quotes as m4_noquote; it must be unlikely to appear in $1. +# +# Also, notice that $1 is quoted twice, since we want the result to +# be quoted. Then you should understand that the argument of +# patsubst is -=<{(STRING)}>=- (i.e., with additional -=<{( and )}>=-). +# +# This macro is safe on active symbols, i.e.: +# m4_define(active, ACTIVE) +# m4_split([active active ])end +# => [active], [active], []end +# +# Optimize on regex of ` ' (space), since m4_foreach_w already guarantees +# that the list contains single space separators, and a common case is +# splitting a single-element list. This macro is called frequently, +# so avoid unnecessary dnl inside the definition. +m4_define([m4_split], +[m4_if([$1], [], [], + [$2], [ ], [m4_if(m4_index([$1], [ ]), [-1], [[[$1]]], + [_$0([$1], [$2], [, ])])], + [$2], [], [_$0([$1], [[ ]+], [, ])], + [_$0([$1], [$2], [, ])])]) + +m4_define([_m4_split], +[m4_changequote([-=<{(],[)}>=-])]dnl +[[m4_bpatsubst(-=<{(-=<{($1)}>=-)}>=-, -=<{($2)}>=-, + -=<{(]$3[)}>=-)]m4_changequote([, ])]) + + +# m4_chomp(STRING) +# m4_chomp_all(STRING) +# -------------------- +# Return STRING quoted, but without a trailing newline. m4_chomp +# removes at most one newline, while m4_chomp_all removes all +# consecutive trailing newlines. Embedded newlines are not touched, +# and a trailing backslash-newline leaves just a trailing backslash. +# +# m4_bregexp is slower than m4_index, and we don't always want to +# remove all newlines; hence the two variants. We massage characters +# to give a nicer pattern to match, particularly since m4_bregexp is +# line-oriented. Both versions must guarantee a match, to avoid bugs +# with precision -1 in m4_format in older m4. +m4_define([m4_chomp], +[m4_format([[%.*s]], m4_index(m4_translit([[$1]], [ +/.], [/ ])[./.], [/.]), [$1])]) + +m4_define([m4_chomp_all], +[m4_format([[%.*s]], m4_bregexp(m4_translit([[$1]], [ +/], [/ ]), [/*$]), [$1])]) + + +# m4_flatten(STRING) +# ------------------ +# If STRING contains end of lines, replace them with spaces. If there +# are backslashed end of lines, remove them. This macro is safe with +# active symbols. +# m4_define(active, ACTIVE) +# m4_flatten([active +# act\ +# ive])end +# => active activeend +# +# In m4, m4_bpatsubst is expensive, so first check for a newline. +m4_define([m4_flatten], +[m4_if(m4_index([$1], [ +]), [-1], [[$1]], + [m4_translit(m4_bpatsubst([[[$1]]], [\\ +]), [ +], [ ])])]) + + +# m4_strip(STRING) +# ---------------- +# Expands into STRING with tabs and spaces singled out into a single +# space, and removing leading and trailing spaces. +# +# This macro is robust to active symbols. +# m4_define(active, ACTIVE) +# m4_strip([ active active ])end +# => active activeend +# +# First, notice that we guarantee trailing space. Why? Because regular +# expressions are greedy, and `.* ?' would always group the space into the +# .* portion. The algorithm is simpler by avoiding `?' at the end. The +# algorithm correctly strips everything if STRING is just ` '. +# +# Then notice the second pattern: it is in charge of removing the +# leading/trailing spaces. Why not just `[^ ]'? Because they are +# applied to over-quoted strings, i.e. more or less [STRING], due +# to the limitations of m4_bpatsubsts. So the leading space in STRING +# is the *second* character; equally for the trailing space. +m4_define([m4_strip], +[m4_bpatsubsts([$1 ], + [[ ]+], [ ], + [^. ?\(.*\) .$], [[[\1]]])]) + + +# m4_normalize(STRING) +# -------------------- +# Apply m4_flatten and m4_strip to STRING. +# +# The argument is quoted, so that the macro is robust to active symbols: +# +# m4_define(active, ACTIVE) +# m4_normalize([ act\ +# ive +# active ])end +# => active activeend + +m4_define([m4_normalize], +[m4_strip(m4_flatten([$1]))]) + + +# m4_validate_w(STRING) +# --------------------- +# Expands into m4_normalize(m4_expand([STRING])), but if that is not +# the same as just m4_normalize([STRING]), issue a warning. +# +# This is used in several Autoconf macros that take a +# whitespace-separated list of symbols as an argument. Ideally that +# list would not be expanded before use, but several packages used +# `dnl' to put comments inside those lists, so they must be expanded +# for compatibility's sake. +m4_define([m4_validate_w], +[_m4_validate_w(m4_normalize([$1]), m4_normalize(m4_expand([$1])))]) + +m4_define([_m4_validate_w], +[m4_if([$1], [$2], [], + [m4_warn([obsolete], [whitespace-separated list contains macros; +in a future version of Autoconf they will not be expanded]dnl +m4_if(m4_bregexp([$1], [\bdn[l]\b]), -1, [], [ +note: `dn@&t@l' is a macro]))])dnl +[$2]]) + + +# m4_join(SEP, ARG1, ARG2...) +# --------------------------- +# Produce ARG1SEPARG2...SEPARGn. Avoid back-to-back SEP when a given ARG +# is the empty string. No expansion is performed on SEP or ARGs. +# +# Since the number of arguments to join can be arbitrarily long, we +# want to avoid having more than one $@ in the macro definition; +# otherwise, the expansion would require twice the memory of the already +# long list. Hence, m4_join merely looks for the first non-empty element, +# and outputs just that element; while _m4_join looks for all non-empty +# elements, and outputs them following a separator. The final trick to +# note is that we decide between recursing with $0 or _$0 based on the +# nested m4_if ending with `_'. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_join], +[m4_if([$#], [1], [], + [$#], [2], [[$2]], + [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift2($@))])]) +m4_define([_m4_join], +[m4_if([$#$2], [2], [], + [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift2($@))])]) + +# m4_joinall(SEP, ARG1, ARG2...) +# ------------------------------ +# Produce ARG1SEPARG2...SEPARGn. An empty ARG results in back-to-back SEP. +# No expansion is performed on SEP or ARGs. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_joinall], [[$2]_$0([$1], m4_shift($@))]) +m4_define([_m4_joinall], +[m4_if([$#], [2], [], [[$1$3]$0([$1], m4_shift2($@))])]) + +# m4_combine([SEPARATOR], PREFIX-LIST, [INFIX], SUFFIX...) +# -------------------------------------------------------- +# Produce the pairwise combination of every element in the quoted, +# comma-separated PREFIX-LIST with every element from the SUFFIX arguments. +# Each pair is joined with INFIX, and pairs are separated by SEPARATOR. +# No expansion occurs on SEPARATOR, INFIX, or elements of either list. +# +# For example: +# m4_combine([, ], [[a], [b], [c]], [-], [1], [2], [3]) +# => a-1, a-2, a-3, b-1, b-2, b-3, c-1, c-2, c-3 +# +# This definition is a bit hairy; the thing to realize is that we want +# to construct m4_map_args_sep([[prefix$3]], [], [[$1]], m4_shift3($@)) +# as the inner loop, using each prefix generated by the outer loop, +# and without recalculating m4_shift3 every outer iteration. +m4_define([m4_combine], +[m4_if([$2], [], [], m4_eval([$# > 3]), [1], +[m4_map_args_sep([m4_map_args_sep(m4_dquote(], [)[[$3]], [], [[$1]],]]]dnl +[m4_dquote(m4_dquote(m4_shift3($@)))[[)], [[$1]], $2)])]) + + +# m4_append(MACRO-NAME, STRING, [SEPARATOR]) +# ------------------------------------------ +# Redefine MACRO-NAME to hold its former content plus `SEPARATOR`'STRING' +# at the end. It is valid to use this macro with MACRO-NAME undefined, +# in which case no SEPARATOR is added. Be aware that the criterion is +# `not being defined', and not `not being empty'. +# +# Note that neither STRING nor SEPARATOR are expanded here; rather, when +# you expand MACRO-NAME, they will be expanded at that point in time. +# +# This macro is robust to active symbols. It can be used to grow +# strings. +# +# | m4_define(active, ACTIVE)dnl +# | m4_append([sentence], [This is an])dnl +# | m4_append([sentence], [ active ])dnl +# | m4_append([sentence], [symbol.])dnl +# | sentence +# | m4_undefine([active])dnl +# | sentence +# => This is an ACTIVE symbol. +# => This is an active symbol. +# +# It can be used to define hooks. +# +# | m4_define(active, ACTIVE)dnl +# | m4_append([hooks], [m4_define([act1], [act2])])dnl +# | m4_append([hooks], [m4_define([act2], [active])])dnl +# | m4_undefine([active])dnl +# | act1 +# | hooks +# | act1 +# => act1 +# => +# => active +# +# It can also be used to create lists, although this particular usage was +# broken prior to autoconf 2.62. +# | m4_append([list], [one], [, ])dnl +# | m4_append([list], [two], [, ])dnl +# | m4_append([list], [three], [, ])dnl +# | list +# | m4_dquote(list) +# => one, two, three +# => [one],[two],[three] +# +# Note that m4_append can benefit from amortized O(n) m4 behavior, if +# the underlying m4 implementation is smart enough to avoid copying existing +# contents when enlarging a macro's definition into any pre-allocated storage +# (m4 1.4.x unfortunately does not implement this optimization). We do +# not implement m4_prepend, since it is inherently O(n^2) (pre-allocated +# storage only occurs at the end of a macro, so the existing contents must +# always be moved). +# +# Use _m4_defn for speed. +m4_define([m4_append], +[m4_define([$1], m4_ifdef([$1], [_m4_defn([$1])[$3]])[$2])]) + + +# m4_append_uniq(MACRO-NAME, STRING, [SEPARATOR], [IF-UNIQ], [IF-DUP]) +# -------------------------------------------------------------------- +# Like `m4_append', but append only if not yet present. Additionally, +# expand IF-UNIQ if STRING was appended, or IF-DUP if STRING was already +# present. Also, warn if SEPARATOR is not empty and occurs within STRING, +# as the algorithm no longer guarantees uniqueness. +# +# Note that while m4_append can be O(n) (depending on the quality of the +# underlying M4 implementation), m4_append_uniq is inherently O(n^2) +# because each append operation searches the entire string. +m4_define([m4_append_uniq], +[m4_ifval([$3], [m4_if(m4_index([$2], [$3]), [-1], [], + [m4_warn([syntax], + [$0: `$2' contains `$3'])])])_$0($@)]) +m4_define([_m4_append_uniq], +[m4_ifdef([$1], + [m4_if(m4_index([$3]_m4_defn([$1])[$3], [$3$2$3]), [-1], + [m4_append([$1], [$2], [$3])$4], [$5])], + [m4_define([$1], [$2])$4])]) + +# m4_append_uniq_w(MACRO-NAME, STRINGS) +# ------------------------------------- +# For each of the words in the whitespace separated list STRINGS, append +# only the unique strings to the definition of MACRO-NAME. +# +# Use _m4_defn for speed. +m4_define([m4_append_uniq_w], +[m4_map_args_w([$2], [_m4_append_uniq([$1],], [, [ ])])]) + + +# m4_escape(STRING) +# ----------------- +# Output quoted STRING, but with embedded #, $, [ and ] turned into +# quadrigraphs. +# +# It is faster to check if STRING is already good using m4_translit +# than to blindly perform four m4_bpatsubst. +# +# Because the translit is stripping quotes, it must also neutralize +# anything that might be in a macro name, as well as comments, commas, +# and parentheses. All the problem characters are unified so that a +# single m4_index can scan the result. +# +# Rather than expand m4_defn every time m4_escape is expanded, we +# inline its expansion up front. +m4_define([m4_escape], +[m4_if(m4_index(m4_translit([$1], + [[]#,()]]m4_dquote(m4_defn([m4_cr_symbols2]))[, [$$$]), [$]), + [-1], [m4_echo], [_$0])([$1])]) + +m4_define([_m4_escape], +[m4_changequote([-=<{(],[)}>=-])]dnl +[m4_bpatsubst(m4_bpatsubst(m4_bpatsubst(m4_bpatsubst( + -=<{(-=<{(-=<{(-=<{(-=<{($1)}>=-)}>=-)}>=-)}>=-)}>=-, + -=<{(#)}>=-, -=<{(@%:@)}>=-), + -=<{(\[)}>=-, -=<{(@<:@)}>=-), + -=<{(\])}>=-, -=<{(@:>@)}>=-), + -=<{(\$)}>=-, -=<{(@S|@)}>=-)m4_changequote([,])]) + + +# m4_text_wrap(STRING, [PREFIX], [FIRST-PREFIX], [WIDTH]) +# ------------------------------------------------------- +# Expands into STRING wrapped to hold in WIDTH columns (default = 79). +# If PREFIX is given, each line is prefixed with it. If FIRST-PREFIX is +# specified, then the first line is prefixed with it. As a special case, +# if the length of FIRST-PREFIX is greater than that of PREFIX, then +# FIRST-PREFIX will be left alone on the first line. +# +# No expansion occurs on the contents STRING, PREFIX, or FIRST-PREFIX, +# although quadrigraphs are correctly recognized. More precisely, +# you may redefine m4_qlen to recognize whatever escape sequences that +# you will post-process. +# +# Typical outputs are: +# +# m4_text_wrap([Short string */], [ ], [/* ], 20) +# => /* Short string */ +# +# m4_text_wrap([Much longer string */], [ ], [/* ], 20) +# => /* Much longer +# => string */ +# +# m4_text_wrap([Short doc.], [ ], [ --short ], 30) +# => --short Short doc. +# +# m4_text_wrap([Short doc.], [ ], [ --too-wide ], 30) +# => --too-wide +# => Short doc. +# +# m4_text_wrap([Super long documentation.], [ ], [ --too-wide ], 30) +# => --too-wide +# => Super long +# => documentation. +# +# FIXME: there is no checking of a longer PREFIX than WIDTH, but do +# we really want to bother with people trying each single corner +# of a software? +# +# This macro does not leave a trailing space behind the last word of a line, +# which complicates it a bit. The algorithm is otherwise stupid and simple: +# all the words are preceded by m4_Separator which is defined to empty for +# the first word, and then ` ' (single space) for all the others. +# +# The algorithm uses a helper that uses $2 through $4 directly, rather than +# using local variables, to avoid m4_defn overhead, or expansion swallowing +# any $. It also bypasses m4_popdef overhead with _m4_popdef since no user +# macro expansion occurs in the meantime. Also, the definition is written +# with m4_do, to avoid time wasted on dnl during expansion (since this is +# already a time-consuming macro). +m4_define([m4_text_wrap], +[_$0(m4_escape([$1]), [$2], m4_default_quoted([$3], [$2]), + m4_default_quoted([$4], [79]))]) + +m4_define([_m4_text_wrap], +m4_do(dnl set up local variables, to avoid repeated calculations +[[m4_pushdef([m4_Indent], m4_qlen([$2]))]], +[[m4_pushdef([m4_Cursor], m4_qlen([$3]))]], +[[m4_pushdef([m4_Separator], [m4_define([m4_Separator], [ ])])]], +dnl expand the first prefix, then check its length vs. regular prefix +dnl same length: nothing special +dnl prefix1 longer: output on line by itself, and reset cursor +dnl prefix1 shorter: pad to length of prefix, and reset cursor +[[[$3]m4_cond([m4_Cursor], m4_Indent, [], + [m4_eval(m4_Cursor > m4_Indent)], [1], [ +[$2]m4_define([m4_Cursor], m4_Indent)], + [m4_format([%*s], m4_max([0], + m4_eval(m4_Indent - m4_Cursor)), [])m4_define([m4_Cursor], m4_Indent)])]], +dnl now, for each word, compute the cursor after the word is output, then +dnl check if the cursor would exceed the wrap column +dnl if so, reset cursor, and insert newline and prefix +dnl if not, insert the separator (usually a space) +dnl either way, insert the word +[[m4_map_args_w([$1], [$0_word(], [, [$2], [$4])])]], +dnl finally, clean up the local variables +[[_m4_popdef([m4_Separator], [m4_Cursor], [m4_Indent])]])) + +m4_define([_m4_text_wrap_word], +[m4_define([m4_Cursor], m4_eval(m4_Cursor + m4_qlen([$1]) + 1))]dnl +[m4_if(m4_eval(m4_Cursor > ([$3])), + [1], [m4_define([m4_Cursor], m4_eval(m4_Indent + m4_qlen([$1]) + 1)) +[$2]], + [m4_Separator[]])[$1]]) + +# m4_text_box(MESSAGE, [FRAME-CHARACTER = `-']) +# --------------------------------------------- +# Turn MESSAGE into: +# ## ------- ## +# ## MESSAGE ## +# ## ------- ## +# using FRAME-CHARACTER in the border. +# +# Quadrigraphs are correctly recognized. More precisely, you may +# redefine m4_qlen to recognize whatever escape sequences that you +# will post-process. +m4_define([m4_text_box], +[m4_pushdef([m4_Border], + m4_translit(m4_format([[[%*s]]], m4_decr(m4_qlen(_m4_expand([$1 +]))), []), [ ], m4_default_quoted([$2], [-])))]dnl +[[##] _m4_defn([m4_Border]) [##] +[##] $1 [##] +[##] _m4_defn([m4_Border]) [##]_m4_popdef([m4_Border])]) + + +# m4_qlen(STRING) +# --------------- +# Expands to the length of STRING after autom4te converts all quadrigraphs. +# +# If you use some other means of post-processing m4 output rather than +# autom4te, then you may redefine this macro to recognize whatever +# escape sequences your post-processor will handle. For that matter, +# m4_define([m4_qlen], m4_defn([m4_len])) is sufficient if you don't +# do any post-processing. +# +# Avoid bpatsubsts for the common case of no quadrigraphs. Cache +# results, as configure scripts tend to ask about lengths of common +# strings like `/*' and `*/' rather frequently. Minimize the number +# of times that $1 occurs in m4_qlen, so there is less text to parse +# on a cache hit. +m4_define([m4_qlen], +[m4_ifdef([$0-$1], [_m4_defn([$0-]], [_$0(])[$1])]) +m4_define([_m4_qlen], +[m4_define([m4_qlen-$1], +m4_if(m4_index([$1], [@]), [-1], [m4_len([$1])], + [m4_len(m4_bpatsubst([[$1]], + [@\(\(<:\|:>\|S|\|%:\|\{:\|:\}\)\(@\)\|&t@\)], + [\3]))]))_m4_defn([m4_qlen-$1])]) + +# m4_copyright_condense(TEXT) +# --------------------------- +# Condense the copyright notice in TEXT to only display the final +# year, wrapping the results to fit in 80 columns. +m4_define([m4_copyright_condense], +[m4_text_wrap(m4_bpatsubst(m4_flatten([[$1]]), +[(C)[- ,0-9]*\([1-9][0-9][0-9][0-9]\)], [(C) \1]))]) + +## ----------------------- ## +## 13. Number processing. ## +## ----------------------- ## + +# m4_cmp(A, B) +# ------------ +# Compare two integer expressions. +# A < B -> -1 +# A = B -> 0 +# A > B -> 1 +m4_define([m4_cmp], +[m4_eval((([$1]) > ([$2])) - (([$1]) < ([$2])))]) + + +# m4_list_cmp(A, B) +# ----------------- +# +# Compare the two lists of integer expressions A and B. For instance: +# m4_list_cmp([1, 0], [1]) -> 0 +# m4_list_cmp([1, 0], [1, 0]) -> 0 +# m4_list_cmp([1, 2], [1, 0]) -> 1 +# m4_list_cmp([1, 2, 3], [1, 2]) -> 1 +# m4_list_cmp([1, 2, -3], [1, 2]) -> -1 +# m4_list_cmp([1, 0], [1, 2]) -> -1 +# m4_list_cmp([1], [1, 2]) -> -1 +# m4_define([xa], [oops])dnl +# m4_list_cmp([[0xa]], [5+5]) -> 0 +# +# Rather than face the overhead of m4_case, we use a helper function whose +# expansion includes the name of the macro to invoke on the tail, either +# m4_ignore or m4_unquote. This is particularly useful when comparing +# long lists, since less text is being expanded for deciding when to end +# recursion. The recursion is between a pair of macros that alternate +# which list is trimmed by one element; this is more efficient than +# calling m4_cdr on both lists from a single macro. Guarantee exactly +# one expansion of both lists' side effects. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_list_cmp], +[_$0_raw(m4_dquote($1), m4_dquote($2))]) + +m4_define([_m4_list_cmp_raw], +[m4_if([$1], [$2], [0], [_m4_list_cmp_1([$1], $2)])]) + +m4_define([_m4_list_cmp], +[m4_if([$1], [], [0m4_ignore], [$2], [0], [m4_unquote], [$2m4_ignore])]) + +m4_define([_m4_list_cmp_1], +[_m4_list_cmp_2([$2], [m4_shift2($@)], $1)]) + +m4_define([_m4_list_cmp_2], +[_m4_list_cmp([$1$3], m4_cmp([$3+0], [$1+0]))( + [_m4_list_cmp_1(m4_dquote(m4_shift3($@)), $2)])]) + +# m4_max(EXPR, ...) +# m4_min(EXPR, ...) +# ----------------- +# Return the decimal value of the maximum (or minimum) in a series of +# integer expressions. +# +# M4 1.4.x doesn't provide ?:. Hence this huge m4_eval. Avoid m4_eval +# if both arguments are identical, but be aware of m4_max(0xa, 10) (hence +# the use of <=, not just <, in the second multiply). +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_max], +[m4_if([$#], [0], [m4_fatal([too few arguments to $0])], + [$#], [1], [m4_eval([$1])], + [$#$1], [2$2], [m4_eval([$1])], + [$#], [2], [_$0($@)], + [_m4_minmax([_$0], $@)])]) + +m4_define([_m4_max], +[m4_eval((([$1]) > ([$2])) * ([$1]) + (([$1]) <= ([$2])) * ([$2]))]) + +m4_define([m4_min], +[m4_if([$#], [0], [m4_fatal([too few arguments to $0])], + [$#], [1], [m4_eval([$1])], + [$#$1], [2$2], [m4_eval([$1])], + [$#], [2], [_$0($@)], + [_m4_minmax([_$0], $@)])]) + +m4_define([_m4_min], +[m4_eval((([$1]) < ([$2])) * ([$1]) + (([$1]) >= ([$2])) * ([$2]))]) + +# _m4_minmax(METHOD, ARG1, ARG2...) +# --------------------------------- +# Common recursion code for m4_max and m4_min. METHOD must be _m4_max +# or _m4_min, and there must be at least two arguments to combine. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([_m4_minmax], +[m4_if([$#], [3], [$1([$2], [$3])], + [$0([$1], $1([$2], [$3]), m4_shift3($@))])]) + + +# m4_sign(A) +# ---------- +# The sign of the integer expression A. +m4_define([m4_sign], +[m4_eval((([$1]) > 0) - (([$1]) < 0))]) + + + +## ------------------------ ## +## 14. Version processing. ## +## ------------------------ ## + + +# m4_version_unletter(VERSION) +# ---------------------------- +# Normalize beta version numbers with letters to numeric expressions, which +# can then be handed to m4_eval for the purpose of comparison. +# +# Nl -> (N+1).-1.(l#) +# +# for example: +# [2.14a] -> [0,2,14+1,-1,[0r36:a]] -> 2.15.-1.10 +# [2.14b] -> [0,2,15+1,-1,[0r36:b]] -> 2.15.-1.11 +# [2.61aa.b] -> [0,2.61,1,-1,[0r36:aa],+1,-1,[0r36:b]] -> 2.62.-1.370.1.-1.11 +# [08] -> [0,[0r10:0]8] -> 8 +# +# This macro expects reasonable version numbers, but can handle double +# letters and does not expand any macros. Original version strings can +# use both `.' and `-' separators. +# +# Inline constant expansions, to avoid m4_defn overhead. +# _m4_version_unletter is the real workhorse used by m4_version_compare, +# but since [0r36:a] and commas are less readable than 10 and dots, we +# provide a wrapper for human use. +m4_define([m4_version_unletter], +[m4_substr(m4_map_args([.m4_eval], m4_unquote(_$0([$1]))), [3])]) +m4_define([_m4_version_unletter], +[m4_bpatsubst(m4_bpatsubst(m4_translit([[[[0,$1]]]], [.-], [,,]),]dnl +m4_dquote(m4_dquote(m4_defn([m4_cr_Letters])))[[+], + [+1,-1,[0r36:\&]]), [,0], [,[0r10:0]])]) + + +# m4_version_compare(VERSION-1, VERSION-2) +# ---------------------------------------- +# Compare the two version numbers and expand into +# -1 if VERSION-1 < VERSION-2 +# 0 if = +# 1 if > +# +# Since _m4_version_unletter does not output side effects, we can +# safely bypass the overhead of m4_version_cmp. +m4_define([m4_version_compare], +[_m4_list_cmp_raw(_m4_version_unletter([$1]), _m4_version_unletter([$2]))]) + + +# m4_PACKAGE_NAME +# m4_PACKAGE_TARNAME +# m4_PACKAGE_VERSION +# m4_PACKAGE_STRING +# m4_PACKAGE_BUGREPORT +# -------------------- +# If m4sugar/version.m4 is present, then define version strings. This +# file is optional, provided by Autoconf but absent in Bison. +m4_sinclude([m4sugar/version.m4]) + + +# m4_version_prereq(VERSION, [IF-OK], [IF-NOT = FAIL]) +# ---------------------------------------------------- +# Check this Autoconf version against VERSION. +m4_define([m4_version_prereq], +m4_ifdef([m4_PACKAGE_VERSION], +[[m4_if(m4_version_compare(]m4_dquote(m4_defn([m4_PACKAGE_VERSION]))[, [$1]), + [-1], + [m4_default([$3], + [m4_fatal([Autoconf version $1 or higher is required], + [63])])], + [$2])]], +[[m4_fatal([m4sugar/version.m4 not found])]])) + + +## ------------------ ## +## 15. Set handling. ## +## ------------------ ## + +# Autoconf likes to create arbitrarily large sets; for example, as of +# this writing, the configure.ac for coreutils tracks a set of more +# than 400 AC_SUBST. How do we track all of these set members, +# without introducing duplicates? We could use m4_append_uniq, with +# the set NAME residing in the contents of the macro NAME. +# Unfortunately, m4_append_uniq is quadratic for set creation, because +# it costs O(n) to search the string for each of O(n) insertions; not +# to mention that with m4 1.4.x, even using m4_append is slow, costing +# O(n) rather than O(1) per insertion. Other set operations, not used +# by Autoconf but still possible by manipulation of the definition +# tracked in macro NAME, include O(n) deletion of one element and O(n) +# computation of set size. Because the set is exposed to the user via +# the definition of a single macro, we cannot cache any data about the +# set without risking the cache being invalidated by the user +# redefining NAME. +# +# Can we do better? Yes, because m4 gives us an O(1) search function +# for free: ifdef. Additionally, even m4 1.4.x gives us an O(1) +# insert operation for free: pushdef. But to use these, we must +# represent the set via a group of macros; to keep the set consistent, +# we must hide the set so that the user can only manipulate it through +# accessor macros. The contents of the set are maintained through two +# access points; _m4_set([name]) is a pushdef stack of values in the +# set, useful for O(n) traversal of the set contents; while the +# existence of _m4_set([name],value) with no particular value is +# useful for O(1) querying of set membership. And since the user +# cannot externally manipulate the set, we are free to add additional +# caching macros for other performance improvements. Deletion can be +# O(1) per element rather than O(n), by reworking the definition of +# _m4_set([name],value) to be 0 or 1 based on current membership, and +# adding _m4_set_cleanup(name) to defer the O(n) cleanup of +# _m4_set([name]) until we have another reason to do an O(n) +# traversal. The existence of _m4_set_cleanup(name) can then be used +# elsewhere to determine if we must dereference _m4_set([name],value), +# or assume that definition implies set membership. Finally, size can +# be tracked in an O(1) fashion with _m4_set_size(name). +# +# The quoting in _m4_set([name],value) is chosen so that there is no +# ambiguity with a set whose name contains a comma, and so that we can +# supply the value via _m4_defn([_m4_set([name])]) without needing any +# quote manipulation. + +# m4_set_add(SET, VALUE, [IF-UNIQ], [IF-DUP]) +# ------------------------------------------- +# Add VALUE as an element of SET. Expand IF-UNIQ on the first +# addition, and IF-DUP if it is already in the set. Addition of one +# element is O(1), such that overall set creation is O(n). +# +# We do not want to add a duplicate for a previously deleted but +# unpruned element, but it is just as easy to check existence directly +# as it is to query _m4_set_cleanup($1). +m4_define([m4_set_add], +[m4_ifdef([_m4_set([$1],$2)], + [m4_if(m4_indir([_m4_set([$1],$2)]), [0], + [m4_define([_m4_set([$1],$2)], + [1])_m4_set_size([$1], [m4_incr])$3], [$4])], + [m4_define([_m4_set([$1],$2)], + [1])m4_pushdef([_m4_set([$1])], + [$2])_m4_set_size([$1], [m4_incr])$3])]) + +# m4_set_add_all(SET, VALUE...) +# ----------------------------- +# Add each VALUE into SET. This is O(n) in the number of VALUEs, and +# can be faster than calling m4_set_add for each VALUE. +# +# Implement two recursion helpers; the check variant is slower but +# handles the case where an element has previously been removed but +# not pruned. The recursion helpers ignore their second argument, so +# that we can use the faster m4_shift2 and 2 arguments, rather than +# _m4_shift2 and one argument, as the signal to end recursion. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_set_add_all], +[m4_define([_m4_set_size($1)], m4_eval(m4_set_size([$1]) + + m4_len(m4_ifdef([_m4_set_cleanup($1)], [_$0_check], [_$0])([$1], $@))))]) + +m4_define([_m4_set_add_all], +[m4_if([$#], [2], [], + [m4_ifdef([_m4_set([$1],$3)], [], + [m4_define([_m4_set([$1],$3)], [1])m4_pushdef([_m4_set([$1])], + [$3])-])$0([$1], m4_shift2($@))])]) + +m4_define([_m4_set_add_all_check], +[m4_if([$#], [2], [], + [m4_set_add([$1], [$3])$0([$1], m4_shift2($@))])]) + +# m4_set_contains(SET, VALUE, [IF-PRESENT], [IF-ABSENT]) +# ------------------------------------------------------ +# Expand IF-PRESENT if SET contains VALUE, otherwise expand IF-ABSENT. +# This is always O(1). +m4_define([m4_set_contains], +[m4_ifdef([_m4_set_cleanup($1)], + [m4_if(m4_ifdef([_m4_set([$1],$2)], + [m4_indir([_m4_set([$1],$2)])], [0]), [1], [$3], [$4])], + [m4_ifdef([_m4_set([$1],$2)], [$3], [$4])])]) + +# m4_set_contents(SET, [SEP]) +# --------------------------- +# Expand to a single string containing all the elements in SET, +# separated by SEP, without modifying SET. No provision is made for +# disambiguating set elements that contain non-empty SEP as a +# sub-string, or for recognizing a set that contains only the empty +# string. Order of the output is not guaranteed. If any elements +# have been previously removed from the set, this action will prune +# the unused memory. This is O(n) in the size of the set before +# pruning. +# +# Use _m4_popdef for speed. The existence of _m4_set_cleanup($1) +# determines which version of _1 helper we use. +m4_define([m4_set_contents], +[m4_set_map_sep([$1], [], [], [[$2]])]) + +# _m4_set_contents_1(SET) +# _m4_set_contents_1c(SET) +# _m4_set_contents_2(SET, [PRE], [POST], [SEP]) +# --------------------------------------------- +# Expand to a list of quoted elements currently in the set, each +# surrounded by PRE and POST, and moving SEP in front of PRE on +# recursion. To avoid nesting limit restrictions, the algorithm must +# be broken into two parts; _1 destructively copies the stack in +# reverse into _m4_set_($1), producing no output; then _2 +# destructively copies _m4_set_($1) back into the stack in reverse. +# If no elements were deleted, then this visits the set in the order +# that elements were inserted. Behavior is undefined if PRE/POST/SEP +# tries to recursively list or modify SET in any way other than +# calling m4_set_remove on the current element. Use _1 if all entries +# in the stack are guaranteed to be in the set, and _1c to prune +# removed entries. Uses _m4_defn and _m4_popdef for speed. +m4_define([_m4_set_contents_1], +[_m4_stack_reverse([_m4_set([$1])], [_m4_set_($1)])]) + +m4_define([_m4_set_contents_1c], +[m4_ifdef([_m4_set([$1])], + [m4_set_contains([$1], _m4_defn([_m4_set([$1])]), + [m4_pushdef([_m4_set_($1)], _m4_defn([_m4_set([$1])]))], + [_m4_popdef([_m4_set([$1],]_m4_defn( + [_m4_set([$1])])[)])])_m4_popdef([_m4_set([$1])])$0([$1])], + [_m4_popdef([_m4_set_cleanup($1)])])]) + +m4_define([_m4_set_contents_2], +[_m4_stack_reverse([_m4_set_($1)], [_m4_set([$1])], + [$2[]_m4_defn([_m4_set_($1)])$3], [$4[]])]) + +# m4_set_delete(SET) +# ------------------ +# Delete all elements in SET, and reclaim any memory occupied by the +# set. This is O(n) in the set size. +# +# Use _m4_defn and _m4_popdef for speed. +m4_define([m4_set_delete], +[m4_ifdef([_m4_set([$1])], + [_m4_popdef([_m4_set([$1],]_m4_defn([_m4_set([$1])])[)], + [_m4_set([$1])])$0([$1])], + [m4_ifdef([_m4_set_cleanup($1)], + [_m4_popdef([_m4_set_cleanup($1)])])m4_ifdef( + [_m4_set_size($1)], + [_m4_popdef([_m4_set_size($1)])])])]) + +# m4_set_difference(SET1, SET2) +# ----------------------------- +# Produce a LIST of quoted elements that occur in SET1 but not SET2. +# Output a comma prior to any elements, to distinguish the empty +# string from no elements. This can be directly used as a series of +# arguments, such as for m4_join, or wrapped inside quotes for use in +# m4_foreach. Order of the output is not guaranteed. +# +# Short-circuit the idempotence relation. +m4_define([m4_set_difference], +[m4_if([$1], [$2], [], [m4_set_map_sep([$1], [_$0([$2],], [)])])]) + +m4_define([_m4_set_difference], +[m4_set_contains([$1], [$2], [], [,[$2]])]) + +# m4_set_dump(SET, [SEP]) +# ----------------------- +# Expand to a single string containing all the elements in SET, +# separated by SEP, then delete SET. In general, if you only need to +# list the contents once, this is faster than m4_set_contents. No +# provision is made for disambiguating set elements that contain +# non-empty SEP as a sub-string. Order of the output is not +# guaranteed. This is O(n) in the size of the set before pruning. +# +# Use _m4_popdef for speed. Use existence of _m4_set_cleanup($1) to +# decide if more expensive recursion is needed. +m4_define([m4_set_dump], +[m4_ifdef([_m4_set_size($1)], + [_m4_popdef([_m4_set_size($1)])])m4_ifdef([_m4_set_cleanup($1)], + [_$0_check], [_$0])([$1], [], [$2])]) + +# _m4_set_dump(SET, [SEP], [PREP]) +# _m4_set_dump_check(SET, [SEP], [PREP]) +# -------------------------------------- +# Print SEP and the current element, then delete the element and +# recurse with empty SEP changed to PREP. The check variant checks +# whether the element has been previously removed. Use _m4_defn and +# _m4_popdef for speed. +m4_define([_m4_set_dump], +[m4_ifdef([_m4_set([$1])], + [[$2]_m4_defn([_m4_set([$1])])_m4_popdef([_m4_set([$1],]_m4_defn( + [_m4_set([$1])])[)], [_m4_set([$1])])$0([$1], [$2$3])])]) + +m4_define([_m4_set_dump_check], +[m4_ifdef([_m4_set([$1])], + [m4_set_contains([$1], _m4_defn([_m4_set([$1])]), + [[$2]_m4_defn([_m4_set([$1])])])_m4_popdef( + [_m4_set([$1],]_m4_defn([_m4_set([$1])])[)], + [_m4_set([$1])])$0([$1], [$2$3])], + [_m4_popdef([_m4_set_cleanup($1)])])]) + +# m4_set_empty(SET, [IF-EMPTY], [IF-ELEMENTS]) +# -------------------------------------------- +# Expand IF-EMPTY if SET has no elements, otherwise IF-ELEMENTS. +m4_define([m4_set_empty], +[m4_ifdef([_m4_set_size($1)], + [m4_if(m4_indir([_m4_set_size($1)]), [0], [$2], [$3])], [$2])]) + +# m4_set_foreach(SET, VAR, ACTION) +# -------------------------------- +# For each element of SET, define VAR to the element and expand +# ACTION. ACTION should not recursively list SET's contents, add +# elements to SET, nor delete any element from SET except the one +# currently in VAR. The order that the elements are visited in is not +# guaranteed. This is faster than the corresponding m4_foreach([VAR], +# m4_indir([m4_dquote]m4_set_listc([SET])), [ACTION]) +m4_define([m4_set_foreach], +[m4_pushdef([$2])m4_set_map_sep([$1], +[m4_define([$2],], [)$3])m4_popdef([$2])]) + +# m4_set_intersection(SET1, SET2) +# ------------------------------- +# Produce a LIST of quoted elements that occur in both SET1 or SET2. +# Output a comma prior to any elements, to distinguish the empty +# string from no elements. This can be directly used as a series of +# arguments, such as for m4_join, or wrapped inside quotes for use in +# m4_foreach. Order of the output is not guaranteed. +# +# Iterate over the smaller set, and short-circuit the idempotence +# relation. +m4_define([m4_set_intersection], +[m4_if([$1], [$2], [m4_set_listc([$1])], + m4_eval(m4_set_size([$2]) < m4_set_size([$1])), [1], [$0([$2], [$1])], + [m4_set_map_sep([$1], [_$0([$2],], [)])])]) + +m4_define([_m4_set_intersection], +[m4_set_contains([$1], [$2], [,[$2]])]) + +# m4_set_list(SET) +# m4_set_listc(SET) +# ----------------- +# Produce a LIST of quoted elements of SET. This can be directly used +# as a series of arguments, such as for m4_join or m4_set_add_all, or +# wrapped inside quotes for use in m4_foreach or m4_map. With +# m4_set_list, there is no way to distinguish an empty set from a set +# containing only the empty string; with m4_set_listc, a leading comma +# is output if there are any elements. +m4_define([m4_set_list], +[m4_set_map_sep([$1], [], [], [,])]) + +m4_define([m4_set_listc], +[m4_set_map_sep([$1], [,])]) + +# m4_set_map(SET, ACTION) +# ----------------------- +# For each element of SET, expand ACTION with a single argument of the +# current element. ACTION should not recursively list SET's contents, +# add elements to SET, nor delete any element from SET except the one +# passed as an argument. The order that the elements are visited in +# is not guaranteed. This is faster than either of the corresponding +# m4_map_args([ACTION]m4_set_listc([SET])) +# m4_set_foreach([SET], [VAR], [ACTION(m4_defn([VAR]))]) +m4_define([m4_set_map], +[m4_set_map_sep([$1], [$2(], [)])]) + +# m4_set_map_sep(SET, [PRE], [POST], [SEP]) +# ----------------------------------------- +# For each element of SET, expand PRE[value]POST[], and expand SEP +# between elements. +m4_define([m4_set_map_sep], +[m4_ifdef([_m4_set_cleanup($1)], [_m4_set_contents_1c], + [_m4_set_contents_1])([$1])_m4_set_contents_2($@)]) + +# m4_set_remove(SET, VALUE, [IF-PRESENT], [IF-ABSENT]) +# ---------------------------------------------------- +# If VALUE is an element of SET, delete it and expand IF-PRESENT. +# Otherwise expand IF-ABSENT. Deleting a single value is O(1), +# although it leaves memory occupied until the next O(n) traversal of +# the set which will compact the set. +# +# Optimize if the element being removed is the most recently added, +# since defining _m4_set_cleanup($1) slows down so many other macros. +# In particular, this plays well with m4_set_foreach and m4_set_map. +m4_define([m4_set_remove], +[m4_set_contains([$1], [$2], [_m4_set_size([$1], + [m4_decr])m4_if(_m4_defn([_m4_set([$1])]), [$2], + [_m4_popdef([_m4_set([$1],$2)], [_m4_set([$1])])], + [m4_define([_m4_set_cleanup($1)])m4_define( + [_m4_set([$1],$2)], [0])])$3], [$4])]) + +# m4_set_size(SET) +# ---------------- +# Expand to the number of elements currently in SET. This operation +# is O(1), and thus more efficient than m4_count(m4_set_list([SET])). +m4_define([m4_set_size], +[m4_ifdef([_m4_set_size($1)], [m4_indir([_m4_set_size($1)])], [0])]) + +# _m4_set_size(SET, ACTION) +# ------------------------- +# ACTION must be either m4_incr or m4_decr, and the size of SET is +# changed accordingly. If the set is empty, ACTION must not be +# m4_decr. +m4_define([_m4_set_size], +[m4_define([_m4_set_size($1)], + m4_ifdef([_m4_set_size($1)], [$2(m4_indir([_m4_set_size($1)]))], + [1]))]) + +# m4_set_union(SET1, SET2) +# ------------------------ +# Produce a LIST of double quoted elements that occur in either SET1 +# or SET2, without duplicates. Output a comma prior to any elements, +# to distinguish the empty string from no elements. This can be +# directly used as a series of arguments, such as for m4_join, or +# wrapped inside quotes for use in m4_foreach. Order of the output is +# not guaranteed. +# +# We can rely on the fact that m4_set_listc prunes SET1, so we don't +# need to check _m4_set([$1],element) for 0. Short-circuit the +# idempotence relation. +m4_define([m4_set_union], +[m4_set_listc([$1])m4_if([$1], [$2], [], + [m4_set_map_sep([$2], [_$0([$1],], [)])])]) + +m4_define([_m4_set_union], +[m4_ifdef([_m4_set([$1],$2)], [], [,[$2]])]) + + +## ------------------- ## +## 16. File handling. ## +## ------------------- ## + + +# It is a real pity that M4 comes with no macros to bind a diversion +# to a file. So we have to deal without, which makes us a lot more +# fragile than we should. + + +# m4_file_append(FILE-NAME, CONTENT) +# ---------------------------------- +m4_define([m4_file_append], +[m4_syscmd([cat >>$1 <<_m4eof +$2 +_m4eof +]) +m4_if(m4_sysval, [0], [], + [m4_fatal([$0: cannot write: $1])])]) + + + +## ------------------------ ## +## 17. Setting M4sugar up. ## +## ------------------------ ## + +# _m4_divert_diversion should be defined. +m4_divert_push([KILL]) + +# m4_init +# ------- +# Initialize the m4sugar language. +m4_define([m4_init], +[# All the M4sugar macros start with `m4_', except `dnl' kept as is +# for sake of simplicity. +m4_pattern_forbid([^_?m4_]) +m4_pattern_forbid([^dnl$]) + +# If __m4_version__ is defined, we assume that we are being run by M4 +# 1.6 or newer, thus $@ recursion is linear, and debugmode(+do) +# is available for faster checks of dereferencing undefined macros +# and forcing dumpdef to print to stderr regardless of debugfile. +# But if it is missing, we assume we are being run by M4 1.4.x, that +# $@ recursion is quadratic, and that we need foreach-based +# replacement macros. Also, m4 prior to 1.4.8 loses track of location +# during m4wrap text; __line__ should never be 0. +# +# Use the raw builtin to avoid tripping up include tracing. +# Meanwhile, avoid m4_copy, since it temporarily undefines m4_defn. +m4_ifdef([__m4_version__], +[m4_debugmode([+do]) +m4_define([m4_defn], _m4_defn([_m4_defn])) +m4_define([m4_dumpdef], _m4_defn([_m4_dumpdef])) +m4_define([m4_popdef], _m4_defn([_m4_popdef])) +m4_define([m4_undefine], _m4_defn([_m4_undefine]))], +[m4_builtin([include], [m4sugar/foreach.m4]) +m4_wrap_lifo([m4_if(__line__, [0], [m4_pushdef([m4_location], +]]m4_dquote(m4_dquote(m4_dquote(__file__:__line__)))[[)])])]) + +# Rewrite the first entry of the diversion stack. +m4_divert([KILL]) + +# Check the divert push/pop perfect balance. +# Some users are prone to also use m4_wrap to register last-minute +# m4_divert_text; so after our diversion cleanups, we restore +# KILL as the bottom of the diversion stack. +m4_wrap([m4_popdef([_m4_divert_diversion])m4_ifdef( + [_m4_divert_diversion], [m4_fatal([$0: unbalanced m4_divert_push: +]m4_divert_stack)])_m4_popdef([_m4_divert_stack])m4_divert_push([KILL])]) +]) diff --git a/bison/MinSizeRel/data/skeletons/bison.m4 b/bison/MinSizeRel/data/skeletons/bison.m4 new file mode 100644 index 0000000..b7bf5c5 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/bison.m4 @@ -0,0 +1,1241 @@ + -*- Autoconf -*- + +# Language-independent M4 Macros for Bison. + +# Copyright (C) 2002, 2004-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + + +# m4_gsub(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# Really similar to m4_bpatsubsts, but behaves properly with quotes. +# See m4.at's "Generating Comments". Super inelegant, but so far, I +# did not find any better solution. +m4_define([b4_gsub], +[m4_bpatsubst(m4_bpatsubst(m4_bpatsubst([[[[$1]]]], + [$2], [$3]), + [$4], [$5]), + [$6], [$7])]) + +# m4_shift2 and m4_shift3 are provided by m4sugar. +m4_define([m4_shift4], [m4_shift(m4_shift(m4_shift(m4_shift($@))))]) + + +## ---------------- ## +## Identification. ## +## ---------------- ## + +# b4_generated_by +# --------------- +m4_define([b4_generated_by], +[b4_comment([A Bison parser, made by GNU Bison b4_version_string.]) +]) + +# b4_copyright(TITLE, [YEARS]) +# ---------------------------- +# If YEARS are not defined, use b4_copyright_years. +m4_define([b4_copyright], +[b4_generated_by +b4_comment([$1 + +]m4_dquote(m4_text_wrap([Copyright (C) +]m4_ifval([$2], [[$2]], [m4_defn([b4_copyright_years])])[ +Free Software Foundation, Inc.]))[ + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see .]) + +b4_comment([As a special exception, you may create a larger work that contains +part or all of the Bison parser skeleton and distribute that work +under terms of your choice, so long as that work isn't itself a +parser generator using the skeleton or a modified version thereof +as a parser skeleton. Alternatively, if you modify or redistribute +the parser skeleton itself, you may (at your option) remove this +special exception, which will cause the skeleton and the resulting +Bison output files to be licensed under the GNU General Public +License without this special exception. + +This special exception was added by the Free Software Foundation in +version 2.2 of Bison.]) +]) + + +# b4_disclaimer +# ------------- +# Issue a warning about private implementation details. +m4_define([b4_disclaimer], +[b4_comment([DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual, +especially those whose name start with YY_ or yy_. They are +private implementation details that can be changed or removed.]) +]) + + + +# b4_required_version_if(VERSION, IF_NEWER, IF_OLDER) +# --------------------------------------------------- +# If the version %require'd by the user is VERSION (or newer) expand +# IF_NEWER, otherwise IF_OLDER. VERSION should be an integer, e.g., +# 302 for 3.2. +m4_define([b4_required_version_if], +[m4_if(m4_eval($1 <= b4_required_version), + [1], [$2], [$3])]) + + +## -------- ## +## Output. ## +## -------- ## + +# b4_output_begin(FILE1, FILE2) +# ----------------------------- +# Enable output, i.e., send to diversion 0, expand after "#", and +# generate the tag to output into FILE. Must be followed by EOL. +# FILE is FILE1 concatenated to FILE2. FILE2 can be empty, or be +# absolute: do the right thing. +m4_define([b4_output_begin], +[m4_changecom() +m4_divert_push(0)dnl +@output(m4_unquote([$1])@,m4_unquote([$2])@)@dnl +]) + + +# b4_output_end +# ------------- +# Output nothing, restore # as comment character (no expansions after #). +m4_define([b4_output_end], +[m4_divert_pop(0) +m4_changecom([#]) +]) + + +# b4_divert_kill(CODE) +# -------------------- +# Expand CODE for its side effects, discard its output. +m4_define([b4_divert_kill], +[m4_divert_text([KILL], [$1])]) + + +# b4_define_silent(MACRO, CODE) +# ----------------------------- +# Same as m4_define, but throw away the expansion of CODE. +m4_define([b4_define_silent], +[m4_define([$1], [b4_divert_kill([$2])])]) + + +## ---------------- ## +## Error handling. ## +## ---------------- ## + +# The following error handling macros print error directives that should not +# become arguments of other macro invocations since they would likely then be +# mangled. Thus, they print to stdout directly. + +# b4_cat(TEXT) +# ------------ +# Write TEXT to stdout. Precede the final newline with an @ so that it's +# escaped. For example: +# +# b4_cat([[@complain(invalid input@)]]) +m4_define([b4_cat], +[m4_syscmd([cat <<'_m4eof' +]m4_bpatsubst(m4_dquote($1), [_m4eof], [_m4@`eof])[@ +_m4eof +])dnl +m4_if(m4_sysval, [0], [], [m4_fatal([$0: cannot write to stdout])])]) + +# b4_error(KIND, START, END, FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------------------------- +# Write @KIND(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_error([[complain]], [[input.y:2.3]], [[input.y:5.4]], +# [[invalid %s]], [[foo]]) +m4_define([b4_error], +[b4_cat([[@complain][(]$1[@,]$2[@,]$3[@,]$4[]]dnl +[m4_if([$#], [4], [], + [m4_foreach([b4_arg], + m4_dquote(m4_shift4($@)), + [[@,]b4_arg])])[@)]])]) + +# b4_warn(FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------ +# Write @warn(FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_warn([[invalid value for '%s': %s]], [[foo]], [[3]]) +# +# As a simple test suite, this: +# +# m4_divert(-1) +# m4_define([asdf], [ASDF]) +# m4_define([fsa], [FSA]) +# m4_define([fdsa], [FDSA]) +# b4_warn_at([[[asdf), asdf]]], [[[fsa), fsa]]], [[[fdsa), fdsa]]]) +# b4_warn_at([[asdf), asdf]], [[fsa), fsa]], [[fdsa), fdsa]]) +# b4_warn_at() +# b4_warn_at(1) +# b4_warn_at(1, 2) +# +# Should produce this without newlines: +# +# @warn_at([asdf), asdf]@,@,@,[fsa), fsa]@,[fdsa), fdsa]@) +# @warn(asdf), asdf@,@,@,fsa), fsa@,fdsa), fdsa@) +# @warn(@) +# @warn(1@) +# @warn(1@,2@) +m4_define([b4_warn], +[b4_warn_at([], [], $@)]) + +# b4_warn_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# --------------------------------------------------- +# Write @warn(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_warn_at([[input.y:2.3]], [[input.y:5.4]], [[invalid %s]], [[foo]]) +m4_define([b4_warn_at], +[b4_error([[warn]], $@)]) + +# b4_complain(FORMAT, [ARG1], [ARG2], ...) +# ---------------------------------------- +# Bounce to b4_complain_at. +# +# See b4_warn example. +m4_define([b4_complain], +[b4_complain_at([], [], $@)]) + +# b4_complain_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------------------------- +# Write @complain(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# See b4_warn_at example. +m4_define([b4_complain_at], +[b4_error([[complain]], $@)]) + +# b4_fatal(FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------- +# Bounce to b4_fatal_at. +# +# See b4_warn example. +m4_define([b4_fatal], +[b4_fatal_at([], [], $@)]) + +# b4_fatal_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# ---------------------------------------------------- +# Write @fatal(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout and exit. +# +# See b4_warn_at example. +m4_define([b4_fatal_at], +[b4_error([[fatal]], $@)dnl +m4_exit(1)]) + +# b4_canary(MSG) +# -------------- +# Issue a warning on stderr and in the output. Used in the test suite +# to catch spurious m4 evaluations. +m4_define([b4_canary], +[m4_errprintn([dead canary: $1])DEAD CANARY($1)]) + + +## ------------ ## +## Data Types. ## +## ------------ ## + +# b4_ints_in(INT1, INT2, LOW, HIGH) +# --------------------------------- +# Return 1 iff both INT1 and INT2 are in [LOW, HIGH], 0 otherwise. +m4_define([b4_ints_in], +[m4_eval([$3 <= $1 && $1 <= $4 && $3 <= $2 && $2 <= $4])]) + + +# b4_subtract(LHS, RHS) +# --------------------- +# Evaluate LHS - RHS if they are integer literals, otherwise expand +# to (LHS) - (RHS). +m4_define([b4_subtract], +[m4_bmatch([$1$2], [^[0123456789]*$], + [m4_eval([$1 - $2])], + [($1) - ($2)])]) + +# b4_join(ARG1, ...) +# _b4_join(ARG1, ...) +# ------------------- +# Join with comma, skipping empty arguments. +# b4_join calls itself recursively until it sees the first non-empty +# argument, then calls _b4_join (i.e., `_$0`) which prepends each +# non-empty argument with a comma. +m4_define([b4_join], +[m4_if([$#$1], + [1], [], + [m4_ifval([$1], + [$1[]_$0(m4_shift($@))], + [$0(m4_shift($@))])])]) + +# _b4_join(ARGS1, ...) +# -------------------- +m4_define([_b4_join], +[m4_if([$#$1], + [1], [], + [m4_ifval([$1], [, $1])[]$0(m4_shift($@))])]) + + + + +# b4_integral_parser_tables_map(MACRO) +# ------------------------------------- +# Map MACRO on all the integral tables. MACRO is expected to have +# the signature MACRO(TABLE-NAME, CONTENT, COMMENT). +m4_define([b4_integral_parser_tables_map], +[$1([pact], [b4_pact], + [[YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing +STATE-NUM.]]) + +$1([defact], [b4_defact], + [[YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. +Performed when YYTABLE does not specify something else to do. Zero +means the default is an error.]]) + +$1([pgoto], [b4_pgoto], [[YYPGOTO[NTERM-NUM].]]) + +$1([defgoto], [b4_defgoto], [[YYDEFGOTO[NTERM-NUM].]]) + +$1([table], [b4_table], + [[YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If +positive, shift that token. If negative, reduce the rule whose +number is the opposite. If YYTABLE_NINF, syntax error.]]) + +$1([check], [b4_check]) + +$1([stos], [b4_stos], + [[YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of +state STATE-NUM.]]) + +$1([r1], [b4_r1], + [[YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM.]]) + +$1([r2], [b4_r2], + [[YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM.]]) +]) + + +# b4_parser_tables_declare +# b4_parser_tables_define +# ------------------------ +# Define/declare the (deterministic) parser tables. +m4_define([b4_parser_tables_declare], +[b4_integral_parser_tables_map([b4_integral_parser_table_declare])]) + +m4_define([b4_parser_tables_define], +[b4_integral_parser_tables_map([b4_integral_parser_table_define])]) + + + +## ------------------ ## +## Decoding options. ## +## ------------------ ## + +# b4_flag_if(FLAG, IF-TRUE, IF-FALSE) +# ----------------------------------- +# Run IF-TRUE if b4_FLAG_flag is 1, IF-FALSE if FLAG is 0, otherwise fail. +m4_define([b4_flag_if], +[m4_case(b4_$1_flag, + [0], [$3], + [1], [$2], + [m4_fatal([invalid $1 value: ]b4_$1_flag)])]) + + +# b4_define_flag_if(FLAG) +# ----------------------- +# Define "b4_FLAG_if(IF-TRUE, IF-FALSE)" that depends on the +# value of the Boolean FLAG. +m4_define([b4_define_flag_if], +[_b4_define_flag_if($[1], $[2], [$1])]) + +# _b4_define_flag_if($1, $2, FLAG) +# -------------------------------- +# Work around the impossibility to define macros inside macros, +# because issuing '[$1]' is not possible in M4. GNU M4 should provide +# $$1 a la M5/TeX. +m4_define([_b4_define_flag_if], +[m4_if([$1$2], $[1]$[2], [], + [m4_fatal([$0: Invalid arguments: $@])])dnl +m4_define([b4_$3_if], + [b4_flag_if([$3], [$1], [$2])])]) + + +# b4_FLAG_if(IF-TRUE, IF-FALSE) +# ----------------------------- +# Expand IF-TRUE, if FLAG is true, IF-FALSE otherwise. +b4_define_flag_if([glr]) # Whether a GLR parser is requested. +b4_define_flag_if([has_translations]) # Whether some tokens are internationalized. +b4_define_flag_if([header]) # Whether a header is requested. +b4_define_flag_if([nondeterministic]) # Whether conflicts should be handled. +b4_define_flag_if([token_table]) # Whether yytoken_table is demanded. +b4_define_flag_if([yacc]) # Whether POSIX Yacc is emulated. + + +# b4_glr_cc_if([IF-TRUE], [IF-FALSE]) +# ----------------------------------- +m4_define([b4_glr_cc_if], + [m4_if(b4_skeleton, ["glr.cc"], $@)]) + +# b4_glr2_cc_if([IF-TRUE], [IF-FALSE]) +# ------------------------------------ +m4_define([b4_glr2_cc_if], + [m4_if(b4_skeleton, ["glr2.cc"], $@)]) + +## --------- ## +## Symbols. ## +## --------- ## + +# For a description of the Symbol handling, see README.md. +# +# The following macros provide access to symbol related values. + +# __b4_symbol(NUM, FIELD) +# ----------------------- +# Fetch FIELD of symbol #NUM. Fail if undefined. +m4_define([__b4_symbol], +[m4_indir([b4_symbol($1, $2)])]) + + +# _b4_symbol(NUM, FIELD) +# ---------------------- +# Fetch FIELD of symbol #NUM (or "orig NUM", see README.md). +# Fail if undefined. +m4_define([_b4_symbol], +[m4_ifdef([b4_symbol($1, number)], + [__b4_symbol(m4_indir([b4_symbol($1, number)]), $2)], + [__b4_symbol([$1], [$2])])]) + + +# b4_symbol_token_kind(NUM) +# ------------------------- +# The token kind of this symbol. +m4_define([b4_symbol_token_kind], +[b4_percent_define_get([api.token.prefix])dnl +_b4_symbol([$1], [id])]) + + +# b4_symbol_kind_base(NUM) +# ------------------------ +# Build the name of the kind of this symbol. It must always exist, +# otherwise some symbols might not be represented in the enum, which +# might be compiled into too small a type to contain all the symbol +# numbers. +m4_define([b4_symbol_prefix], [b4_percent_define_get([api.symbol.prefix])]) +m4_define([b4_symbol_kind_base], +[b4_percent_define_get([api.symbol.prefix])dnl +m4_case([$1], + [-2], [[YYEMPTY]], + [0], [[YYEOF]], + [1], [[YYerror]], + [2], [[YYUNDEF]], + [m4_case(b4_symbol([$1], [tag]), + [$accept], [[YYACCEPT]], + [b4_symbol_if([$1], [has_id], _b4_symbol([$1], [id]), + [m4_bpatsubst([$1-][]_b4_symbol([$1], [tag]), [[^a-zA-Z_0-9]+], [_])])])])]) + + +# b4_symbol_kind(NUM) +# ------------------- +# Same as b4_symbol_kind, but possibly with a prefix in some +# languages. E.g., EOF's kind_base and kind are YYSYMBOL_YYEOF in C, +# but are S_YYEMPTY and symbol_kind::S_YYEMPTY in C++. +m4_copy([b4_symbol_kind_base], [b4_symbol_kind]) + + +# b4_symbol_slot(NUM) +# ------------------- +# The name of union member that contains the value of these symbols. +# Currently, we are messy, this should actually be type_tag, but type_tag +# has several meanings. +m4_define([b4_symbol_slot], +[m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_symbol([$1], [type_tag])], + [variant], [b4_symbol([$1], [type_tag])], + [b4_symbol([$1], [type])])]) + + +# b4_symbol(NUM, FIELD) +# --------------------- +# Fetch FIELD of symbol #NUM (or "orig NUM", or "empty"). Fail if undefined. +# +# If FIELD = id, prepend the token prefix. +m4_define([b4_symbol], +[m4_if([$1], [empty], [b4_symbol([-2], [$2])], + [$1], [eof], [b4_symbol([0], [$2])], + [$1], [error], [b4_symbol([1], [$2])], + [$1], [undef], [b4_symbol([2], [$2])], + [m4_case([$2], + [id], [b4_symbol_token_kind([$1])], + [kind_base], [b4_symbol_kind_base([$1])], + [kind], [b4_symbol_kind([$1])], + [slot], [b4_symbol_slot([$1])], + [_b4_symbol($@)])])]) + + +# b4_symbol_if(NUM, FIELD, IF-TRUE, IF-FALSE) +# ------------------------------------------- +# If FIELD about symbol #NUM is 1 expand IF-TRUE, if is 0, expand IF-FALSE. +# Otherwise an error. +m4_define([b4_symbol_if], +[m4_case(b4_symbol([$1], [$2]), + [1], [$3], + [0], [$4], + [m4_fatal([$0: field $2 of $1 is not a Boolean:] b4_symbol([$1], [$2]))])]) + + +# b4_symbol_tag_comment(SYMBOL-NUM) +# --------------------------------- +# Issue a comment giving the tag of symbol NUM. +m4_define([b4_symbol_tag_comment], +[b4_comment([b4_symbol([$1], [tag])]) +]) + + +# b4_symbol_action(SYMBOL-NUM, ACTION) +# ------------------------------------ +# Run the action ACTION ("destructor" or "printer") for SYMBOL-NUM. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([(*yyvaluep)], + [$1], + [], + [(*yylocationp)])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl +b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_symbol_destructor(SYMBOL-NUM) +# b4_symbol_printer(SYMBOL-NUM) +# -------------------------------- +m4_define([b4_symbol_destructor], [b4_symbol_action([$1], [destructor])]) +m4_define([b4_symbol_printer], [b4_symbol_action([$1], [printer])]) + + +# b4_symbol_actions(ACTION, [KIND = yykind]) +# ------------------------------------------ +# Emit the symbol actions for ACTION ("destructor" or "printer"). +# Dispatch on KIND. +m4_define([b4_symbol_actions], +[m4_pushdef([b4_actions_], m4_expand([b4_symbol_foreach([b4_symbol_$1])]))dnl +m4_ifval(m4_defn([b4_actions_]), +[switch (m4_default([$2], [yykind])) + { +m4_defn([b4_actions_])[]dnl + default: + break; + }dnl +], +[b4_use(m4_default([$2], [yykind]));])dnl +m4_popdef([b4_actions_])dnl +]) + +# _b4_symbol_case(SYMBOL-NUM) +# --------------------------- +# Issue a "case NUM" for SYMBOL-NUM. Ends with its EOL to make it +# easier to use with m4_map, but then, use []dnl to suppress the last +# one. +m4_define([_b4_symbol_case], +[case b4_symbol([$1], [kind]): b4_symbol_tag_comment([$1])]) +]) + + +# b4_symbol_foreach(MACRO) +# ------------------------ +# Invoke MACRO(SYMBOL-NUM) for each SYMBOL-NUM. +m4_define([b4_symbol_foreach], + [m4_map([$1], m4_defn([b4_symbol_numbers]))]) + +# b4_symbol_map(MACRO) +# -------------------- +# Return a list (possibly empty elements) of MACRO invoked for each +# SYMBOL-NUM. +m4_define([b4_symbol_map], +[m4_map_args_sep([$1(], [)], [,], b4_symbol_numbers)]) + + +# b4_token_visible_if(NUM, IF-TRUE, IF-FALSE) +# ------------------------------------------- +# Whether NUM denotes a token kind that has an exported definition +# (i.e., shows in enum yytokentype). +m4_define([b4_token_visible_if], +[b4_symbol_if([$1], [is_token], + [b4_symbol_if([$1], [has_id], [$2], [$3])], + [$3])]) + + +# b4_token_has_definition(NUM) +# ---------------------------- +# 1 if NUM is visible, nothing otherwise. +m4_define([b4_token_has_definition], +[b4_token_visible_if([$1], [1])]) + +# b4_any_token_visible_if([IF-TRUE], [IF-FALSE]) +# ---------------------------------------------- +# Whether there is a token that needs to be defined. +m4_define([b4_any_token_visible_if], +[m4_ifval(b4_symbol_foreach([b4_token_has_definition]), + [$1], [$2])]) + + +# b4_token_format(FORMAT, NUM) +# ---------------------------- +# If token NUM has a visible ID, format FORMAT with ID, USER_NUMBER. +m4_define([b4_token_format], +[b4_token_visible_if([$2], +[m4_format([[$1]], + b4_symbol([$2], [id]), + b4_symbol([$2], b4_api_token_raw_if([[number]], [[code]])))])]) + + +# b4_last_enum_token +# ------------------ +# The code of the last token visible token. +m4_define([_b4_last_enum_token], +[b4_token_visible_if([$1], + [m4_define([b4_last_enum_token], [$1])])]) +b4_symbol_foreach([_b4_last_enum_token]) + +# b4_last_symbol +# -------------- +# The code of the last symbol. +m4_define([b4_last_symbol], m4_eval(b4_tokens_number + b4_nterms_number - 1)) + +## ------- ## +## Types. ## +## ------- ## + +# _b4_type_action(NUMS) +# --------------------- +# Run actions for the symbol NUMS that all have the same type-name. +# Skip NUMS that have no type-name. +# +# To specify the action to run, define b4_dollar_dollar(SYMBOL-NUM, +# TAG, TYPE). +m4_define([_b4_type_action], +[b4_symbol_if([$1], [has_type], +[m4_map([ _b4_symbol_case], [$@])[]dnl + b4_dollar_dollar([b4_symbol([$1], [number])], + [b4_symbol([$1], [tag])], + [b4_symbol([$1], [type])]); + break; + +])]) + +# b4_type_foreach(MACRO, [SEP]) +# ----------------------------- +# Invoke MACRO(SYMBOL-NUMS) for each set of SYMBOL-NUMS for each type set. +m4_define([b4_type_foreach], + [m4_map_sep([$1], [$2], m4_defn([b4_type_names]))]) + + + +## ----------- ## +## Synclines. ## +## ----------- ## + +# b4_basename(NAME) +# ----------------- +# Similar to POSIX basename; the differences don't matter here. +# Beware that NAME is not evaluated. +m4_define([b4_basename], +[m4_bpatsubst([$1], [^.*/\([^/]+\)/*$], [\1])]) + + +# b4_syncline(LINE, FILE)dnl +# -------------------------- +# Should always be following by a dnl. +# +# Emit "#line LINE FILE /* __LINE__ __FILE__ */". +m4_define([b4_syncline], +[b4_flag_if([synclines], +[b4_sync_start([$1], [$2])[]dnl +b4_sync_end([__line__], [b4_basename(m4_quote(__file__))]) +])]) + +# b4_sync_start(LINE, FILE) +# ----------------------- +# Syncline for the new place. Typically a directive for the compiler. +m4_define([b4_sync_start], [b4_comment([$2:$1])]) + +# b4_sync_end(LINE, FILE) +# ----------------------- +# Syncline for the current place, which ends. Typically a comment +# left for the reader. +m4_define([b4_sync_end], [ b4_comment([$2:$1])] +) +# This generates dependencies on the Bison skeletons hence lots of +# useless 'git diff'. This location is useless for the regular +# user (who does not care about the skeletons) and is actually not +# useful for Bison developers too (I, Akim, never used this to locate +# the code in skeletons that generated output). So disable it +# completely. If someone thinks this was actually useful, a %define +# variable should be provided to control the level of verbosity of +# '#line', in replacement of --no-lines. +m4_define([b4_sync_end]) + + +# b4_user_code(USER-CODE) +# ----------------------- +# Emit code from the user, ending it with synclines. +m4_define([b4_user_code], +[$1 +b4_syncline([@oline@], [@ofile@])]) + + +# b4_define_user_code(MACRO, COMMENT) +# ----------------------------------- +# From b4_MACRO, if defined, build b4_user_MACRO that includes the synclines. +m4_define([b4_define_user_code], +[m4_define([b4_user_$1], + [m4_ifdef([b4_$1], + [m4_ifval([$2], + [b4_comment([$2]) +])b4_user_code([b4_$1])])])]) + +# b4_user_actions +# b4_user_initial_action +# b4_user_post_prologue +# b4_user_pre_prologue +# b4_user_union_members +# ---------------------- +# Macros that issue user code, ending with synclines. +b4_define_user_code([actions]) +b4_define_user_code([initial_action], [User initialization code.]) +b4_define_user_code([post_prologue], [Second part of user prologue.]) +b4_define_user_code([pre_prologue], [First part of user prologue.]) +b4_define_user_code([union_members]) + + +# b4_check_user_names(WHAT, USER-LIST, BISON-NAMESPACE) +# ----------------------------------------------------- +# Complain if any name of type WHAT is used by the user (as recorded in +# USER-LIST) but is not used by Bison (as recorded by macros in the +# namespace BISON-NAMESPACE). +# +# USER-LIST must expand to a list specifying all user occurrences of all names +# of type WHAT. Each item in the list must be a triplet specifying one +# occurrence: name, start boundary, and end boundary. Empty string names are +# fine. An empty list is fine. +# +# For example, to define b4_foo_user_names to be used for USER-LIST with three +# name occurrences and with correct quoting: +# +# m4_define([b4_foo_user_names], +# [[[[[[bar]], [[parser.y:1.7]], [[parser.y:1.16]]]], +# [[[[bar]], [[parser.y:5.7]], [[parser.y:5.16]]]], +# [[[[baz]], [[parser.y:8.7]], [[parser.y:8.16]]]]]]) +# +# The macro BISON-NAMESPACE(bar) must be defined iff the name bar of type WHAT +# is used by Bison (in the front-end or in the skeleton). Empty string names +# are fine, but it would be ugly for Bison to actually use one. +# +# For example, to use b4_foo_bison_names for BISON-NAMESPACE and define that +# the names bar and baz are used by Bison: +# +# m4_define([b4_foo_bison_names(bar)]) +# m4_define([b4_foo_bison_names(baz)]) +# +# To invoke b4_check_user_names with TYPE foo, with USER-LIST +# b4_foo_user_names, with BISON-NAMESPACE b4_foo_bison_names, and with correct +# quoting: +# +# b4_check_user_names([[foo]], [b4_foo_user_names], +# [[b4_foo_bison_names]]) +m4_define([b4_check_user_names], +[m4_foreach([b4_occurrence], $2, +[m4_pushdef([b4_occurrence], b4_occurrence)dnl +m4_pushdef([b4_user_name], m4_car(b4_occurrence))dnl +m4_pushdef([b4_start], m4_car(m4_shift(b4_occurrence)))dnl +m4_pushdef([b4_end], m4_shift2(b4_occurrence))dnl +m4_ifndef($3[(]m4_quote(b4_user_name)[)], + [b4_complain_at([b4_start], [b4_end], + [[%s '%s' is not used]], + [$1], [b4_user_name])])[]dnl +m4_popdef([b4_occurrence])dnl +m4_popdef([b4_user_name])dnl +m4_popdef([b4_start])dnl +m4_popdef([b4_end])dnl +])]) + + + +## --------------------- ## +## b4_percent_define_*. ## +## --------------------- ## + + +# b4_percent_define_use(VARIABLE) +# ------------------------------- +# Declare that VARIABLE was used. +m4_define([b4_percent_define_use], +[m4_define([b4_percent_define_bison_variables(]$1[)])dnl +]) + +# b4_percent_define_get(VARIABLE, [DEFAULT]) +# ------------------------------------------ +# Mimic muscle_percent_define_get in ../src/muscle-tab.h. That is, if +# the %define variable VARIABLE is defined, emit its value. Contrary +# to its C counterpart, return DEFAULT otherwise. Also, record +# Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_get([[foo]]) +m4_define([b4_percent_define_get], +[b4_percent_define_use([$1])dnl +_b4_percent_define_ifdef([$1], + [m4_indir([b4_percent_define(]$1[)])], + [$2])]) + +# b4_percent_define_get_loc(VARIABLE) +# ----------------------------------- +# Mimic muscle_percent_define_get_loc in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is undefined, complain fatally since that's +# a Bison or skeleton error. Otherwise, return its definition location in a +# form appropriate for the first two arguments of b4_warn_at, b4_complain_at, or +# b4_fatal_at. Don't record this as a Bison usage of VARIABLE as there's no +# reason to suspect that the user-supplied value has yet influenced the output. +# +# For example: +# +# b4_complain_at(b4_percent_define_get_loc([[foo]]), [[invalid foo]]) +m4_define([b4_percent_define_get_loc], +[m4_ifdef([b4_percent_define_loc(]$1[)], + [m4_pushdef([b4_loc], m4_indir([b4_percent_define_loc(]$1[)]))dnl +b4_loc[]dnl +m4_popdef([b4_loc])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_define_get_kind(VARIABLE) +# ------------------------------------ +# Get the kind (code, keyword, string) of VARIABLE, i.e., how its +# value was defined (braces, not delimiters, quotes). +# +# If the %define variable VARIABLE is undefined, complain fatally +# since that's a Bison or skeleton error. Don't record this as a +# Bison usage of VARIABLE as there's no reason to suspect that the +# user-supplied value has yet influenced the output. +m4_define([b4_percent_define_get_kind], +[m4_ifdef([b4_percent_define_kind(]$1[)], + [m4_indir([b4_percent_define_kind(]$1[)])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_define_get_syncline(VARIABLE)dnl +# ------------------------------------------- +# Should always be following by a dnl. +# +# Mimic muscle_percent_define_get_syncline in ../src/muscle-tab.h exactly. +# That is, if the %define variable VARIABLE is undefined, complain fatally +# since that's a Bison or skeleton error. Otherwise, return its definition +# location as a b4_syncline invocation. Don't record this as a Bison usage of +# VARIABLE as there's no reason to suspect that the user-supplied value has yet +# influenced the output. +# +# For example: +# +# b4_percent_define_get_syncline([[foo]]) +m4_define([b4_percent_define_get_syncline], +[m4_ifdef([b4_percent_define_syncline(]$1[)], + [m4_indir([b4_percent_define_syncline(]$1[)])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# _b4_percent_define_ifdef(VARIABLE, IF-TRUE, [IF-FALSE]) +# ------------------------------------------------------ +# If the %define variable VARIABLE is defined, expand IF-TRUE, else expand +# IF-FALSE. Don't record usage of VARIABLE. +# +# For example: +# +# _b4_percent_define_ifdef([[foo]], [[it's defined]], [[it's undefined]]) +m4_define([_b4_percent_define_ifdef], +[m4_ifdef([b4_percent_define(]$1[)], + [$2], + [$3])]) + +# b4_percent_define_ifdef(VARIABLE, IF-TRUE, [IF-FALSE]) +# ------------------------------------------------------ +# Mimic muscle_percent_define_ifdef in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is defined, expand IF-TRUE, else expand +# IF-FALSE. Also, record Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_ifdef([[foo]], [[it's defined]], [[it's undefined]]) +m4_define([b4_percent_define_ifdef], +[_b4_percent_define_ifdef([$1], + [b4_percent_define_use([$1])$2], + [$3])]) + + +# b4_percent_define_check_file_complain(VARIABLE) +# ----------------------------------------------- +# Warn about %define variable VARIABLE having an incorrect +# value. +m4_define([b4_percent_define_check_file_complain], +[b4_complain_at(b4_percent_define_get_loc([$1]), + [[%%define variable '%s' requires 'none' or '"..."' values]], + [$1])]) + + +# b4_percent_define_check_file(MACRO, VARIABLE, DEFAULT) +# ------------------------------------------------------ +# If the %define variable VARIABLE: +# - is undefined, then if DEFAULT is non-empty, define MACRO to DEFAULT +# - is a string, define MACRO to its value +# - is the keyword 'none', do nothing +# - otherwise, warn about the incorrect value. +m4_define([b4_percent_define_check_file], +[b4_percent_define_ifdef([$2], + [m4_case(b4_percent_define_get_kind([$2]), + [string], + [m4_define([$1], b4_percent_define_get([$2]))], + [keyword], + [m4_if(b4_percent_define_get([$2]), [none], [], + [b4_percent_define_check_file_complain([$2])])], + [b4_percent_define_check_file_complain([$2])]) + ], + [m4_ifval([$3], + [m4_define([$1], [$3])])]) +]) + + + +## --------- ## +## Options. ## +## --------- ## + + +# b4_percent_define_flag_if(VARIABLE, IF-TRUE, [IF-FALSE]) +# -------------------------------------------------------- +# Mimic muscle_percent_define_flag_if in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is defined to "" or "true", expand IF-TRUE. +# If it is defined to "false", expand IF-FALSE. Complain if it is undefined +# (a Bison or skeleton error since the default value should have been set +# already) or defined to any other value (possibly a user error). Also, record +# Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_flag_if([[foo]], [[it's true]], [[it's false]]) +m4_define([b4_percent_define_flag_if], +[b4_percent_define_ifdef([$1], + [m4_case(b4_percent_define_get([$1]), + [], [$2], [true], [$2], [false], [$3], + [m4_expand_once([b4_complain_at(b4_percent_define_get_loc([$1]), + [[invalid value for %%define Boolean variable '%s']], + [$1])], + [[b4_percent_define_flag_if($1)]])])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + + +# b4_percent_define_default(VARIABLE, DEFAULT, [KIND = keyword]) +# -------------------------------------------------------------- +# Mimic muscle_percent_define_default in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is undefined, set its value to DEFAULT. +# Don't record this as a Bison usage of VARIABLE as there's no reason to +# suspect that the value has yet influenced the output. +# +# For example: +# +# b4_percent_define_default([[foo]], [[default value]]) +m4_define([_b4_percent_define_define], +[m4_define([b4_percent_define(]$1[)], [$2])dnl +m4_define([b4_percent_define_kind(]$1[)], + [m4_default([$3], [keyword])])dnl +m4_define([b4_percent_define_loc(]$1[)], + [[[[:-1.-1]], + [[:-1.-1]]]])dnl +m4_define([b4_percent_define_syncline(]$1[)], [[]])]) + +m4_define([b4_percent_define_default], +[_b4_percent_define_ifdef([$1], [], + [_b4_percent_define_define($@)])]) + + +# b4_percent_define_if_define(NAME, [VARIABLE = NAME]) +# ---------------------------------------------------- +# Define b4_NAME_if that executes its $1 or $2 depending whether +# VARIABLE was %defined. The characters '.' and `-' in VARIABLE are mapped +# to '_'. +m4_define([_b4_percent_define_if_define], +[m4_define(m4_bpatsubst([b4_$1_if], [[-.]], [_]), + [b4_percent_define_default([m4_default([$2], [$1])], [[false]])dnl +b4_percent_define_flag_if(m4_default([$2], [$1]), + [$3], [$4])])]) + +m4_define([b4_percent_define_if_define], +[_b4_percent_define_if_define([$1], [$2], $[1], $[2])]) + + +# b4_percent_define_check_kind(VARIABLE, KIND, [DIAGNOSTIC = complain]) +# --------------------------------------------------------------------- +m4_define([b4_percent_define_check_kind], +[_b4_percent_define_ifdef([$1], + [m4_if(b4_percent_define_get_kind([$1]), [$2], [], + [b4_error([m4_default([$3], [complain])], + b4_percent_define_get_loc([$1]), + [m4_case([$2], + [code], [[%%define variable '%s' requires '{...}' values]], + [keyword], [[%%define variable '%s' requires keyword values]], + [string], [[%%define variable '%s' requires '"..."' values]])], + [$1])])])dnl +]) + + +# b4_percent_define_check_values(VALUES) +# -------------------------------------- +# Mimic muscle_percent_define_check_values in ../src/muscle-tab.h exactly +# except that the VALUES structure is more appropriate for M4. That is, VALUES +# is a list of sublists of strings. For each sublist, the first string is the +# name of a %define variable, and all remaining strings in that sublist are the +# valid values for that variable. Complain if such a variable is undefined (a +# Bison error since the default value should have been set already) or defined +# to any other value (possibly a user error). Don't record this as a Bison +# usage of the variable as there's no reason to suspect that the value has yet +# influenced the output. +# +# For example: +# +# b4_percent_define_check_values([[[[foo]], [[foo-value1]], [[foo-value2]]]], +# [[[[bar]], [[bar-value1]]]]) +m4_define([b4_percent_define_check_values], +[m4_foreach([b4_sublist], m4_quote($@), + [_b4_percent_define_check_values(b4_sublist)])]) + +m4_define([_b4_percent_define_check_values], +[_b4_percent_define_ifdef([$1], + [b4_percent_define_check_kind(]$1[, [keyword], [deprecated])dnl + m4_pushdef([b4_good_value], [0])dnl + m4_if($#, 1, [], + [m4_foreach([b4_value], m4_dquote(m4_shift($@)), + [m4_if(m4_indir([b4_percent_define(]$1[)]), b4_value, + [m4_define([b4_good_value], [1])])])])dnl + m4_if(b4_good_value, [0], + [b4_complain_at(b4_percent_define_get_loc([$1]), + [[invalid value for %%define variable '%s': '%s']], + [$1], + m4_dquote(m4_indir([b4_percent_define(]$1[)]))) + m4_foreach([b4_value], m4_dquote(m4_shift($@)), + [b4_error([[note]], b4_percent_define_get_loc([$1]), [] + [[accepted value: '%s']], + m4_dquote(b4_value))])])dnl + m4_popdef([b4_good_value])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_code_get([QUALIFIER]) +# -------------------------------- +# If any %code blocks for QUALIFIER are defined, emit them beginning with a +# comment and ending with synclines and a newline. If QUALIFIER is not +# specified or empty, do this for the unqualified %code blocks. Also, record +# Bison's usage of QUALIFIER (if specified) by defining +# b4_percent_code_bison_qualifiers(QUALIFIER). +# +# For example, to emit any unqualified %code blocks followed by any %code +# blocks for the qualifier foo: +# +# b4_percent_code_get +# b4_percent_code_get([[foo]]) +m4_define([b4_percent_code_get], +[m4_pushdef([b4_macro_name], [[b4_percent_code(]$1[)]])dnl +m4_ifval([$1], [m4_define([b4_percent_code_bison_qualifiers(]$1[)])])dnl +m4_ifdef(b4_macro_name, +[b4_comment(m4_if([$#], [0], [[[Unqualified %code blocks.]]], + [[["%code ]$1[" blocks.]]])) +b4_user_code([m4_indir(b4_macro_name)])])dnl +m4_popdef([b4_macro_name])]) + +# b4_percent_code_ifdef(QUALIFIER, IF-TRUE, [IF-FALSE]) +# ----------------------------------------------------- +# If any %code blocks for QUALIFIER (or unqualified %code blocks if +# QUALIFIER is empty) are defined, expand IF-TRUE, else expand IF-FALSE. +# Also, record Bison's usage of QUALIFIER (if specified) by defining +# b4_percent_code_bison_qualifiers(QUALIFIER). +m4_define([b4_percent_code_ifdef], +[m4_ifdef([b4_percent_code(]$1[)], + [m4_ifval([$1], [m4_define([b4_percent_code_bison_qualifiers(]$1[)])])$2], + [$3])]) + + +## ------------------ ## +## Common variables. ## +## ------------------ ## + + +# b4_parse_assert_if([IF-ASSERTIONS-ARE-USED], [IF-NOT]) +# b4_parse_trace_if([IF-DEBUG-TRACES-ARE-ENABLED], [IF-NOT]) +# b4_token_ctor_if([IF-YYLEX-RETURNS-A-TOKEN], [IF-NOT]) +# ---------------------------------------------------------- +b4_percent_define_if_define([api.token.raw]) +b4_percent_define_if_define([token_ctor], [api.token.constructor]) +b4_percent_define_if_define([locations]) # Whether locations are tracked. +b4_percent_define_if_define([parse.assert]) +b4_percent_define_if_define([parse.trace]) +b4_percent_define_if_define([posix]) + + +# b4_bison_locations_if([IF-TRUE]) +# -------------------------------- +# Expand IF-TRUE if using locations, and using the default location +# type. +m4_define([b4_bison_locations_if], +[b4_locations_if([b4_percent_define_ifdef([[api.location.type]], [], [$1])])]) + + + +# %define parse.error "(custom|detailed|simple|verbose)" +# ------------------------------------------------------ +b4_percent_define_default([[parse.error]], [[simple]]) +b4_percent_define_check_values([[[[parse.error]], + [[custom]], [[detailed]], [[simple]], [[verbose]]]]) + +# b4_parse_error_case(CASE1, THEN1, CASE2, THEN2, ..., ELSE) +# ---------------------------------------------------------- +m4_define([b4_parse_error_case], +[m4_case(b4_percent_define_get([[parse.error]]), $@)]) + +# b4_parse_error_bmatch(PATTERN1, THEN1, PATTERN2, THEN2, ..., ELSE) +# ------------------------------------------------------------------ +m4_define([b4_parse_error_bmatch], +[m4_bmatch(b4_percent_define_get([[parse.error]]), $@)]) + + + +# b4_union_if([IF-UNION-ARE-USED], [IF-NOT]) +# b4_variant_if([IF-VARIANT-ARE-USED], [IF-NOT]) +# ---------------------------------------------- +# Depend on whether api.value.type is union, or variant. +m4_define([b4_union_flag], [[0]]) +m4_define([b4_variant_flag], [[0]]) +b4_percent_define_ifdef([[api.value.type]], + [m4_case(b4_percent_define_get_kind([[api.value.type]]), [keyword], + [m4_case(b4_percent_define_get([[api.value.type]]), + [union], [m4_define([b4_union_flag], [[1]])], + [variant], [m4_define([b4_variant_flag], [[1]])])])]) +b4_define_flag_if([union]) +b4_define_flag_if([variant]) + + +## ----------------------------------------------------------- ## +## After processing the skeletons, check that all the user's ## +## %define variables and %code qualifiers were used by Bison. ## +## ----------------------------------------------------------- ## + +m4_define([b4_check_user_names_wrap], +[m4_ifdef([b4_percent_]$1[_user_]$2[s], + [b4_check_user_names([[%]$1 $2], + [b4_percent_]$1[_user_]$2[s], + [[b4_percent_]$1[_bison_]$2[s]])])]) + +m4_wrap_lifo([ +b4_check_user_names_wrap([[define]], [[variable]]) +b4_check_user_names_wrap([[code]], [[qualifier]]) +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# m4_define_default([b4_lex_param], []) dnl breaks other skeletons +m4_define_default([b4_epilogue], []) +m4_define_default([b4_parse_param], []) + +# The initial column and line. +m4_define_default([b4_location_initial_column], [1]) +m4_define_default([b4_location_initial_line], [1]) + + +## --------------- ## +## Sanity checks. ## +## --------------- ## + +# api.location.type={...} (C, C++ and Java). +b4_percent_define_check_kind([api.location.type], [code], [deprecated]) + +# api.position.type={...} (Java). +b4_percent_define_check_kind([api.position.type], [code], [deprecated]) + +# api.prefix >< %name-prefix. +b4_percent_define_check_kind([api.prefix], [code], [deprecated]) +b4_percent_define_ifdef([api.prefix], +[m4_ifdef([b4_prefix], +[b4_complain_at(b4_percent_define_get_loc([api.prefix]), + [['%s' and '%s' cannot be used together]], + [%name-prefix], + [%define api.prefix])])]) + +# api.token.prefix={...} +# Make it a warning for those who used betas of Bison 3.0. +b4_percent_define_check_kind([api.token.prefix], [code], [deprecated]) + +# api.value.type >< %union. +b4_percent_define_ifdef([api.value.type], +[m4_ifdef([b4_union_members], +[b4_complain_at(b4_percent_define_get_loc([api.value.type]), + [['%s' and '%s' cannot be used together]], + [%union], + [%define api.value.type])])]) + +# api.value.type=union >< %yacc. +b4_percent_define_ifdef([api.value.type], +[m4_if(b4_percent_define_get([api.value.type]), [union], +[b4_yacc_if(dnl +[b4_complain_at(b4_percent_define_get_loc([api.value.type]), + [['%s' and '%s' cannot be used together]], + [%yacc], + [%define api.value.type "union"])])])]) + +# api.value.union.name. +b4_percent_define_check_kind([api.value.union.name], [keyword]) + +# parse.error (custom|detailed) >< token-table. +b4_token_table_if( +[b4_parse_error_bmatch([custom\|detailed], +[b4_complain_at(b4_percent_define_get_loc([parse.error]), + [['%s' and '%s' cannot be used together]], + [%token-table], + [%define parse.error (custom|detailed)])])]) diff --git a/bison/MinSizeRel/data/skeletons/c++-skel.m4 b/bison/MinSizeRel/data/skeletons/c++-skel.m4 new file mode 100644 index 0000000..f22002b --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/c++-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# C++ skeleton dispatching for Bison. + +# Copyright (C) 2006-2007, 2009-2015, 2018-2021 Free Software +# Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.cc]])]) +b4_nondeterministic_if([m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.cc]])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.cc]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/bison/MinSizeRel/data/skeletons/c++.m4 b/bison/MinSizeRel/data/skeletons/c++.m4 new file mode 100644 index 0000000..2ae8423 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/c++.m4 @@ -0,0 +1,778 @@ + -*- Autoconf -*- + +# C++ skeleton for Bison + +# Copyright (C) 2002-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Sanity checks, before defaults installed by c.m4. +b4_percent_define_ifdef([[api.value.union.name]], + [b4_complain_at(b4_percent_define_get_loc([[api.value.union.name]]), + [named %union is invalid in C++])]) + +b4_percent_define_default([[api.symbol.prefix]], [[S_]]) + +m4_include(b4_skeletonsdir/[c.m4]) + +b4_percent_define_check_kind([api.namespace], [code], [deprecated]) +b4_percent_define_check_kind([api.parser.class], [code], [deprecated]) + + +## ----- ## +## C++. ## +## ----- ## + +# b4_comment(TEXT, [PREFIX]) +# -------------------------- +# Put TEXT in comment. Prefix all the output lines with PREFIX. +m4_define([b4_comment], +[_b4_comment([$1], [$2// ], [$2// ])]) + + +# b4_inline(hh|cc) +# ---------------- +# Expand to `inline\n ` if $1 is hh. +m4_define([b4_inline], +[m4_case([$1], + [cc], [], + [hh], [[inline + ]], + [m4_fatal([$0: invalid argument: $1])])]) + + +# b4_cxx_portability +# ------------------ +m4_define([b4_cxx_portability], +[#if defined __cplusplus +# define YY_CPLUSPLUS __cplusplus +#else +# define YY_CPLUSPLUS 199711L +#endif + +// Support move semantics when possible. +#if 201103L <= YY_CPLUSPLUS +# define YY_MOVE std::move +# define YY_MOVE_OR_COPY move +# define YY_MOVE_REF(Type) Type&& +# define YY_RVREF(Type) Type&& +# define YY_COPY(Type) Type +#else +# define YY_MOVE +# define YY_MOVE_OR_COPY copy +# define YY_MOVE_REF(Type) Type& +# define YY_RVREF(Type) const Type& +# define YY_COPY(Type) const Type& +#endif + +// Support noexcept when possible. +#if 201103L <= YY_CPLUSPLUS +# define YY_NOEXCEPT noexcept +# define YY_NOTHROW +#else +# define YY_NOEXCEPT +# define YY_NOTHROW throw () +#endif + +// Support constexpr when possible. +#if 201703 <= YY_CPLUSPLUS +# define YY_CONSTEXPR constexpr +#else +# define YY_CONSTEXPR +#endif[]dnl +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +b4_percent_define_default([[api.parser.class]], [[parser]]) + +# Don't do that so that we remember whether we're using a user +# request, or the default value. +# +# b4_percent_define_default([[api.location.type]], [[location]]) + +b4_percent_define_default([[api.filename.type]], [[const std::string]]) +# Make it a warning for those who used betas of Bison 3.0. +b4_percent_define_default([[api.namespace]], m4_defn([b4_prefix])) + +b4_percent_define_default([[define_location_comparison]], + [m4_if(b4_percent_define_get([[filename_type]]), + [std::string], [[true]], [[false]])]) + + + +## ----------- ## +## Namespace. ## +## ----------- ## + +m4_define([b4_namespace_ref], [b4_percent_define_get([[api.namespace]])]) + + +# Don't permit an empty b4_namespace_ref. Any '::parser::foo' appended to it +# would compile as an absolute reference with 'parser' in the global namespace. +# b4_namespace_open would open an anonymous namespace and thus establish +# internal linkage. This would compile. However, it's cryptic, and internal +# linkage for the parser would be specified in all translation units that +# include the header, which is always generated. If we ever need to permit +# internal linkage somehow, surely we can find a cleaner approach. +m4_if(m4_bregexp(b4_namespace_ref, [^[ ]*$]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference is empty]])]) + +# Instead of assuming the C++ compiler will do it, Bison should reject any +# invalid b4_namespace_ref that would be converted to a valid +# b4_namespace_open. The problem is that Bison doesn't always output +# b4_namespace_ref to uncommented code but should reserve the ability to do so +# in future releases without risking breaking any existing user grammars. +# Specifically, don't allow empty names as b4_namespace_open would just convert +# those into anonymous namespaces, and that might tempt some users. +m4_if(m4_bregexp(b4_namespace_ref, [::[ ]*::]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference has consecutive "::"]])]) +m4_if(m4_bregexp(b4_namespace_ref, [::[ ]*$]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference has a trailing "::"]])]) + +m4_define([b4_namespace_open], +[b4_user_code([b4_percent_define_get_syncline([[api.namespace]])dnl +[namespace ]m4_bpatsubst(m4_dquote(m4_bpatsubst(m4_dquote(b4_namespace_ref), + [^\(.\)[ ]*::], [\1])), + [::], [ { namespace ])[ {]])]) + +m4_define([b4_namespace_close], +[b4_user_code([b4_percent_define_get_syncline([[api.namespace]])dnl +m4_bpatsubst(m4_dquote(m4_bpatsubst(m4_dquote(b4_namespace_ref[ ]), + [^\(.\)[ ]*\(::\)?\([^][:]\|:[^:]\)*], + [\1])), + [::\([^][:]\|:[^:]\)*], [} ])[} // ]b4_namespace_ref])]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + + +# b4_token_enums +# -------------- +# Output the definition of the token kinds. +m4_define([b4_token_enums], +[[enum token_kind_type + { + ]b4_symbol([-2], [id])[ = -2, +]b4_symbol_foreach([b4_token_enum])dnl +[ };]dnl +]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[enum symbol_kind_type + { + YYNTOKENS = ]b4_tokens_number[, ///< Number of tokens. + ]b4_symbol(empty, kind_base)[ = -2, +]b4_symbol_foreach([ b4_symbol_enum])dnl +[ };]]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + + +# b4_value_type_declare +# --------------------- +# Declare value_type. +m4_define([b4_value_type_declare], +[b4_value_type_setup[]dnl +[ /// Symbol semantic values. +]m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), +[code], +[[ typedef ]b4_percent_define_get([[api.value.type]])[ value_type;]], +[m4_bmatch(b4_percent_define_get([[api.value.type]]), +[union\|union-directive], +[[ union value_type + { +]b4_user_union_members[ + };]])])dnl +]) + + +# b4_public_types_declare +# ----------------------- +# Define the public types: token, semantic value, location, and so forth. +# Depending on %define token_lex, may be output in the header or source file. +m4_define([b4_public_types_declare], +[b4_glr2_cc_if( +[b4_value_type_declare], +[[#ifdef ]b4_api_PREFIX[STYPE +# ifdef __GNUC__ +# pragma GCC message "bison: do not #define ]b4_api_PREFIX[STYPE in C++, use %define api.value.type" +# endif + typedef ]b4_api_PREFIX[STYPE value_type; +#else +]b4_value_type_declare[ +#endif + /// Backward compatibility (Bison 3.8). + typedef value_type semantic_type; +]])[]b4_locations_if([ + /// Symbol locations. + typedef b4_percent_define_get([[api.location.type]], + [[location]]) location_type;])[ + + /// Syntax errors thrown from user actions. + struct syntax_error : std::runtime_error + { + syntax_error (]b4_locations_if([const location_type& l, ])[const std::string& m) + : std::runtime_error (m)]b4_locations_if([ + , location (l)])[ + {} + + syntax_error (const syntax_error& s) + : std::runtime_error (s.what ())]b4_locations_if([ + , location (s.location)])[ + {} + + ~syntax_error () YY_NOEXCEPT YY_NOTHROW;]b4_locations_if([ + + location_type location;])[ + }; + + /// Token kinds. + struct token + { + ]b4_token_enums[]b4_glr2_cc_if([], [[ + /// Backward compatibility alias (Bison 3.6). + typedef token_kind_type yytokentype;]])[ + }; + + /// Token kind, as returned by yylex. + typedef token::token_kind_type token_kind_type;]b4_glr2_cc_if([], [[ + + /// Backward compatibility alias (Bison 3.6). + typedef token_kind_type token_type;]])[ + + /// Symbol kinds. + struct symbol_kind + { + ]b4_declare_symbol_enum[ + }; + + /// (Internal) symbol kind. + typedef symbol_kind::symbol_kind_type symbol_kind_type; + + /// The number of tokens. + static const symbol_kind_type YYNTOKENS = symbol_kind::YYNTOKENS; +]]) + + +# b4_symbol_type_define +# --------------------- +# Define symbol_type, the external type for symbols used for symbol +# constructors. +m4_define([b4_symbol_type_define], +[[ /// A complete symbol. + /// + /// Expects its Base type to provide access to the symbol kind + /// via kind (). + /// + /// Provide access to semantic value]b4_locations_if([ and location])[. + template + struct basic_symbol : Base + { + /// Alias to Base. + typedef Base super_type; + + /// Default constructor. + basic_symbol () YY_NOEXCEPT + : value ()]b4_locations_if([ + , location ()])[ + {} + +#if 201103L <= YY_CPLUSPLUS + /// Move constructor. + basic_symbol (basic_symbol&& that) + : Base (std::move (that)) + , value (]b4_variant_if([], [std::move (that.value)]))b4_locations_if([ + , location (std::move (that.location))])[ + {]b4_variant_if([ + b4_symbol_variant([this->kind ()], [value], [move], + [std::move (that.value)]) + ])[} +#endif + + /// Copy constructor. + basic_symbol (const basic_symbol& that);]b4_variant_if([[ + + /// Constructors for typed symbols. +]b4_type_foreach([b4_basic_symbol_constructor_define], [ +])], [[ + /// Constructor for valueless symbols. + basic_symbol (typename Base::kind_type t]b4_locations_if([, + YY_MOVE_REF (location_type) l])[); + + /// Constructor for symbols with semantic value. + basic_symbol (typename Base::kind_type t, + YY_RVREF (value_type) v]b4_locations_if([, + YY_RVREF (location_type) l])[); +]])[ + /// Destroy the symbol. + ~basic_symbol () + { + clear (); + } + +]b4_glr2_cc_if([[ + /// Copy assignment. + basic_symbol& operator= (const basic_symbol& that) + { + Base::operator= (that);]b4_variant_if([[ + ]b4_symbol_variant([this->kind ()], [value], [copy], + [that.value])], [[ + value = that.value]])[;]b4_locations_if([[ + location = that.location;]])[ + return *this; + } + + /// Move assignment. + basic_symbol& operator= (basic_symbol&& that) + { + Base::operator= (std::move (that));]b4_variant_if([[ + ]b4_symbol_variant([this->kind ()], [value], [move], + [std::move (that.value)])], [[ + value = std::move (that.value)]])[;]b4_locations_if([[ + location = std::move (that.location);]])[ + return *this; + } +]])[ + + /// Destroy contents, and record that is empty. + void clear () YY_NOEXCEPT + {]b4_variant_if([[ + // User destructor. + symbol_kind_type yykind = this->kind (); + basic_symbol& yysym = *this; + (void) yysym; + switch (yykind) + { +]b4_symbol_foreach([b4_symbol_destructor])dnl +[ default: + break; + } + + // Value type destructor. +]b4_symbol_variant([[yykind]], [[value]], [[template destroy]])])[ + Base::clear (); + } + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of this symbol. + const char *name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + }]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of this symbol. + const char *name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of this symbol. + std::string name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + }]])[]b4_glr2_cc_if([], [[ + + /// Backward compatibility (Bison 3.6). + symbol_kind_type type_get () const YY_NOEXCEPT;]])[ + + /// Whether empty. + bool empty () const YY_NOEXCEPT; + + /// Destructive move, \a s is emptied into this. + void move (basic_symbol& s); + + /// The semantic value. + value_type value;]b4_locations_if([ + + /// The location. + location_type location;])[ + + private: +#if YY_CPLUSPLUS < 201103L + /// Assignment operator. + basic_symbol& operator= (const basic_symbol& that); +#endif + }; + + /// Type access provider for token (enum) based symbols. + struct by_kind + { + /// The symbol kind as needed by the constructor. + typedef token_kind_type kind_type; + + /// Default constructor. + by_kind () YY_NOEXCEPT; + +#if 201103L <= YY_CPLUSPLUS + /// Move constructor. + by_kind (by_kind&& that) YY_NOEXCEPT; +#endif + + /// Copy constructor. + by_kind (const by_kind& that) YY_NOEXCEPT; + + /// Constructor from (external) token numbers. + by_kind (kind_type t) YY_NOEXCEPT; + +]b4_glr2_cc_if([[ + /// Copy assignment. + by_kind& operator= (const by_kind& that); + + /// Move assignment. + by_kind& operator= (by_kind&& that); +]])[ + + /// Record that this symbol is empty. + void clear () YY_NOEXCEPT; + + /// Steal the symbol kind from \a that. + void move (by_kind& that); + + /// The (internal) type number (corresponding to \a type). + /// \a empty when empty. + symbol_kind_type kind () const YY_NOEXCEPT;]b4_glr2_cc_if([], [[ + + /// Backward compatibility (Bison 3.6). + symbol_kind_type type_get () const YY_NOEXCEPT;]])[ + + /// The symbol kind. + /// \a ]b4_symbol_prefix[YYEMPTY when empty. + symbol_kind_type kind_; + };]b4_glr2_cc_if([], [[ + + /// Backward compatibility for a private implementation detail (Bison 3.6). + typedef by_kind by_type;]])[ + + /// "External" symbols: returned by the scanner. + struct symbol_type : basic_symbol + {]b4_variant_if([[ + /// Superclass. + typedef basic_symbol super_type; + + /// Empty symbol. + symbol_type () YY_NOEXCEPT {} + + /// Constructor for valueless symbols, and symbols from each type. +]b4_type_foreach([_b4_symbol_constructor_define])dnl + ])[}; +]]) + + +# b4_public_types_define(hh|cc) +# ----------------------------- +# Provide the implementation needed by the public types. +m4_define([b4_public_types_define], +[[ // basic_symbol. + template + ]b4_parser_class[::basic_symbol::basic_symbol (const basic_symbol& that) + : Base (that) + , value (]b4_variant_if([], [that.value]))b4_locations_if([ + , location (that.location)])[ + {]b4_variant_if([ + b4_symbol_variant([this->kind ()], [value], [copy], + [YY_MOVE (that.value)]) + ])[} + +]b4_variant_if([], [[ + /// Constructor for valueless symbols. + template + ]b4_parser_class[::basic_symbol::basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_locations_if([YY_MOVE_REF (location_type) l]))[) + : Base (t) + , value ()]b4_locations_if([ + , location (l)])[ + {} + + template + ]b4_parser_class[::basic_symbol::basic_symbol (]b4_join( + [typename Base::kind_type t], + [YY_RVREF (value_type) v], + b4_locations_if([YY_RVREF (location_type) l]))[) + : Base (t) + , value (]b4_variant_if([], [YY_MOVE (v)])[)]b4_locations_if([ + , location (YY_MOVE (l))])[ + {]b4_variant_if([[ + (void) v; + ]b4_symbol_variant([this->kind ()], [value], [YY_MOVE_OR_COPY], [YY_MOVE (v)])])[}]])[ + +]b4_glr2_cc_if([], [[ + template + ]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::basic_symbol::type_get () const YY_NOEXCEPT + { + return this->kind (); + } +]])[ + + template + bool + ]b4_parser_class[::basic_symbol::empty () const YY_NOEXCEPT + { + return this->kind () == ]b4_symbol(empty, kind)[; + } + + template + void + ]b4_parser_class[::basic_symbol::move (basic_symbol& s) + { + super_type::move (s); + ]b4_variant_if([b4_symbol_variant([this->kind ()], [value], [move], + [YY_MOVE (s.value)])], + [value = YY_MOVE (s.value);])[]b4_locations_if([ + location = YY_MOVE (s.location);])[ + } + + // by_kind. + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind () YY_NOEXCEPT + : kind_ (]b4_symbol(empty, kind)[) + {} + +#if 201103L <= YY_CPLUSPLUS + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (by_kind&& that) YY_NOEXCEPT + : kind_ (that.kind_) + { + that.clear (); + } +#endif + + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (const by_kind& that) YY_NOEXCEPT + : kind_ (that.kind_) + {} + + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (token_kind_type t) YY_NOEXCEPT + : kind_ (yytranslate_ (t)) + {} + +]b4_glr2_cc_if([[ + ]b4_inline([$1])]b4_parser_class[::by_kind& + b4_parser_class[::by_kind::by_kind::operator= (const by_kind& that) + { + kind_ = that.kind_; + return *this; + } + + ]b4_inline([$1])]b4_parser_class[::by_kind& + b4_parser_class[::by_kind::by_kind::operator= (by_kind&& that) + { + kind_ = that.kind_; + that.clear (); + return *this; + } +]])[ + + ]b4_inline([$1])[void + ]b4_parser_class[::by_kind::clear () YY_NOEXCEPT + { + kind_ = ]b4_symbol(empty, kind)[; + } + + ]b4_inline([$1])[void + ]b4_parser_class[::by_kind::move (by_kind& that) + { + kind_ = that.kind_; + that.clear (); + } + + ]b4_inline([$1])[]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_kind::kind () const YY_NOEXCEPT + { + return kind_; + } + +]b4_glr2_cc_if([], [[ + ]b4_inline([$1])[]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_kind::type_get () const YY_NOEXCEPT + { + return this->kind (); + } +]])[ +]]) + + +# b4_token_constructor_define +# ---------------------------- +# Define make_FOO for all the token kinds. +# Use at class-level. Redefined in variant.hh. +m4_define([b4_token_constructor_define], []) + + +# b4_yytranslate_define(cc|hh) +# ---------------------------- +# Define yytranslate_. Sometimes used in the header file ($1=hh), +# sometimes in the cc file. +m4_define([b4_yytranslate_define], +[ b4_inline([$1])b4_parser_class[::symbol_kind_type + ]b4_parser_class[::yytranslate_ (int t) YY_NOEXCEPT + { +]b4_api_token_raw_if( +[[ return static_cast (t);]], +[[ // YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to + // TOKEN-NUM as returned by yylex. + static + const ]b4_int_type_for([b4_translate])[ + translate_table[] = + { + ]b4_translate[ + }; + // Last valid token kind. + const int code_max = ]b4_code_max[; + + if (t <= 0) + return symbol_kind::]b4_symbol_prefix[YYEOF; + else if (t <= code_max) + return static_cast (translate_table[t]); + else + return symbol_kind::]b4_symbol_prefix[YYUNDEF;]])[ + } +]]) + + +# b4_lhs_value([TYPE]) +# -------------------- +m4_define([b4_lhs_value], +[b4_symbol_value([yyval], [$1])]) + + +# b4_rhs_value(RULE-LENGTH, POS, [TYPE]) +# -------------------------------------- +# FIXME: Dead code. +m4_define([b4_rhs_value], +[b4_symbol_value([yysemantic_stack_@{($1) - ($2)@}], [$3])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(yylocation_stack_@{($1) - ($2)@})]) + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +# Change the parameter names from "foo" into "foo_yyarg", so that +# there is no collision bw the user chosen attribute name, and the +# argument name in the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [m4_map_sep([b4_parse_param_decl_1], [, ], [b4_parse_param])])]) + +m4_define([b4_parse_param_decl_1], +[$1_yyarg]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [ + b4_cc_constructor_calls(b4_parse_param)])]) +m4_define([b4_cc_constructor_calls], + [m4_map_sep([b4_cc_constructor_call], [, + ], [$@])]) +m4_define([b4_cc_constructor_call], + [$2 ($2_yyarg)]) + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + // User arguments. +b4_cc_var_decls(b4_parse_param)])]) +m4_define([b4_cc_var_decls], + [m4_map_sep([b4_cc_var_decl], [ +], [$@])]) +m4_define([b4_cc_var_decl], + [ $1;]) + + +## ---------## +## Values. ## +## ---------## + +# b4_yylloc_default_define +# ------------------------ +# Define YYLLOC_DEFAULT. +m4_define([b4_yylloc_default_define], +[[/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +# ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).begin = YYRHSLOC (Rhs, 1).begin; \ + (Current).end = YYRHSLOC (Rhs, N).end; \ + } \ + else \ + { \ + (Current).begin = (Current).end = YYRHSLOC (Rhs, 0).end; \ + } \ + while (false) +# endif +]]) + +## -------- ## +## Checks. ## +## -------- ## + +b4_token_ctor_if([b4_variant_if([], + [b4_fatal_at(b4_percent_define_get_loc(api.token.constructor), + [cannot use '%s' without '%s'], + [%define api.token.constructor], + [%define api.value.type variant]))])]) diff --git a/bison/MinSizeRel/data/skeletons/c-like.m4 b/bison/MinSizeRel/data/skeletons/c-like.m4 new file mode 100644 index 0000000..a9bbc2e --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/c-like.m4 @@ -0,0 +1,72 @@ + -*- Autoconf -*- + +# Common code for C-like languages (C, C++, Java, etc.) + +# Copyright (C) 2012-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# _b4_comment(TEXT, OPEN, CONTINUE, END) +# -------------------------------------- +# Put TEXT in comment. Avoid trailing spaces: don't indent empty lines. +# Avoid adding indentation to the first line, as the indentation comes +# from OPEN. That's why we don't patsubst([$1], [^\(.\)], [ \1]). +# Turn "*/" in TEXT into "* /" so that we don't unexpectedly close +# the comments before its end. +# +# Prefix all the output lines with PREFIX. +m4_define([_b4_comment], +[$2[]b4_gsub(m4_expand([$1]), + [[*]/], [*\\/], + [/[*]], [/\\*], + [ +\(.\)], [ +$3\1])$4]) + + +# b4_comment(TEXT, [PREFIX]) +# -------------------------- +# Put TEXT in comment. Prefix all the output lines with PREFIX. +m4_define([b4_comment], +[_b4_comment([$1], [$2/* ], [$2 ], [ */])]) + + + + +# _b4_dollar_dollar(VALUE, SYMBOL-NUM, FIELD, DEFAULT-FIELD) +# ---------------------------------------------------------- +# If FIELD (or DEFAULT-FIELD) is non-null, return "VALUE.FIELD", +# otherwise just VALUE. Be sure to pass "(VALUE)" if VALUE is a +# pointer. +m4_define([_b4_dollar_dollar], +[b4_symbol_value([$1], + [$2], + m4_if([$3], [[]], + [[$4]], [[$3]]))]) + +# b4_dollar_pushdef(VALUE-POINTER, SYMBOL-NUM, [TYPE_TAG], LOCATION) +# b4_dollar_popdef +# ------------------------------------------------------------------ +# Define b4_dollar_dollar for VALUE-POINTER and DEFAULT-FIELD, +# and b4_at_dollar for LOCATION. +m4_define([b4_dollar_pushdef], +[m4_pushdef([b4_dollar_dollar], + [_b4_dollar_dollar([$1], [$2], m4_dquote($][1), [$3])])dnl +m4_pushdef([b4_at_dollar], [$4])dnl +]) +m4_define([b4_dollar_popdef], +[m4_popdef([b4_at_dollar])dnl +m4_popdef([b4_dollar_dollar])dnl +]) diff --git a/bison/MinSizeRel/data/skeletons/c-skel.m4 b/bison/MinSizeRel/data/skeletons/c-skel.m4 new file mode 100644 index 0000000..ac6ddd6 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/c-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# C skeleton dispatching for Bison. + +# Copyright (C) 2006-2007, 2009-2015, 2018-2021 Free Software +# Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.c]])]) +b4_nondeterministic_if([m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.c]])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[yacc.c]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/bison/MinSizeRel/data/skeletons/c.m4 b/bison/MinSizeRel/data/skeletons/c.m4 new file mode 100644 index 0000000..2425b07 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/c.m4 @@ -0,0 +1,1125 @@ + -*- Autoconf -*- + +# C M4 Macros for Bison. + +# Copyright (C) 2002, 2004-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c-like.m4]) + +# b4_tocpp(STRING) +# ---------------- +# Convert STRING into a valid C macro name. +m4_define([b4_tocpp], +[m4_toupper(m4_bpatsubst(m4_quote($1), [[^a-zA-Z0-9]+], [_]))]) + + +# b4_cpp_guard(FILE) +# ------------------ +# A valid C macro name to use as a CPP header guard for FILE. +m4_define([b4_cpp_guard], +[[YY_]b4_tocpp(m4_defn([b4_prefix])/[$1])[_INCLUDED]]) + + +# b4_cpp_guard_open(FILE) +# b4_cpp_guard_close(FILE) +# ------------------------ +# If FILE does not expand to nothing, open/close CPP inclusion guards for FILE. +m4_define([b4_cpp_guard_open], +[m4_ifval(m4_quote($1), +[#ifndef b4_cpp_guard([$1]) +# define b4_cpp_guard([$1])])]) + +m4_define([b4_cpp_guard_close], +[m4_ifval(m4_quote($1), +[#endif b4_comment([!b4_cpp_guard([$1])])])]) + + +## ---------------- ## +## Identification. ## +## ---------------- ## + +# b4_identification +# ----------------- +# Depends on individual skeletons to define b4_pure_flag, b4_push_flag, or +# b4_pull_flag if they use the values of the %define variables api.pure or +# api.push-pull. +m4_define([b4_identification], +[[/* Identify Bison output, and Bison version. */ +#define YYBISON ]b4_version[ + +/* Bison version string. */ +#define YYBISON_VERSION "]b4_version_string[" + +/* Skeleton name. */ +#define YYSKELETON_NAME ]b4_skeleton[]m4_ifdef([b4_pure_flag], [[ + +/* Pure parsers. */ +#define YYPURE ]b4_pure_flag])[]m4_ifdef([b4_push_flag], [[ + +/* Push parsers. */ +#define YYPUSH ]b4_push_flag])[]m4_ifdef([b4_pull_flag], [[ + +/* Pull parsers. */ +#define YYPULL ]b4_pull_flag])[ +]]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# b4_api_prefix, b4_api_PREFIX +# ---------------------------- +# Corresponds to %define api.prefix +b4_percent_define_default([[api.prefix]], [[yy]]) +m4_define([b4_api_prefix], +[b4_percent_define_get([[api.prefix]])]) +m4_define([b4_api_PREFIX], +[m4_toupper(b4_api_prefix)]) + + +# b4_prefix +# --------- +# If the %name-prefix is not given, it is api.prefix. +m4_define_default([b4_prefix], [b4_api_prefix]) + +# If the %union is not named, its name is YYSTYPE. +b4_percent_define_default([[api.value.union.name]], + [b4_api_PREFIX[][STYPE]]) + +b4_percent_define_default([[api.symbol.prefix]], [[YYSYMBOL_]]) + +## ------------------------ ## +## Pure/impure interfaces. ## +## ------------------------ ## + +# b4_yylex_formals +# ---------------- +# All the yylex formal arguments. +# b4_lex_param arrives quoted twice, but we want to keep only one level. +m4_define([b4_yylex_formals], +[b4_pure_if([[[b4_api_PREFIX[STYPE *yylvalp]], [[&yylval]]][]dnl +b4_locations_if([, [b4_api_PREFIX[LTYPE *yyllocp], [&yylloc]]])])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param)]) + + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_function_call([yylex], [int], b4_yylex_formals)]) + + +# b4_user_args +# ------------ +m4_define([b4_user_args], +[m4_ifset([b4_parse_param], [, b4_user_args_no_comma])]) + +# b4_user_args_no_comma +# --------------------- +m4_define([b4_user_args_no_comma], +[m4_ifset([b4_parse_param], [b4_args(b4_parse_param)])]) + + +# b4_user_formals +# --------------- +# The possible parse-params formal arguments preceded by a comma. +m4_define([b4_user_formals], +[m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])]) + + +# b4_parse_param +# -------------- +# If defined, b4_parse_param arrives double quoted, but below we prefer +# it to be single quoted. +m4_define([b4_parse_param], +b4_parse_param) + + +# b4_parse_param_for(DECL, FORMAL, BODY) +# --------------------------------------- +# Iterate over the user parameters, binding the declaration to DECL, +# the formal name to FORMAL, and evaluating the BODY. +m4_define([b4_parse_param_for], +[m4_foreach([$1_$2], m4_defn([b4_parse_param]), +[m4_pushdef([$1], m4_unquote(m4_car($1_$2)))dnl +m4_pushdef([$2], m4_shift($1_$2))dnl +$3[]dnl +m4_popdef([$2])dnl +m4_popdef([$1])dnl +])]) + + +# b4_use(EXPR) +# ------------ +# Pacify the compiler about some maybe unused value. +m4_define([b4_use], +[YY_USE ($1)]) + +# b4_parse_param_use([VAL], [LOC]) +# -------------------------------- +# 'YY_USE' VAL, LOC if locations are enabled, and all the parse-params. +m4_define([b4_parse_param_use], +[m4_ifvaln([$1], [ b4_use([$1]);])dnl +b4_locations_if([m4_ifvaln([$2], [ b4_use([$2]);])])dnl +b4_parse_param_for([Decl], [Formal], [ b4_use(Formal); +])dnl +]) + + +## ------------ ## +## Data Types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return a narrow int type able to handle integers ranging from MIN +# to MAX (included) in portable C code. Assume MIN and MAX fall in +# 'int' range. +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-127], [127]), [1], [signed char], + b4_ints_in($@, [0], [255]), [1], [unsigned char], + + b4_ints_in($@, [-32767], [32767]), [1], [short], + b4_ints_in($@, [0], [65535]), [1], [unsigned short], + + [int])]) + +# b4_c99_int_type(MIN, MAX) +# ------------------------- +# Like b4_int_type, but for C99. +# b4_c99_int_type_define replaces b4_int_type with this. +m4_define([b4_c99_int_type], +[m4_if(b4_ints_in($@, [-127], [127]), [1], [yytype_int8], + b4_ints_in($@, [0], [255]), [1], [yytype_uint8], + + b4_ints_in($@, [-32767], [32767]), [1], [yytype_int16], + b4_ints_in($@, [0], [65535]), [1], [yytype_uint16], + + [int])]) + +# b4_c99_int_type_define +# ---------------------- +# Define private types suitable for holding small integers in C99 or later. +m4_define([b4_c99_int_type_define], +[m4_copy_force([b4_c99_int_type], [b4_int_type])dnl +[#ifdef short +# undef short +#endif + +/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure + and (if available) are included + so that the code can choose integer types of a good width. */ + +#ifndef __PTRDIFF_MAX__ +# include /* INFRINGES ON USER NAME SPACE */ +# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_STDINT_H +# endif +#endif + +/* Narrow types that promote to a signed type and that can represent a + signed or unsigned integer of at least N bits. In tables they can + save space and decrease cache pressure. Promoting to a signed type + helps avoid bugs in integer arithmetic. */ + +#ifdef __INT_LEAST8_MAX__ +typedef __INT_LEAST8_TYPE__ yytype_int8; +#elif defined YY_STDINT_H +typedef int_least8_t yytype_int8; +#else +typedef signed char yytype_int8; +#endif + +#ifdef __INT_LEAST16_MAX__ +typedef __INT_LEAST16_TYPE__ yytype_int16; +#elif defined YY_STDINT_H +typedef int_least16_t yytype_int16; +#else +typedef short yytype_int16; +#endif + +/* Work around bug in HP-UX 11.23, which defines these macros + incorrectly for preprocessor constants. This workaround can likely + be removed in 2023, as HPE has promised support for HP-UX 11.23 + (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of + . */ +#ifdef __hpux +# undef UINT_LEAST8_MAX +# undef UINT_LEAST16_MAX +# define UINT_LEAST8_MAX 255 +# define UINT_LEAST16_MAX 65535 +#endif + +#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST8_TYPE__ yytype_uint8; +#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST8_MAX <= INT_MAX) +typedef uint_least8_t yytype_uint8; +#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX +typedef unsigned char yytype_uint8; +#else +typedef short yytype_uint8; +#endif + +#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST16_TYPE__ yytype_uint16; +#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST16_MAX <= INT_MAX) +typedef uint_least16_t yytype_uint16; +#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX +typedef unsigned short yytype_uint16; +#else +typedef int yytype_uint16; +#endif]]) + + +# b4_sizes_types_define +# --------------------- +# Define YYPTRDIFF_T/YYPTRDIFF_MAXIMUM, YYSIZE_T/YYSIZE_MAXIMUM, +# and YYSIZEOF. +m4_define([b4_sizes_types_define], +[[#ifndef YYPTRDIFF_T +# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__ +# define YYPTRDIFF_T __PTRDIFF_TYPE__ +# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__ +# elif defined PTRDIFF_MAX +# ifndef ptrdiff_t +# include /* INFRINGES ON USER NAME SPACE */ +# endif +# define YYPTRDIFF_T ptrdiff_t +# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX +# else +# define YYPTRDIFF_T long +# define YYPTRDIFF_MAXIMUM LONG_MAX +# endif +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# else +# define YYSIZE_T unsigned +# endif +#endif + +#define YYSIZE_MAXIMUM \ + YY_CAST (YYPTRDIFF_T, \ + (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \ + ? YYPTRDIFF_MAXIMUM \ + : YY_CAST (YYSIZE_T, -1))) + +#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X)) +]]) + + +# b4_int_type_for(NAME) +# --------------------- +# Return a narrow int type able to handle numbers ranging from +# 'NAME_min' to 'NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + + +# b4_table_value_equals(TABLE, VALUE, LITERAL, SYMBOL) +# ---------------------------------------------------- +# Without inducing a comparison warning from the compiler, check if the +# literal value LITERAL equals VALUE from table TABLE, which must have +# TABLE_min and TABLE_max defined. SYMBOL denotes +m4_define([b4_table_value_equals], +[m4_if(m4_eval($3 < m4_indir([b4_]$1[_min]) + || m4_indir([b4_]$1[_max]) < $3), [1], + [[0]], + [(($2) == $4)])]) + + +## ----------------- ## +## Compiler issues. ## +## ----------------- ## + +# b4_attribute_define([noreturn]) +# ------------------------------- +# Provide portable compiler "attributes". If "noreturn" is passed, define +# _Noreturn. +m4_define([b4_attribute_define], +[[#ifndef YY_ATTRIBUTE_PURE +# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define YY_ATTRIBUTE_PURE +# endif +#endif + +#ifndef YY_ATTRIBUTE_UNUSED +# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +# else +# define YY_ATTRIBUTE_UNUSED +# endif +#endif + +]m4_bmatch([$1], [\bnoreturn\b], [[/* The _Noreturn keyword of C11. */ +]dnl This is close to lib/_Noreturn.h, except that we do enable +dnl the use of [[noreturn]], because _Noreturn is used in places +dnl where [[noreturn]] works in C++. We need this in particular +dnl because of glr.cc which compiles code from glr.c in C++. +dnl And the C++ compiler chokes on _Noreturn. Also, we do not +dnl use C' _Noreturn in C++, to avoid -Wc11-extensions warnings. +[#ifndef _Noreturn +# if (defined __cplusplus \ + && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \ + || (defined _MSC_VER && 1900 <= _MSC_VER))) +# define _Noreturn [[noreturn]] +# elif ((!defined __cplusplus || defined __clang__) \ + && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ + || (!defined __STRICT_ANSI__ \ + && (4 < __GNUC__ + (7 <= __GNUC_MINOR__) \ + || (defined __apple_build_version__ \ + ? 6000000 <= __apple_build_version__ \ + : 3 < __clang_major__ + (5 <= __clang_minor__)))))) + /* _Noreturn works as-is. */ +# elif (2 < __GNUC__ + (8 <= __GNUC_MINOR__) || defined __clang__ \ + || 0x5110 <= __SUNPRO_C) +# define _Noreturn __attribute__ ((__noreturn__)) +# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0) +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif + +]])[/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YY_USE(E) ((void) (E)) +#else +# define YY_USE(E) /* empty */ +#endif + +/* Suppress an incorrect diagnostic about yylval being uninitialized. */ +#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# if __GNUC__ * 100 + __GNUC_MINOR__ < 407 +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") +# else +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \ + _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") +# endif +# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ + _Pragma ("GCC diagnostic pop") +#else +# define YY_INITIAL_VALUE(Value) Value +#endif +#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_END +#endif +#ifndef YY_INITIAL_VALUE +# define YY_INITIAL_VALUE(Value) /* Nothing. */ +#endif + +#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_USELESS_CAST_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"") +# define YY_IGNORE_USELESS_CAST_END \ + _Pragma ("GCC diagnostic pop") +#endif +#ifndef YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_END +#endif +]]) + + +# b4_cast_define +# -------------- +m4_define([b4_cast_define], +[# ifndef YY_CAST +# ifdef __cplusplus +# define YY_CAST(Type, Val) static_cast (Val) +# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast (Val) +# else +# define YY_CAST(Type, Val) ((Type) (Val)) +# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val)) +# endif +# endif[]dnl +]) + + +# b4_null_define +# -------------- +# Portability issues: define a YY_NULLPTR appropriate for the current +# language (C, C++98, or C++11). +# +# In C++ pre C++11 it is standard practice to use 0 (not NULL) for the +# null pointer. In C, prefer ((void*)0) to avoid having to include stdlib.h. +m4_define([b4_null_define], +[# ifndef YY_NULLPTR +# if defined __cplusplus +# if 201103L <= __cplusplus +# define YY_NULLPTR nullptr +# else +# define YY_NULLPTR 0 +# endif +# else +# define YY_NULLPTR ((void*)0) +# endif +# endif[]dnl +]) + + +# b4_null +# ------- +# Return a null pointer constant. +m4_define([b4_null], [YY_NULLPTR]) + + + +## ---------## +## Values. ## +## ---------## + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "yy" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [b4_comment([$3])])dnl +static const b4_int_type_for([$2]) yy$1[[]] = +{ + $2 +};dnl +]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + +# Because C enums are not scoped, because tokens are exposed in the +# header, and because these tokens are common to all the parsers, we +# need to make sure their names don't collide: use the api.prefix. +# YYEOF is special, since the user may give it a different name. +m4_define([b4_symbol(-2, id)], [b4_api_PREFIX[][EMPTY]]) +m4_define([b4_symbol(-2, tag)], [[No symbol.]]) + +m4_if(b4_symbol(eof, id), [YYEOF], + [m4_define([b4_symbol(0, id)], [b4_api_PREFIX[][EOF]])]) +m4_define([b4_symbol(1, id)], [b4_api_PREFIX[][error]]) +m4_define([b4_symbol(2, id)], [b4_api_PREFIX[][UNDEF]]) + + +# b4_token_define(TOKEN-NUM) +# -------------------------- +# Output the definition of this token as #define. +m4_define([b4_token_define], +[b4_token_format([#define %s %s], [$1])]) + +# b4_token_defines +# ---------------- +# Output the definition of the tokens. +m4_define([b4_token_defines], +[[/* Token kinds. */ +#define ]b4_symbol(empty, [id])[ -2 +]m4_join([ +], b4_symbol_map([b4_token_define])) +]) + + +# b4_token_enum(TOKEN-NUM) +# ------------------------ +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_visible_if([$1], + [m4_format([ %-30s %s], + m4_format([[%s = %s%s%s]], + b4_symbol([$1], [id]), + b4_symbol([$1], b4_api_token_raw_if([[number]], [[code]])), + m4_if([$1], b4_last_enum_token, [], [[,]])), + [b4_symbol_tag_comment([$1])])])]) + + +# b4_token_enums +# -------------- +# The definition of the token kinds. +m4_define([b4_token_enums], +[b4_any_token_visible_if([[/* Token kinds. */ +#ifndef ]b4_api_PREFIX[TOKENTYPE +# define ]b4_api_PREFIX[TOKENTYPE + enum ]b4_api_prefix[tokentype + { + ]b4_symbol(empty, [id])[ = -2, +]b4_symbol_foreach([b4_token_enum])dnl +[ }; + typedef enum ]b4_api_prefix[tokentype ]b4_api_prefix[token_kind_t; +#endif +]])]) + + +# b4_token_enums_defines +# ---------------------- +# The definition of the tokens (if there are any) as enums and, +# if POSIX Yacc is enabled, as #defines. +m4_define([b4_token_enums_defines], +[b4_token_enums[]b4_yacc_if([b4_token_defines])]) + + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[N_($1)]]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-40s %s], + m4_format([[%s = %s%s%s]], + b4_symbol([$1], [kind_base]), + [$1], + m4_if([$1], b4_last_symbol, [], [[,]])), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[/* Symbol kind. */ +enum yysymbol_kind_t +{ + ]b4_symbol(empty, [kind_base])[ = -2, +]b4_symbol_foreach([b4_symbol_enum])dnl +[}; +typedef enum yysymbol_kind_t yysymbol_kind_t; +]])]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [($1.$3)], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type]))], + [$1])], + [$1])])]) + + +## ---------------------- ## +## Defining C functions. ## +## ---------------------- ## + + +# b4_formals([DECL1, NAME1], ...) +# ------------------------------- +# The formal arguments of a C function definition. +m4_define([b4_formals], +[m4_if([$#], [0], [void], + [$#$1], [1], [void], + [m4_map_sep([b4_formal], [, ], [$@])])]) + +m4_define([b4_formal], +[$1]) + + +# b4_function_declare(NAME, RETURN-VALUE, [DECL1, NAME1], ...) +# ------------------------------------------------------------ +# Declare the function NAME. +m4_define([b4_function_declare], +[$2 $1 (b4_formals(m4_shift2($@)));[]dnl +]) + + + +## --------------------- ## +## Calling C functions. ## +## --------------------- ## + + +# b4_function_call(NAME, RETURN-VALUE, [DECL1, NAME1], ...) +# ----------------------------------------------------------- +# Call the function NAME with arguments NAME1, NAME2 etc. +m4_define([b4_function_call], +[$1 (b4_args(m4_shift2($@)))[]dnl +]) + + +# b4_args([DECL1, NAME1], ...) +# ---------------------------- +# Output the arguments NAME1, NAME2... +m4_define([b4_args], +[m4_map_sep([b4_arg], [, ], [$@])]) + +m4_define([b4_arg], +[$2]) + + +## ----------- ## +## Synclines. ## +## ----------- ## + +# b4_sync_start(LINE, FILE) +# ------------------------- +m4_define([b4_sync_start], [[#]line $1 $2]) + + +## -------------- ## +## User actions. ## +## -------------- ## + +# b4_case(LABEL, STATEMENTS, [COMMENTS]) +# -------------------------------------- +m4_define([b4_case], +[ case $1:m4_ifval([$3], [ b4_comment([$3])]) +$2 +b4_syncline([@oline@], [@ofile@])dnl + break;]) + + +# b4_predicate_case(LABEL, CONDITIONS) +# ------------------------------------ +m4_define([b4_predicate_case], +[ case $1: + if (! ( +$2)) YYERROR; +b4_syncline([@oline@], [@ofile@])dnl + break;]) + + +# b4_yydestruct_define +# -------------------- +# Define the "yydestruct" function. +m4_define_default([b4_yydestruct_define], +[[/*-----------------------------------------------. +| Release the memory associated to this symbol. | +`-----------------------------------------------*/ + +static void +yydestruct (const char *yymsg, + yysymbol_kind_t yykind, YYSTYPE *yyvaluep]b4_locations_if(dnl +[[, YYLTYPE *yylocationp]])[]b4_user_formals[) +{ +]b4_parse_param_use([yyvaluep], [yylocationp])dnl +[ if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp); + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + ]b4_symbol_actions([destructor])[ + YY_IGNORE_MAYBE_UNINITIALIZED_END +}]dnl +]) + + +# b4_yy_symbol_print_define +# ------------------------- +# Define the "yy_symbol_print" function. +m4_define_default([b4_yy_symbol_print_define], +[[ +/*-----------------------------------. +| Print this symbol's value on YYO. | +`-----------------------------------*/ + +static void +yy_symbol_value_print (FILE *yyo, + yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep]b4_locations_if(dnl +[[, YYLTYPE const * const yylocationp]])[]b4_user_formals[) +{ + FILE *yyoutput = yyo; +]b4_parse_param_use([yyoutput], [yylocationp])dnl +[ if (!yyvaluep) + return;] +b4_percent_code_get([[pre-printer]])dnl + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + b4_symbol_actions([printer]) + YY_IGNORE_MAYBE_UNINITIALIZED_END +b4_percent_code_get([[post-printer]])dnl +[} + + +/*---------------------------. +| Print this symbol on YYO. | +`---------------------------*/ + +static void +yy_symbol_print (FILE *yyo, + yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep]b4_locations_if(dnl +[[, YYLTYPE const * const yylocationp]])[]b4_user_formals[) +{ + YYFPRINTF (yyo, "%s %s (", + yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind)); + +]b4_locations_if([ YYLOCATION_PRINT (yyo, yylocationp); + YYFPRINTF (yyo, ": "); +])dnl +[ yy_symbol_value_print (yyo, yykind, yyvaluep]dnl +b4_locations_if([, yylocationp])[]b4_user_args[); + YYFPRINTF (yyo, ")"); +}]dnl +]) + + +## ---------------- ## +## api.value.type. ## +## ---------------- ## + + +# ---------------------- # +# api.value.type=union. # +# ---------------------- # + +# b4_symbol_type_register(SYMBOL-NUM) +# ----------------------------------- +# Symbol SYMBOL-NUM has a type (for variant) instead of a type-tag. +# Extend the definition of %union's body (b4_union_members) with a +# field of that type, and extend the symbol's "type" field to point to +# the field name, instead of the type name. +m4_define([b4_symbol_type_register], +[m4_define([b4_symbol($1, type_tag)], + [b4_symbol_if([$1], [has_id], + [b4_symbol([$1], [id])], + [yykind_[]b4_symbol([$1], [number])])])dnl +m4_append([b4_union_members], +m4_expand([m4_format([ %-40s %s], + m4_expand([b4_symbol([$1], [type]) b4_symbol([$1], [type_tag]);]), + [b4_symbol_tag_comment([$1])])])) +]) + + +# b4_type_define_tag(SYMBOL1-NUM, ...) +# ------------------------------------ +# For the batch of symbols SYMBOL1-NUM... (which all have the same +# type), enhance the %union definition for each of them, and set +# there "type" field to the field tag name, instead of the type name. +m4_define([b4_type_define_tag], +[b4_symbol_if([$1], [has_type], + [m4_map([b4_symbol_type_register], [$@])]) +]) + + +# b4_symbol_value_union(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------------- +# Same of b4_symbol_value, but when api.value.type=union. +m4_define([b4_symbol_value_union], +[m4_ifval([$3], + [(*($3*)(&$1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type_tag]))], + [$1])], + [$1])])]) + + +# b4_value_type_setup_union +# ------------------------- +# Setup support for api.value.type=union. Symbols are defined with a +# type instead of a union member name: build the corresponding union, +# and give the symbols their tag. +m4_define([b4_value_type_setup_union], +[m4_define([b4_union_members]) +b4_type_foreach([b4_type_define_tag]) +m4_copy_force([b4_symbol_value_union], [b4_symbol_value]) +]) + + +# -------------------------- # +# api.value.type = variant. # +# -------------------------- # + +# b4_value_type_setup_variant +# --------------------------- +# Setup support for api.value.type=variant. By default, fail, specialized +# by other skeletons. +m4_define([b4_value_type_setup_variant], +[b4_complain_at(b4_percent_define_get_loc([[api.value.type]]), + [['%s' does not support '%s']], + [b4_skeleton], + [%define api.value.type variant])]) + + +# _b4_value_type_setup_keyword +# ---------------------------- +# api.value.type is defined with a keyword/string syntax. Check if +# that is properly defined, and prepare its use. +m4_define([_b4_value_type_setup_keyword], +[b4_percent_define_check_values([[[[api.value.type]], + [[none]], + [[union]], + [[union-directive]], + [[variant]], + [[yystype]]]])dnl +m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_value_type_setup_union], + [variant], [b4_value_type_setup_variant])]) + + +# b4_value_type_setup +# ------------------- +# Check if api.value.type is properly defined, and possibly prepare +# its use. +b4_define_silent([b4_value_type_setup], +[# Define default value. +b4_percent_define_ifdef([[api.value.type]], [], +[# %union => api.value.type=union-directive +m4_ifdef([b4_union_members], +[m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [union-directive])], +[# no tag seen => api.value.type={int} +m4_if(b4_tag_seen_flag, 0, +[m4_define([b4_percent_define_kind(api.value.type)], [code]) +m4_define([b4_percent_define(api.value.type)], [int])], +[# otherwise api.value.type=yystype +m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [yystype])])])]) + +# Set up. +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), + [keyword\|string], [_b4_value_type_setup_keyword]) +]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + + +# b4_value_type_define +# -------------------- +m4_define([b4_value_type_define], +[b4_value_type_setup[]dnl +/* Value type. */ +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), +[code], +[[#if ! defined ]b4_api_PREFIX[STYPE && ! defined ]b4_api_PREFIX[STYPE_IS_DECLARED +typedef ]b4_percent_define_get([[api.value.type]])[ ]b4_api_PREFIX[STYPE; +# define ]b4_api_PREFIX[STYPE_IS_TRIVIAL 1 +# define ]b4_api_PREFIX[STYPE_IS_DECLARED 1 +#endif +]], +[m4_bmatch(b4_percent_define_get([[api.value.type]]), +[union\|union-directive], +[[#if ! defined ]b4_api_PREFIX[STYPE && ! defined ]b4_api_PREFIX[STYPE_IS_DECLARED +]b4_percent_define_get_syncline([[api.value.union.name]])dnl +[union ]b4_percent_define_get([[api.value.union.name]])[ +{ +]b4_user_union_members[ +}; +]b4_percent_define_get_syncline([[api.value.union.name]])dnl +[typedef union ]b4_percent_define_get([[api.value.union.name]])[ ]b4_api_PREFIX[STYPE; +# define ]b4_api_PREFIX[STYPE_IS_TRIVIAL 1 +# define ]b4_api_PREFIX[STYPE_IS_DECLARED 1 +#endif +]])])]) + + +# b4_location_type_define +# ----------------------- +m4_define([b4_location_type_define], +[[/* Location type. */ +]b4_percent_define_ifdef([[api.location.type]], +[[typedef ]b4_percent_define_get([[api.location.type]])[ ]b4_api_PREFIX[LTYPE; +]], +[[#if ! defined ]b4_api_PREFIX[LTYPE && ! defined ]b4_api_PREFIX[LTYPE_IS_DECLARED +typedef struct ]b4_api_PREFIX[LTYPE ]b4_api_PREFIX[LTYPE; +struct ]b4_api_PREFIX[LTYPE +{ + int first_line; + int first_column; + int last_line; + int last_column; +}; +# define ]b4_api_PREFIX[LTYPE_IS_DECLARED 1 +# define ]b4_api_PREFIX[LTYPE_IS_TRIVIAL 1 +#endif +]])]) + + +# b4_declare_yylstype +# ------------------- +# Declarations that might either go into the header (if --header) or +# in the parser body. Declare YYSTYPE/YYLTYPE, and yylval/yylloc. +m4_define([b4_declare_yylstype], +[b4_value_type_define[]b4_locations_if([ +b4_location_type_define]) + +b4_pure_if([], [[extern ]b4_api_PREFIX[STYPE ]b4_prefix[lval; +]b4_locations_if([[extern ]b4_api_PREFIX[LTYPE ]b4_prefix[lloc;]])])[]dnl +]) + + +# b4_YYDEBUG_define +# ----------------- +m4_define([b4_YYDEBUG_define], +[[/* Debug traces. */ +]m4_if(b4_api_prefix, [yy], +[[#ifndef YYDEBUG +# define YYDEBUG ]b4_parse_trace_if([1], [0])[ +#endif]], +[[#ifndef ]b4_api_PREFIX[DEBUG +# if defined YYDEBUG +#if YYDEBUG +# define ]b4_api_PREFIX[DEBUG 1 +# else +# define ]b4_api_PREFIX[DEBUG 0 +# endif +# else /* ! defined YYDEBUG */ +# define ]b4_api_PREFIX[DEBUG ]b4_parse_trace_if([1], [0])[ +# endif /* ! defined YYDEBUG */ +#endif /* ! defined ]b4_api_PREFIX[DEBUG */]])[]dnl +]) + +# b4_declare_yydebug +# ------------------ +m4_define([b4_declare_yydebug], +[b4_YYDEBUG_define[ +#if ]b4_api_PREFIX[DEBUG +extern int ]b4_prefix[debug; +#endif][]dnl +]) + +# b4_yylloc_default_define +# ------------------------ +# Define YYLLOC_DEFAULT. +m4_define([b4_yylloc_default_define], +[[/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +#ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ + (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ + (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ + (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ + } \ + else \ + { \ + (Current).first_line = (Current).last_line = \ + YYRHSLOC (Rhs, 0).last_line; \ + (Current).first_column = (Current).last_column = \ + YYRHSLOC (Rhs, 0).last_column; \ + } \ + while (0) +#endif +]]) + +# b4_yylocation_print_define +# -------------------------- +# Define YYLOCATION_PRINT. +m4_define([b4_yylocation_print_define], +[b4_locations_if([[ +/* YYLOCATION_PRINT -- Print the location on the stream. + This macro was not mandated originally: define only if we know + we won't break user code: when these are the locations we know. */ + +# ifndef YYLOCATION_PRINT + +# if defined YY_LOCATION_PRINT + + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YYLOCATION_PRINT(File, Loc) YY_LOCATION_PRINT(File, *(Loc)) + +# elif defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL + +/* Print *YYLOCP on YYO. Private, do not rely on its existence. */ + +YY_ATTRIBUTE_UNUSED +static int +yy_location_print_ (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += YYFPRINTF (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += YYFPRINTF (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += YYFPRINTF (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += YYFPRINTF (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += YYFPRINTF (yyo, "-%d", end_col); + } + return res; +} + +# define YYLOCATION_PRINT yy_location_print_ + + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YY_LOCATION_PRINT(File, Loc) YYLOCATION_PRINT(File, &(Loc)) + +# else + +# define YYLOCATION_PRINT(File, Loc) ((void) 0) + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YY_LOCATION_PRINT YYLOCATION_PRINT + +# endif +# endif /* !defined YYLOCATION_PRINT */]]) +]) + +# b4_yyloc_default +# ---------------- +# Expand to a possible default value for yylloc. +m4_define([b4_yyloc_default], +[[ +# if defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL + = { ]m4_join([, ], + m4_defn([b4_location_initial_line]), + m4_defn([b4_location_initial_column]), + m4_defn([b4_location_initial_line]), + m4_defn([b4_location_initial_column]))[ } +# endif +]]) diff --git a/bison/MinSizeRel/data/skeletons/d-skel.m4 b/bison/MinSizeRel/data/skeletons/d-skel.m4 new file mode 100644 index 0000000..2a38f02 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/d-skel.m4 @@ -0,0 +1,26 @@ + -*- Autoconf -*- + +# D skeleton dispatching for Bison. + +# Copyright (C) 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [b4_complain([%%glr-parser not supported for D])]) +b4_nondeterministic_if([b4_complain([%%nondeterministic-parser not supported for D])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.d]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/bison/MinSizeRel/data/skeletons/d.m4 b/bison/MinSizeRel/data/skeletons/d.m4 new file mode 100644 index 0000000..c0632e4 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/d.m4 @@ -0,0 +1,628 @@ + -*- Autoconf -*- + +# D language support for Bison + +# Copyright (C) 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +m4_include(b4_skeletonsdir/[c-like.m4]) + + +# b4_symbol_action(SYMBOL-NUM, ACTION) +# ------------------------------------ +# Run the action ACTION ("destructor" or "printer") for SYMBOL-NUM. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([yyval], + [$1], + [], + [yyloc])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl +b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_use(EXPR) +# ------------ +# Pacify the compiler about some maybe unused value. +m4_define([b4_use], +[]) + + +# b4_sync_start(LINE, FILE) +# ------------------------- +m4_define([b4_sync_start], [[#]line $1 $2]) + + +# b4_list2(LIST1, LIST2) +# ---------------------- +# Join two lists with a comma if necessary. +m4_define([b4_list2], + [$1[]m4_ifval(m4_quote($1), [m4_ifval(m4_quote($2), [[, ]])])[]$2]) + + +# b4_percent_define_get3(DEF, PRE, POST, NOT) +# ------------------------------------------- +# Expand to the value of DEF surrounded by PRE and POST if it's %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_get3], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$2[]b4_percent_define_get([$1])[]$3], [$4])]) + +# b4_percent_define_if_get2(ARG1, ARG2, DEF, NOT) +# ----------------------------------------------- +# Expand to the value of DEF if ARG1 or ARG2 are %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_if_get2], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$3], [m4_ifval(m4_quote(b4_percent_define_get([$2])), + [$3], [$4])])]) + +# b4_percent_define_class_before_interface(CLASS, INTERFACE) +# ---------------------------------------------------------- +# Expand to a ', ' if both a class and an interface have been %define'ed +m4_define([b4_percent_define_class_before_interface], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [m4_ifval(m4_quote(b4_percent_define_get([$2])), + [, ])])]) + + +# b4_flag_value(BOOLEAN-FLAG) +# --------------------------- +m4_define([b4_flag_value], [b4_flag_if([$1], [true], [false])]) + + +# b4_parser_class_declaration +# --------------------------- +# The declaration of the parser class ("class YYParser"), with all its +# qualifiers/annotations. +b4_percent_define_default([[api.parser.abstract]], [[false]]) +b4_percent_define_default([[api.parser.final]], [[false]]) +b4_percent_define_default([[api.parser.public]], [[false]]) + +m4_define([b4_parser_class_declaration], +[b4_percent_define_get3([api.parser.annotations], [], [ ])dnl +b4_percent_define_flag_if([api.parser.public], [public ])dnl +b4_percent_define_flag_if([api.parser.abstract], [abstract ])dnl +b4_percent_define_flag_if([api.parser.final], [final ])dnl +[class ]b4_parser_class[]dnl +b4_percent_define_if_get2([api.parser.extends], [api.parser.implements], [ : ])dnl +b4_percent_define_get([api.parser.extends])dnl +b4_percent_define_class_before_interface([api.parser.extends], [api.parser.implements])dnl +b4_percent_define_get([api.parser.implements])]) + + +# b4_lexer_if(TRUE, FALSE) +# ------------------------ +m4_define([b4_lexer_if], +[b4_percent_code_ifdef([[lexer]], [$1], [$2])]) + + +# b4_position_type_if(TRUE, FALSE) +# -------------------------------- +m4_define([b4_position_type_if], +[b4_percent_define_ifdef([[position_type]], [$1], [$2])]) + + +# b4_location_type_if(TRUE, FALSE) +# -------------------------------- +m4_define([b4_location_type_if], +[b4_percent_define_ifdef([[location_type]], [$1], [$2])]) + + +# b4_identification +# ----------------- +m4_define([b4_identification], +[[/** Version number for the Bison executable that generated this parser. */ + public static immutable string yy_bison_version = "]b4_version_string["; + + /** Name of the skeleton that generated this parser. */ + public static immutable string yy_bison_skeleton = ]b4_skeleton[; +]]) + + +## ------------ ## +## Data types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# MIN to MAX (included). +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-128], [127]), [1], [byte], + b4_ints_in($@, [-32768], [32767]), [1], [short], + [int])]) + +# b4_int_type_for(NAME) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# `NAME_min' to `NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + +# b4_null +# ------- +m4_define([b4_null], [null]) + + +# b4_integral_parser_table_define(NAME, DATA, COMMENT) +#----------------------------------------------------- +# Define "yy" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [b4_comment([$3], [ ])])dnl +private static immutable b4_int_type_for([$2])[[]] yy$1_ = +@{ + $2 +@};dnl +]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + +m4_define([b4_symbol(-2, id)], [[YYEMPTY]]) +b4_percent_define_default([[api.token.raw]], [[true]]) + +# b4_token_enum(TOKEN-NAME, TOKEN-NUMBER) +# --------------------------------------- +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_format([ %s = %s, +], [$1])]) + +# b4_token_enums +# -------------- +# Output the definition of the tokens as enums. +m4_define([b4_token_enums], +[/* Token kinds. */ +public enum TokenKind { + ]b4_symbol(empty, id)[ = -2, +b4_symbol_foreach([b4_token_enum])dnl +} +]) + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[_($1)]]) + + +# _b4_token_constructor_define(SYMBOL-NUM) +# ---------------------------------------- +# Define Symbol.FOO for SYMBOL-NUM. +m4_define([_b4_token_constructor_define], +[b4_token_visible_if([$1], +[[ + static auto ]b4_symbol([$1], [id])[(]b4_symbol_if([$1], [has_type], +[b4_union_if([b4_symbol([$1], [type]], +[[typeof(YYSemanticType.]b4_symbol([$1], [type])[]])) [val]])dnl +[]b4_locations_if([b4_symbol_if([$1], [has_type], [[, ]])[Location l]])[) + { + return Symbol(TokenKind.]b4_symbol([$1], [id])[]b4_symbol_if([$1], [has_type], + [[, val]])[]b4_locations_if([[, l]])[); + }]])]) + +# b4_token_constructor_define +# --------------------------- +# Define Symbol.FOO for each token kind FOO. +m4_define([b4_token_constructor_define], +[[ + /* Implementation of token constructors for each symbol type visible to + * the user. The code generates static methods that have the same names + * as the TokenKinds. + */]b4_symbol_foreach([_b4_token_constructor_define])dnl +]) + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[SymbolKind.b4_symbol_kind_base($@)]) + + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-30s %s], + m4_format([[%s = %s,]], + b4_symbol([$1], [kind_base]), + [$1]), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[ /* Symbol kinds. */ + struct SymbolKind + { + enum + { + ]b4_symbol(empty, kind_base)[ = -2, /* No symbol. */ +]b4_symbol_foreach([b4_symbol_enum])dnl +[ } + + private int yycode_; + alias yycode_ this; + + this(int code) + { + yycode_ = code; + } + + /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + final void toString(W)(W sink) const + if (isOutputRange!(W, char)) + { + immutable string[] yy_sname = @{ + ]b4_symbol_names[ + @};]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + immutable ]b4_int_type_for([b4_translatable])[[] yytranslatable = @{ + ]b4_translatable[ + @};]])[ + + put(sink, yy_sname[yycode_]); + } + } +]]) + + +# b4_case(ID, CODE, [COMMENTS]) +# ----------------------------- +m4_define([b4_case], [ case $1:m4_ifval([$3], [ b4_comment([$3])]) +$2 + break;]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +m4_define([b4_yystype], [b4_percent_define_get([[stype]])]) +b4_percent_define_default([[stype]], [[YYSemanticType]])]) + +# %name-prefix +m4_define_default([b4_prefix], [[YY]]) + +b4_percent_define_default([[api.parser.class]], [b4_prefix[]Parser])]) +m4_define([b4_parser_class], [b4_percent_define_get([[api.parser.class]])]) + +#b4_percent_define_default([[location_type]], [Location])]) +m4_define([b4_location_type], b4_percent_define_ifdef([[location_type]],[b4_percent_define_get([[location_type]])],[YYLocation])) + +#b4_percent_define_default([[position_type]], [Position])]) +m4_define([b4_position_type], b4_percent_define_ifdef([[position_type]],[b4_percent_define_get([[position_type]])],[YYPosition])) + + +## ---------------- ## +## api.value.type. ## +## ---------------- ## + + +# ---------------------- # +# api.value.type=union. # +# ---------------------- # + +# b4_symbol_type_register(SYMBOL-NUM) +# ----------------------------------- +# Symbol SYMBOL-NUM has a type (for union) instead of a type-tag. +# Extend the definition of %union's body (b4_union_members) with a +# field of that type, and extend the symbol's "type" field to point to +# the field name, instead of the type name. +m4_define([b4_symbol_type_register], +[m4_define([b4_symbol($1, type_tag)], + [b4_symbol_if([$1], [has_id], + [b4_symbol([$1], [id])], + [yykind_[]b4_symbol([$1], [number])])])dnl +m4_append([b4_union_members], +m4_expand([m4_format([ %-40s %s], + m4_expand([b4_symbol([$1], [type]) b4_symbol([$1], [type_tag]);]), + [b4_symbol_tag_comment([$1])])])) +]) + + +# b4_type_define_tag(SYMBOL1-NUM, ...) +# ------------------------------------ +# For the batch of symbols SYMBOL1-NUM... (which all have the same +# type), enhance the %union definition for each of them, and set +# there "type" field to the field tag name, instead of the type name. +m4_define([b4_type_define_tag], +[b4_symbol_if([$1], [has_type], + [m4_map([b4_symbol_type_register], [$@])]) +]) + + +# b4_symbol_value_union(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------------- +# Same of b4_symbol_value, but when api.value.type=union. +m4_define([b4_symbol_value_union], +[m4_ifval([$3], + [(*($3*)(&$1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type_tag]))], + [$1])], + [$1])])]) + + +# b4_value_type_setup_union +# ------------------------- +# Setup support for api.value.type=union. Symbols are defined with a +# type instead of a union member name: build the corresponding union, +# and give the symbols their tag. +m4_define([b4_value_type_setup_union], +[m4_define([b4_union_members]) +b4_type_foreach([b4_type_define_tag]) +m4_copy_force([b4_symbol_value_union], [b4_symbol_value]) +]) + + +# _b4_value_type_setup_keyword +# ---------------------------- +# api.value.type is defined with a keyword/string syntax. Check if +# that is properly defined, and prepare its use. +m4_define([_b4_value_type_setup_keyword], +[b4_percent_define_check_values([[[[api.value.type]], + [[none]], + [[union]], + [[union-directive]], + [[yystype]]]])dnl +m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_value_type_setup_union])]) + + +# b4_value_type_setup +# ------------------- +# Check if api.value.type is properly defined, and possibly prepare +# its use. +b4_define_silent([b4_value_type_setup], +[ +# Define default value. +b4_percent_define_ifdef([[api.value.type]], [], +[# %union => api.value.type=union-directive +m4_ifdef([b4_union_members], +[m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [union-directive])], +[# no tag seen => api.value.type={int} +m4_if(b4_tag_seen_flag, 0, +[m4_define([b4_percent_define_kind(api.value.type)], [code]) +m4_define([b4_percent_define(api.value.type)], [int])], +[# otherwise api.value.type=yystype +m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [yystype])])])]) + +# Set up. +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), + [keyword], [_b4_value_type_setup_keyword]) +]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. FIXME: factor in c-like? +m4_define([b4_symbol_value], +[m4_ifval([$3], + [($1.$3)], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type]))], + [$1])], + [$1])])]) + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([yyval], [$1], [$2])]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +# +# In this simple implementation, %token and %type have class names +# between the angle brackets. +m4_define([b4_rhs_value], +[b4_symbol_value([(yystack.valueAt (b4_subtract([$1], [$2])))], [$3], [$4])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[yystack.locationAt (b4_subtract($@))]) + + +# b4_lex_param +# b4_parse_param +# -------------- +# If defined, b4_lex_param arrives double quoted, but below we prefer +# it to be single quoted. Same for b4_parse_param. + +# TODO: should be in bison.m4 +m4_define_default([b4_lex_param], [[]])) +m4_define([b4_lex_param], b4_lex_param)) +m4_define([b4_parse_param], b4_parse_param)) + +# b4_lex_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_lex_param_decl], +[m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_decls(b4_lex_param))], + [$1])]) + +m4_define([b4_param_decls], + [m4_map([b4_param_decl], [$@])]) +m4_define([b4_param_decl], [, $1]) + +m4_define([b4_remove_comma], [m4_ifval(m4_quote($1), [$1, ], [])m4_shift2($@)]) + + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [b4_remove_comma([$1], + b4_param_decls(b4_parse_param))], + [$1])]) + + + +# b4_lex_param_call +# ------------------- +# Delegating the lexer parameters to the lexer constructor. +m4_define([b4_lex_param_call], + [m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_calls(b4_lex_param))], + [$1])]) +m4_define([b4_param_calls], + [m4_map([b4_param_call], [$@])]) +m4_define([b4_param_call], [, $2]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [b4_constructor_calls(b4_parse_param)])]) + +m4_define([b4_constructor_calls], + [m4_map([b4_constructor_call], [$@])]) +m4_define([b4_constructor_call], + [this.$2 = $2; + ]) + + + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + /* User arguments. */ +b4_var_decls(b4_parse_param)])]) + +m4_define([b4_var_decls], + [m4_map_sep([b4_var_decl], [ +], [$@])]) +m4_define([b4_var_decl], + [ protected $1;]) + + +# b4_public_types_declare +# ----------------------- +# Define the public types: token, semantic value, location, and so forth. +# Depending on %define token_lex, may be output in the header or source file. +m4_define([b4_public_types_declare], +[[ +alias Symbol = ]b4_parser_class[.Symbol; +alias Value = ]b4_yystype[;]b4_locations_if([[ +alias Location = ]b4_location_type[; +alias Position = ]b4_position_type[;]b4_push_if([[ +alias PUSH_MORE = ]b4_parser_class[.YYPUSH_MORE; +alias ABORT = ]b4_parser_class[.YYABORT; +alias ACCEPT = ]b4_parser_class[.YYACCEPT;]])[]])[ +]]) + + +# b4_basic_symbol_constructor_define +# ---------------------------------- +# Create Symbol struct constructors for all the visible types. +m4_define([b4_basic_symbol_constructor_define], +[b4_token_visible_if([$1], +[[ this(TokenKind token]b4_symbol_if([$1], [has_type], +[[, ]b4_union_if([], [[typeof(YYSemanticType.]])b4_symbol([$1], [type])dnl +[]b4_union_if([], [[) ]])[ val]])[]b4_locations_if([[, Location loc]])[) + { + kind = yytranslate_(token);]b4_union_if([b4_symbol_if([$1], [has_type], [[ + static foreach (member; __traits(allMembers, YYSemanticType)) + { + static if (is(typeof(mixin("value_." ~ member)) == ]b4_symbol([$1], [type])[)) + { + mixin("value_." ~ member ~ " = val;"); + } + }]])], [b4_symbol_if([$1], [has_type], [[ + value_.]b4_symbol([$1], [type])[ = val;]])])[]b4_locations_if([ + location_ = loc;])[ + } +]])]) + + +# b4_symbol_type_define +# --------------------- +# Define symbol_type, the external type for symbols used for symbol +# constructors. +m4_define([b4_symbol_type_define], +[[ + /** + * A complete symbol + */ + struct Symbol + { + private SymbolKind kind; + private Value value_;]b4_locations_if([[ + private Location location_;]])[ + +]b4_type_foreach([b4_basic_symbol_constructor_define])[ + SymbolKind token() { return kind; } + Value value() { return value_; }]b4_locations_if([[ + Location location() { return location_; }]])[ +]b4_token_ctor_if([b4_token_constructor_define])[ + } +]]) diff --git a/bison/MinSizeRel/data/skeletons/glr.c b/bison/MinSizeRel/data/skeletons/glr.c new file mode 100644 index 0000000..fab3733 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/glr.c @@ -0,0 +1,2763 @@ +# -*- C -*- + +# GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# If we are loaded by glr.cc, do not override c++.m4 definitions by +# those of c.m4. +m4_if(b4_skeleton, ["glr.c"], + [m4_include(b4_skeletonsdir/[c.m4])]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + +# Included header. +b4_percent_define_default([[api.header.include]], + [["@basename(]b4_spec_header_file[@)"]]) + +## ------------------------ ## +## Pure/impure interfaces. ## +## ------------------------ ## + +b4_define_flag_if([pure]) +# If glr.cc is including this file and thus has already set b4_pure_flag, +# do not change the value of b4_pure_flag, and do not record a use of api.pure. +m4_ifndef([b4_pure_flag], +[b4_percent_define_default([[api.pure]], [[false]]) + m4_define([b4_pure_flag], + [b4_percent_define_flag_if([[api.pure]], [[1]], [[0]])])]) + +# b4_yyerror_args +# --------------- +# Optional effective arguments passed to yyerror: user args plus yylloc, and +# a trailing comma. +m4_define([b4_yyerror_args], +[b4_pure_if([b4_locations_if([yylocp, ])])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + +# b4_lyyerror_args +# ---------------- +# Same as above, but on the lookahead, hence &yylloc instead of yylocp. +m4_define([b4_lyyerror_args], +[b4_pure_if([b4_locations_if([&yylloc, ])])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + +# b4_pure_args +# ------------ +# Same as b4_yyerror_args, but with a leading comma. +m4_define([b4_pure_args], +[b4_pure_if([b4_locations_if([, yylocp])])[]b4_user_args]) + + +# b4_lpure_args +# ------------- +# Same as above, but on the lookahead, hence &yylloc instead of yylocp. +m4_define([b4_lpure_args], +[b4_pure_if([b4_locations_if([, &yylloc])])[]b4_user_args]) + + + +# b4_pure_formals +# --------------- +# Arguments passed to yyerror: user formals plus yylocp with leading comma. +m4_define([b4_pure_formals], +[b4_pure_if([b4_locations_if([, YYLTYPE *yylocp])])[]b4_user_formals]) + + +# b4_locuser_formals(LOC = yylocp) +# -------------------------------- +# User formal arguments, possibly preceded by location argument. +m4_define([b4_locuser_formals], +[b4_locations_if([, YYLTYPE *m4_default([$1], [yylocp])])[]b4_user_formals]) + + +# b4_locuser_args(LOC = yylocp) +# ----------------------------- +m4_define([b4_locuser_args], +[b4_locations_if([, m4_default([$1], [yylocp])])[]b4_user_args]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([(*yyvalp)], [$1], [$2])]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[YY_CAST (yyGLRStackItem const *, yyvsp)@{YYFILL (b4_subtract([$2], [$1]))@}.yystate]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# Expansion of $$ or $$, for symbol SYMBOL-NUM. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).yysemantics.yyval], [$3], [$4])]) + + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(*yylocp)]) + + +# b4_rhs_location(RULE-LENGTH, NUM) +# --------------------------------- +# Expansion of @NUM, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(b4_rhs_data([$1], [$2]).yyloc)]) + + +# b4_call_merger(MERGER-NUM, MERGER-NAME, SYMBOL-SUM) +# --------------------------------------------------- +m4_define([b4_call_merger], +[b4_case([$1], + [ b4_symbol_if([$3], [has_type], + [yy0->b4_symbol($3, slot) = $2 (*yy0, *yy1);], + [*yy0 = $2 (*yy0, *yy1);])])]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + +# b4_shared_declarations +# ---------------------- +# Declaration that might either go into the header (if --header) +# or open coded in the parser body. glr.cc has its own definition. +m4_if(b4_skeleton, ["glr.c"], +[m4_define([b4_shared_declarations], +[b4_declare_yydebug[ +]b4_percent_code_get([[requires]])[ +]b4_token_enums[ +]b4_declare_yylstype[ +int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]b4_percent_code_get([[provides]])[]dnl +]) +]) + +## -------------- ## +## Output files. ## +## -------------- ## + +# Unfortunately the order of generation between the header and the +# implementation file matters (for glr.c) because of the current +# implementation of api.value.type=union. In that case we still use a +# union for YYSTYPE, but we generate the contents of this union when +# setting up YYSTYPE. This is needed for other aspects, such as +# defining yy_symbol_value_print, since we need to now the name of the +# members of this union. +# +# To avoid this issue, just generate the header before the +# implementation file. But we should also make them more independent. + +# ----------------- # +# The header file. # +# ----------------- # + +# glr.cc produces its own header. +b4_glr_cc_if([], +[b4_header_if( +[b4_output_begin([b4_spec_header_file]) +b4_copyright([Skeleton interface for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end[ +]])]) + + +# ------------------------- # +# The implementation file. # +# ------------------------- # + +b4_output_begin([b4_parser_file_name]) +b4_copyright([Skeleton implementation for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +/* C GLR parser skeleton written by Paul Hilfinger. */ + +]b4_disclaimer[ +]b4_identification[ + +]b4_percent_code_get([[top]])[ +]m4_if(b4_api_prefix, [yy], [], +[[/* Substitute the type names. */ +#define YYSTYPE ]b4_api_PREFIX[STYPE]b4_locations_if([[ +#define YYLTYPE ]b4_api_PREFIX[LTYPE]])])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define ]b4_glr_cc_if([yy_parse_impl], [yyparse])[ ]b4_prefix[]b4_glr_cc_if([_parse_impl], [parse])[ +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug]]b4_pure_if([], [[ +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char +#define yynerrs ]b4_prefix[nerrs]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])]))[ + +]b4_user_pre_prologue[ +]b4_cast_define[ +]b4_null_define[ + +]b4_header_if([[#include ]b4_percent_define_get([[api.header.include]])], + [b4_shared_declarations])[ + +]b4_glr_cc_if([b4_glr_cc_setup], + [b4_declare_symbol_enum])[ + +/* Default (constant) value used for initialization for null + right-hand sides. Unlike the standard yacc.c template, here we set + the default value of $$ to a zeroed-out value. Since the default + value is undefined, this behavior is technically correct. */ +static YYSTYPE yyval_default;]b4_locations_if([[ +static YYLTYPE yyloc_default][]b4_yyloc_default;])[ + +]b4_user_post_prologue[ +]b4_percent_code_get[]dnl + +[#include +#include +#include +#include +#include + +]b4_c99_int_type_define[ +]b4_sizes_types_define[ + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +#ifndef YYFREE +# define YYFREE free +#endif +#ifndef YYMALLOC +# define YYMALLOC malloc +#endif +#ifndef YYREALLOC +# define YYREALLOC realloc +#endif + +#ifdef __cplusplus + typedef bool yybool; +# define yytrue true +# define yyfalse false +#else + /* When we move to stdbool, get rid of the various casts to yybool. */ + typedef signed char yybool; +# define yytrue 1 +# define yyfalse 0 +#endif + +#ifndef YYSETJMP +# include +# define YYJMP_BUF jmp_buf +# define YYSETJMP(Env) setjmp (Env) +/* Pacify Clang and ICC. */ +# define YYLONGJMP(Env, Val) \ + do { \ + longjmp (Env, Val); \ + YY_ASSERT (0); \ + } while (yyfalse) +#endif + +]b4_attribute_define([noreturn])[ + +]b4_parse_assert_if([[#ifdef NDEBUG +# define YY_ASSERT(E) ((void) (0 && (E))) +#else +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_ASSERT(E) assert (E) +#endif +]], +[[#define YY_ASSERT(E) ((void) (0 && (E)))]])[ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ +/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */ +#define YYMAXRHS ]b4_r2_max[ +/* YYMAXLEFT -- Maximum number of symbols to the left of a handle + accessed by $0, $-1, etc., in any rule. */ +#define YYMAXLEFT ]b4_max_left_semantic_context[ + +/* YYMAXUTOK -- Last valid token kind. */ +#define YYMAXUTOK ]b4_code_max[ + +/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ +]b4_api_token_raw_if(dnl +[[#define YYTRANSLATE(YYX) YY_CAST (yysymbol_kind_t, YYX)]], +[[#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK \ + ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \ + : ]b4_symbol_prefix[YYUNDEF) + +/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM + as returned by yylex. */ +static const ]b4_int_type_for([b4_translate])[ yytranslate[] = +{ + ]b4_translate[ +};]])[ + +#if ]b4_api_PREFIX[DEBUG +/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ +static const ]b4_int_type_for([b4_rline])[ yyrline[] = +{ + ]b4_rline[ +}; +#endif + +#define YYPACT_NINF (]b4_pact_ninf[) +#define YYTABLE_NINF (]b4_table_ninf[) + +]b4_parser_tables_define[ + +/* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */ +static const ]b4_int_type_for([b4_dprec])[ yydprec[] = +{ + ]b4_dprec[ +}; + +/* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */ +static const ]b4_int_type_for([b4_merger])[ yymerger[] = +{ + ]b4_merger[ +}; + +/* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as + in the case of predicates. */ +static const yybool yyimmediate[] = +{ + ]b4_immediate[ +}; + +/* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of + list of conflicting reductions corresponding to action entry for + state STATE-NUM in yytable. 0 means no conflicts. The list in + yyconfl is terminated by a rule number of 0. */ +static const ]b4_int_type_for([b4_conflict_list_heads])[ yyconflp[] = +{ + ]b4_conflict_list_heads[ +}; + +/* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by + 0, pointed into by YYCONFLP. */ +]dnl Do not use b4_int_type_for here, since there are places where +dnl pointers onto yyconfl are taken, whose type is "short*". +dnl We probably ought to introduce a type for confl. +[static const short yyconfl[] = +{ + ]b4_conflicting_rules[ +}; + +]b4_locations_if([[ +]b4_yylloc_default_define[ +# define YYRHSLOC(Rhs, K) ((Rhs)[K].yystate.yyloc) +]])[ + +]b4_pure_if( +[ +#undef yynerrs +#define yynerrs (yystackp->yyerrcnt) +#undef yychar +#define yychar (yystackp->yyrawchar) +#undef yylval +#define yylval (yystackp->yyval) +#undef yylloc +#define yylloc (yystackp->yyloc) +m4_if(b4_prefix[], [yy], [], +[#define b4_prefix[]nerrs yynerrs +#define b4_prefix[]char yychar +#define b4_prefix[]lval yylval +#define b4_prefix[]lloc yylloc])], +[YYSTYPE yylval;]b4_locations_if([[ +YYLTYPE yylloc;]])[ + +int yynerrs; +int yychar;])[ + +enum { YYENOMEM = -2 }; + +typedef enum { yyok, yyaccept, yyabort, yyerr, yynomem } YYRESULTTAG; + +#define YYCHK(YYE) \ + do { \ + YYRESULTTAG yychk_flag = YYE; \ + if (yychk_flag != yyok) \ + return yychk_flag; \ + } while (0) + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif + +/* Minimum number of free items on the stack allowed after an + allocation. This is to allow allocation and initialization + to be completed by functions that call yyexpandGLRStack before the + stack is expanded, thus insuring that all necessary pointers get + properly redirected to new data. */ +#define YYHEADROOM 2 + +#ifndef YYSTACKEXPANDABLE +# define YYSTACKEXPANDABLE 1 +#endif + +#if YYSTACKEXPANDABLE +# define YY_RESERVE_GLRSTACK(Yystack) \ + do { \ + if (Yystack->yyspaceLeft < YYHEADROOM) \ + yyexpandGLRStack (Yystack); \ + } while (0) +#else +# define YY_RESERVE_GLRSTACK(Yystack) \ + do { \ + if (Yystack->yyspaceLeft < YYHEADROOM) \ + yyMemoryExhausted (Yystack); \ + } while (0) +#endif + +/** State numbers. */ +typedef int yy_state_t; + +/** Rule numbers. */ +typedef int yyRuleNum; + +/** Item references. */ +typedef short yyItemNum; + +typedef struct yyGLRState yyGLRState; +typedef struct yyGLRStateSet yyGLRStateSet; +typedef struct yySemanticOption yySemanticOption; +typedef union yyGLRStackItem yyGLRStackItem; +typedef struct yyGLRStack yyGLRStack; + +struct yyGLRState +{ + /** Type tag: always true. */ + yybool yyisState; + /** Type tag for yysemantics. If true, yyval applies, otherwise + * yyfirstVal applies. */ + yybool yyresolved; + /** Number of corresponding LALR(1) machine state. */ + yy_state_t yylrState; + /** Preceding state in this stack */ + yyGLRState* yypred; + /** Source position of the last token produced by my symbol */ + YYPTRDIFF_T yyposn; + union { + /** First in a chain of alternative reductions producing the + * nonterminal corresponding to this state, threaded through + * yynext. */ + yySemanticOption* yyfirstVal; + /** Semantic value for this state. */ + YYSTYPE yyval; + } yysemantics;]b4_locations_if([[ + /** Source location for this state. */ + YYLTYPE yyloc;]])[ +}; + +struct yyGLRStateSet +{ + yyGLRState** yystates; + /** During nondeterministic operation, yylookaheadNeeds tracks which + * stacks have actually needed the current lookahead. During deterministic + * operation, yylookaheadNeeds[0] is not maintained since it would merely + * duplicate yychar != ]b4_symbol(empty, id)[. */ + yybool* yylookaheadNeeds; + YYPTRDIFF_T yysize; + YYPTRDIFF_T yycapacity; +}; + +struct yySemanticOption +{ + /** Type tag: always false. */ + yybool yyisState; + /** Rule number for this reduction */ + yyRuleNum yyrule; + /** The last RHS state in the list of states to be reduced. */ + yyGLRState* yystate; + /** The lookahead for this reduction. */ + int yyrawchar; + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ + /** Next sibling in chain of options. To facilitate merging, + * options are chained in decreasing order by address. */ + yySemanticOption* yynext; +}; + +/** Type of the items in the GLR stack. The yyisState field + * indicates which item of the union is valid. */ +union yyGLRStackItem { + yyGLRState yystate; + yySemanticOption yyoption; +}; + +struct yyGLRStack { + int yyerrState; +]b4_locations_if([[ /* To compute the location of the error token. */ + yyGLRStackItem yyerror_range[3];]])[ +]b4_pure_if( +[ + int yyerrcnt; + int yyrawchar; + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ +])[ + YYJMP_BUF yyexception_buffer; + yyGLRStackItem* yyitems; + yyGLRStackItem* yynextFree; + YYPTRDIFF_T yyspaceLeft; + yyGLRState* yysplitPoint; + yyGLRState* yylastDeleted; + yyGLRStateSet yytops; +}; + +#if YYSTACKEXPANDABLE +static void yyexpandGLRStack (yyGLRStack* yystackp); +#endif + +_Noreturn static void +yyFail (yyGLRStack* yystackp]b4_pure_formals[, const char* yymsg) +{ + if (yymsg != YY_NULLPTR) + yyerror (]b4_yyerror_args[yymsg); + YYLONGJMP (yystackp->yyexception_buffer, 1); +} + +_Noreturn static void +yyMemoryExhausted (yyGLRStack* yystackp) +{ + YYLONGJMP (yystackp->yyexception_buffer, 2); +} + +/** Accessing symbol of state YYSTATE. */ +static inline yysymbol_kind_t +yy_accessing_symbol (yy_state_t yystate) +{ + return YY_CAST (yysymbol_kind_t, yystos[yystate]); +} + +#if ]b4_parse_error_case([simple], [b4_api_PREFIX[DEBUG || ]b4_token_table_flag], [[1]])[ +/* The user-facing name of the symbol whose (internal) number is + YYSYMBOL. No bounds checking. */ +static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED; + +]b4_parse_error_bmatch([simple\|verbose], +[[/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + ]b4_tname[ +}; + +static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + return yytname[yysymbol]; +}]], +[[static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ +}]])[ +#endif + +/** Left-hand-side symbol for rule #YYRULE. */ +static inline yysymbol_kind_t +yylhsNonterm (yyRuleNum yyrule) +{ + return YY_CAST (yysymbol_kind_t, yyr1[yyrule]); +} + +#if ]b4_api_PREFIX[DEBUG + +# ifndef YYFPRINTF +# define YYFPRINTF fprintf +# endif + +# define YY_FPRINTF \ + YY_IGNORE_USELESS_CAST_BEGIN YY_FPRINTF_ + +# define YY_FPRINTF_(Args) \ + do { \ + YYFPRINTF Args; \ + YY_IGNORE_USELESS_CAST_END \ + } while (0) + +# define YY_DPRINTF \ + YY_IGNORE_USELESS_CAST_BEGIN YY_DPRINTF_ + +# define YY_DPRINTF_(Args) \ + do { \ + if (yydebug) \ + YYFPRINTF Args; \ + YY_IGNORE_USELESS_CAST_END \ + } while (0) + +]b4_yylocation_print_define[ + +]b4_yy_symbol_print_define[ + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ + do { \ + if (yydebug) \ + { \ + YY_FPRINTF ((stderr, "%s ", Title)); \ + yy_symbol_print (stderr, Kind, Value]b4_locuser_args([Location])[); \ + YY_FPRINTF ((stderr, "\n")); \ + } \ + } while (0) + +static inline void +yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, YYPTRDIFF_T yyk, + yyRuleNum yyrule]b4_user_formals[); + +# define YY_REDUCE_PRINT(Args) \ + do { \ + if (yydebug) \ + yy_reduce_print Args; \ + } while (0) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; + +static void yypstack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) + YY_ATTRIBUTE_UNUSED; +static void yypdumpstack (yyGLRStack* yystackp) + YY_ATTRIBUTE_UNUSED; + +#else /* !]b4_api_PREFIX[DEBUG */ + +# define YY_DPRINTF(Args) do {} while (yyfalse) +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) +# define YY_REDUCE_PRINT(Args) + +#endif /* !]b4_api_PREFIX[DEBUG */ + +]b4_parse_error_case( + [simple], +[[]], +[[#ifndef yystrlen +# define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S))) +#endif + +]b4_parse_error_bmatch( + [detailed\|verbose], +[[#ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +static char * +yystpcpy (char *yydest, const char *yysrc) +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +#endif]])[ + +]b4_parse_error_case( + [verbose], +[[#ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYPTRDIFF_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYPTRDIFF_T yyn = 0; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else + return yystrlen (yystr); +} +#endif +]])])[ + +/** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting + * at YYVSP[YYLOW0].yystate.yypred. Leaves YYVSP[YYLOW1].yystate.yypred + * containing the pointer to the next state in the chain. */ +static void yyfillin (yyGLRStackItem *, int, int) YY_ATTRIBUTE_UNUSED; +static void +yyfillin (yyGLRStackItem *yyvsp, int yylow0, int yylow1) +{ + int i; + yyGLRState *s = yyvsp[yylow0].yystate.yypred; + for (i = yylow0-1; i >= yylow1; i -= 1) + { +#if ]b4_api_PREFIX[DEBUG + yyvsp[i].yystate.yylrState = s->yylrState; +#endif + yyvsp[i].yystate.yyresolved = s->yyresolved; + if (s->yyresolved) + yyvsp[i].yystate.yysemantics.yyval = s->yysemantics.yyval; + else + /* The effect of using yyval or yyloc (in an immediate rule) is + * undefined. */ + yyvsp[i].yystate.yysemantics.yyfirstVal = YY_NULLPTR;]b4_locations_if([[ + yyvsp[i].yystate.yyloc = s->yyloc;]])[ + s = yyvsp[i].yystate.yypred = s->yypred; + } +} + +]m4_define([b4_yygetToken_call], + [[yygetToken (&yychar][]b4_pure_if([, yystackp])[]b4_user_args[)]])[ +/** If yychar is empty, fetch the next token. */ +static inline yysymbol_kind_t +yygetToken (int *yycharp][]b4_pure_if([, yyGLRStack* yystackp])[]b4_user_formals[) +{ + yysymbol_kind_t yytoken; +]b4_parse_param_use()dnl +[ if (*yycharp == ]b4_symbol(empty, id)[) + { + YY_DPRINTF ((stderr, "Reading a token\n"));]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + try + { +#endif // YY_EXCEPTIONS + *yycharp = ]b4_yylex[; +#if YY_EXCEPTIONS + } + catch (const ]b4_namespace_ref[::]b4_parser_class[::syntax_error& yyexc) + { + YY_DPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ + yylloc = yyexc.location;])[ + yyerror (]b4_lyyerror_args[yyexc.what ()); + // Map errors caught in the scanner to the undefined token, + // so that error handling is started. However, record this + // with this special value of yychar. + *yycharp = ]b4_symbol(error, id)[; + } +#endif // YY_EXCEPTIONS]], [[ + *yycharp = ]b4_yylex[;]])[ + } + if (*yycharp <= ]b4_symbol(eof, [id])[) + { + *yycharp = ]b4_symbol(eof, [id])[; + yytoken = ]b4_symbol_prefix[YYEOF; + YY_DPRINTF ((stderr, "Now at end of input.\n")); + } + else + { + yytoken = YYTRANSLATE (*yycharp); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + return yytoken; +} + +/* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in + * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1. + * For convenience, always return YYLOW1. */ +static inline int yyfill (yyGLRStackItem *, int *, int, yybool) + YY_ATTRIBUTE_UNUSED; +static inline int +yyfill (yyGLRStackItem *yyvsp, int *yylow, int yylow1, yybool yynormal) +{ + if (!yynormal && yylow1 < *yylow) + { + yyfillin (yyvsp, *yylow, yylow1); + *yylow = yylow1; + } + return yylow1; +} + +/** Perform user action for rule number YYN, with RHS length YYRHSLEN, + * and top stack item YYVSP. YYLVALP points to place to put semantic + * value ($$), and yylocp points to place for location information + * (@@$). Returns yyok for normal return, yyaccept for YYACCEPT, + * yyerr for YYERROR, yyabort for YYABORT, yynomem for YYNOMEM. */ +static YYRESULTTAG +yyuserAction (yyRuleNum yyrule, int yyrhslen, yyGLRStackItem* yyvsp, + yyGLRStack* yystackp, YYPTRDIFF_T yyk, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + const yybool yynormal YY_ATTRIBUTE_UNUSED = yystackp->yysplitPoint == YY_NULLPTR; + int yylow = 1; +]b4_parse_param_use([yyvalp], [yylocp])dnl +[ YY_USE (yyk); + YY_USE (yyrhslen); +# undef yyerrok +# define yyerrok (yystackp->yyerrState = 0) +# undef YYACCEPT +# define YYACCEPT return yyaccept +# undef YYABORT +# define YYABORT return yyabort +# undef YYNOMEM +# define YYNOMEM return yynomem +# undef YYERROR +# define YYERROR return yyerrok, yyerr +# undef YYRECOVERING +# define YYRECOVERING() (yystackp->yyerrState != 0) +# undef yyclearin +# define yyclearin (yychar = ]b4_symbol(empty, id)[) +# undef YYFILL +# define YYFILL(N) yyfill (yyvsp, &yylow, (N), yynormal) +# undef YYBACKUP +# define YYBACKUP(Token, Value) \ + return yyerror (]b4_yyerror_args[YY_("syntax error: cannot back up")), \ + yyerrok, yyerr + + if (yyrhslen == 0) + *yyvalp = yyval_default; + else + *yyvalp = yyvsp[YYFILL (1-yyrhslen)].yystate.yysemantics.yyval;]b4_locations_if([[ + /* Default location. */ + YYLLOC_DEFAULT ((*yylocp), (yyvsp - yyrhslen), yyrhslen); + yystackp->yyerror_range[1].yystate.yyloc = *yylocp;]])[ + /* If yyk == -1, we are running a deferred action on a temporary + stack. In that case, YY_REDUCE_PRINT must not play with YYFILL, + so pretend the stack is "normal". */ + YY_REDUCE_PRINT ((yynormal || yyk == -1, yyvsp, yyk, yyrule]b4_user_args[));]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + typedef ]b4_namespace_ref[::]b4_parser_class[::syntax_error syntax_error; + try + { +#endif // YY_EXCEPTIONS]])[ + switch (yyrule) + { +]b4_user_actions[ + default: break; + }]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + } + catch (const syntax_error& yyexc) + { + YY_DPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ + *yylocp = yyexc.location;])[ + yyerror (]b4_yyerror_args[yyexc.what ()); + YYERROR; + } +#endif // YY_EXCEPTIONS]])[ + YY_SYMBOL_PRINT ("-> $$ =", yylhsNonterm (yyrule), yyvalp, yylocp); + + return yyok; +# undef yyerrok +# undef YYABORT +# undef YYACCEPT +# undef YYNOMEM +# undef YYERROR +# undef YYBACKUP +# undef yyclearin +# undef YYRECOVERING +} + + +static void +yyuserMerge (int yyn, YYSTYPE* yy0, YYSTYPE* yy1) +{ + YY_USE (yy0); + YY_USE (yy1); + + switch (yyn) + { +]b4_mergers[ + default: break; + } +} + + /* Bison grammar-table manipulation. */ + +]b4_yydestruct_define[ + +/** Number of symbols composing the right hand side of rule #RULE. */ +static inline int +yyrhsLength (yyRuleNum yyrule) +{ + return yyr2[yyrule]; +} + +static void +yydestroyGLRState (char const *yymsg, yyGLRState *yys]b4_user_formals[) +{ + if (yys->yyresolved) + yydestruct (yymsg, yy_accessing_symbol (yys->yylrState), + &yys->yysemantics.yyval]b4_locuser_args([&yys->yyloc])[); + else + { +#if ]b4_api_PREFIX[DEBUG + if (yydebug) + { + if (yys->yysemantics.yyfirstVal) + YY_FPRINTF ((stderr, "%s unresolved", yymsg)); + else + YY_FPRINTF ((stderr, "%s incomplete", yymsg)); + YY_SYMBOL_PRINT ("", yy_accessing_symbol (yys->yylrState), YY_NULLPTR, &yys->yyloc); + } +#endif + + if (yys->yysemantics.yyfirstVal) + { + yySemanticOption *yyoption = yys->yysemantics.yyfirstVal; + yyGLRState *yyrh; + int yyn; + for (yyrh = yyoption->yystate, yyn = yyrhsLength (yyoption->yyrule); + yyn > 0; + yyrh = yyrh->yypred, yyn -= 1) + yydestroyGLRState (yymsg, yyrh]b4_user_args[); + } + } +} + +#define yypact_value_is_default(Yyn) \ + ]b4_table_value_equals([[pact]], [[Yyn]], [b4_pact_ninf], [YYPACT_NINF])[ + +/** True iff LR state YYSTATE has only a default reduction (regardless + * of token). */ +static inline yybool +yyisDefaultedState (yy_state_t yystate) +{ + return yypact_value_is_default (yypact[yystate]); +} + +/** The default reduction for YYSTATE, assuming it has one. */ +static inline yyRuleNum +yydefaultAction (yy_state_t yystate) +{ + return yydefact[yystate]; +} + +#define yytable_value_is_error(Yyn) \ + ]b4_table_value_equals([[table]], [[Yyn]], [b4_table_ninf], [YYTABLE_NINF])[ + +/** The action to take in YYSTATE on seeing YYTOKEN. + * Result R means + * R < 0: Reduce on rule -R. + * R = 0: Error. + * R > 0: Shift to state R. + * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list + * of conflicting reductions. + */ +static inline int +yygetLRActions (yy_state_t yystate, yysymbol_kind_t yytoken, const short** yyconflicts) +{ + int yyindex = yypact[yystate] + yytoken; + if (yytoken == ]b4_symbol(error, kind)[) + { + // This is the error token. + *yyconflicts = yyconfl; + return 0; + } + else if (yyisDefaultedState (yystate) + || yyindex < 0 || YYLAST < yyindex || yycheck[yyindex] != yytoken) + { + *yyconflicts = yyconfl; + return -yydefact[yystate]; + } + else if (! yytable_value_is_error (yytable[yyindex])) + { + *yyconflicts = yyconfl + yyconflp[yyindex]; + return yytable[yyindex]; + } + else + { + *yyconflicts = yyconfl + yyconflp[yyindex]; + return 0; + } +} + +/** Compute post-reduction state. + * \param yystate the current state + * \param yysym the nonterminal to push on the stack + */ +static inline yy_state_t +yyLRgotoState (yy_state_t yystate, yysymbol_kind_t yysym) +{ + int yyr = yypgoto[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= YYLAST && yycheck[yyr] == yystate) + return yytable[yyr]; + else + return yydefgoto[yysym - YYNTOKENS]; +} + +static inline yybool +yyisShiftAction (int yyaction) +{ + return 0 < yyaction; +} + +static inline yybool +yyisErrorAction (int yyaction) +{ + return yyaction == 0; +} + + /* GLRStates */ + +/** Return a fresh GLRStackItem in YYSTACKP. The item is an LR state + * if YYISSTATE, and otherwise a semantic option. Callers should call + * YY_RESERVE_GLRSTACK afterwards to make sure there is sufficient + * headroom. */ + +static inline yyGLRStackItem* +yynewGLRStackItem (yyGLRStack* yystackp, yybool yyisState) +{ + yyGLRStackItem* yynewItem = yystackp->yynextFree; + yystackp->yyspaceLeft -= 1; + yystackp->yynextFree += 1; + yynewItem->yystate.yyisState = yyisState; + return yynewItem; +} + +/** Add a new semantic action that will execute the action for rule + * YYRULE on the semantic values in YYRHS to the list of + * alternative actions for YYSTATE. Assumes that YYRHS comes from + * stack #YYK of *YYSTACKP. */ +static void +yyaddDeferredAction (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyGLRState* yystate, + yyGLRState* yyrhs, yyRuleNum yyrule) +{ + yySemanticOption* yynewOption = + &yynewGLRStackItem (yystackp, yyfalse)->yyoption; + YY_ASSERT (!yynewOption->yyisState); + yynewOption->yystate = yyrhs; + yynewOption->yyrule = yyrule; + if (yystackp->yytops.yylookaheadNeeds[yyk]) + { + yynewOption->yyrawchar = yychar; + yynewOption->yyval = yylval;]b4_locations_if([ + yynewOption->yyloc = yylloc;])[ + } + else + yynewOption->yyrawchar = ]b4_symbol(empty, id)[; + yynewOption->yynext = yystate->yysemantics.yyfirstVal; + yystate->yysemantics.yyfirstVal = yynewOption; + + YY_RESERVE_GLRSTACK (yystackp); +} + + /* GLRStacks */ + +/** Initialize YYSET to a singleton set containing an empty stack. */ +static yybool +yyinitStateSet (yyGLRStateSet* yyset) +{ + yyset->yysize = 1; + yyset->yycapacity = 16; + yyset->yystates + = YY_CAST (yyGLRState**, + YYMALLOC (YY_CAST (YYSIZE_T, yyset->yycapacity) + * sizeof yyset->yystates[0])); + if (! yyset->yystates) + return yyfalse; + yyset->yystates[0] = YY_NULLPTR; + yyset->yylookaheadNeeds + = YY_CAST (yybool*, + YYMALLOC (YY_CAST (YYSIZE_T, yyset->yycapacity) + * sizeof yyset->yylookaheadNeeds[0])); + if (! yyset->yylookaheadNeeds) + { + YYFREE (yyset->yystates); + return yyfalse; + } + memset (yyset->yylookaheadNeeds, + 0, + YY_CAST (YYSIZE_T, yyset->yycapacity) * sizeof yyset->yylookaheadNeeds[0]); + return yytrue; +} + +static void yyfreeStateSet (yyGLRStateSet* yyset) +{ + YYFREE (yyset->yystates); + YYFREE (yyset->yylookaheadNeeds); +} + +/** Initialize *YYSTACKP to a single empty stack, with total maximum + * capacity for all stacks of YYSIZE. */ +static yybool +yyinitGLRStack (yyGLRStack* yystackp, YYPTRDIFF_T yysize) +{ + yystackp->yyerrState = 0; + yynerrs = 0; + yystackp->yyspaceLeft = yysize; + yystackp->yyitems + = YY_CAST (yyGLRStackItem*, + YYMALLOC (YY_CAST (YYSIZE_T, yysize) + * sizeof yystackp->yynextFree[0])); + if (!yystackp->yyitems) + return yyfalse; + yystackp->yynextFree = yystackp->yyitems; + yystackp->yysplitPoint = YY_NULLPTR; + yystackp->yylastDeleted = YY_NULLPTR; + return yyinitStateSet (&yystackp->yytops); +} + + +#if YYSTACKEXPANDABLE +# define YYRELOC(YYFROMITEMS, YYTOITEMS, YYX, YYTYPE) \ + &((YYTOITEMS) \ + - ((YYFROMITEMS) - YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX))))->YYTYPE + +/** If *YYSTACKP is expandable, extend it. WARNING: Pointers into the + stack from outside should be considered invalid after this call. + We always expand when there are 1 or fewer items left AFTER an + allocation, so that we can avoid having external pointers exist + across an allocation. */ +static void +yyexpandGLRStack (yyGLRStack* yystackp) +{ + yyGLRStackItem* yynewItems; + yyGLRStackItem* yyp0, *yyp1; + YYPTRDIFF_T yynewSize; + YYPTRDIFF_T yyn; + YYPTRDIFF_T yysize = yystackp->yynextFree - yystackp->yyitems; + if (YYMAXDEPTH - YYHEADROOM < yysize) + yyMemoryExhausted (yystackp); + yynewSize = 2*yysize; + if (YYMAXDEPTH < yynewSize) + yynewSize = YYMAXDEPTH; + yynewItems + = YY_CAST (yyGLRStackItem*, + YYMALLOC (YY_CAST (YYSIZE_T, yynewSize) + * sizeof yynewItems[0])); + if (! yynewItems) + yyMemoryExhausted (yystackp); + for (yyp0 = yystackp->yyitems, yyp1 = yynewItems, yyn = yysize; + 0 < yyn; + yyn -= 1, yyp0 += 1, yyp1 += 1) + { + *yyp1 = *yyp0; + if (*YY_REINTERPRET_CAST (yybool *, yyp0)) + { + yyGLRState* yys0 = &yyp0->yystate; + yyGLRState* yys1 = &yyp1->yystate; + if (yys0->yypred != YY_NULLPTR) + yys1->yypred = + YYRELOC (yyp0, yyp1, yys0->yypred, yystate); + if (! yys0->yyresolved && yys0->yysemantics.yyfirstVal != YY_NULLPTR) + yys1->yysemantics.yyfirstVal = + YYRELOC (yyp0, yyp1, yys0->yysemantics.yyfirstVal, yyoption); + } + else + { + yySemanticOption* yyv0 = &yyp0->yyoption; + yySemanticOption* yyv1 = &yyp1->yyoption; + if (yyv0->yystate != YY_NULLPTR) + yyv1->yystate = YYRELOC (yyp0, yyp1, yyv0->yystate, yystate); + if (yyv0->yynext != YY_NULLPTR) + yyv1->yynext = YYRELOC (yyp0, yyp1, yyv0->yynext, yyoption); + } + } + if (yystackp->yysplitPoint != YY_NULLPTR) + yystackp->yysplitPoint = YYRELOC (yystackp->yyitems, yynewItems, + yystackp->yysplitPoint, yystate); + + for (yyn = 0; yyn < yystackp->yytops.yysize; yyn += 1) + if (yystackp->yytops.yystates[yyn] != YY_NULLPTR) + yystackp->yytops.yystates[yyn] = + YYRELOC (yystackp->yyitems, yynewItems, + yystackp->yytops.yystates[yyn], yystate); + YYFREE (yystackp->yyitems); + yystackp->yyitems = yynewItems; + yystackp->yynextFree = yynewItems + yysize; + yystackp->yyspaceLeft = yynewSize - yysize; +} +#endif + +static void +yyfreeGLRStack (yyGLRStack* yystackp) +{ + YYFREE (yystackp->yyitems); + yyfreeStateSet (&yystackp->yytops); +} + +/** Assuming that YYS is a GLRState somewhere on *YYSTACKP, update the + * splitpoint of *YYSTACKP, if needed, so that it is at least as deep as + * YYS. */ +static inline void +yyupdateSplit (yyGLRStack* yystackp, yyGLRState* yys) +{ + if (yystackp->yysplitPoint != YY_NULLPTR && yystackp->yysplitPoint > yys) + yystackp->yysplitPoint = yys; +} + +/** Invalidate stack #YYK in *YYSTACKP. */ +static inline void +yymarkStackDeleted (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + if (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + yystackp->yylastDeleted = yystackp->yytops.yystates[yyk]; + yystackp->yytops.yystates[yyk] = YY_NULLPTR; +} + +/** Undelete the last stack in *YYSTACKP that was marked as deleted. Can + only be done once after a deletion, and only when all other stacks have + been deleted. */ +static void +yyundeleteLastStack (yyGLRStack* yystackp) +{ + if (yystackp->yylastDeleted == YY_NULLPTR || yystackp->yytops.yysize != 0) + return; + yystackp->yytops.yystates[0] = yystackp->yylastDeleted; + yystackp->yytops.yysize = 1; + YY_DPRINTF ((stderr, "Restoring last deleted stack as stack #0.\n")); + yystackp->yylastDeleted = YY_NULLPTR; +} + +static inline void +yyremoveDeletes (yyGLRStack* yystackp) +{ + YYPTRDIFF_T yyi, yyj; + yyi = yyj = 0; + while (yyj < yystackp->yytops.yysize) + { + if (yystackp->yytops.yystates[yyi] == YY_NULLPTR) + { + if (yyi == yyj) + YY_DPRINTF ((stderr, "Removing dead stacks.\n")); + yystackp->yytops.yysize -= 1; + } + else + { + yystackp->yytops.yystates[yyj] = yystackp->yytops.yystates[yyi]; + /* In the current implementation, it's unnecessary to copy + yystackp->yytops.yylookaheadNeeds[yyi] since, after + yyremoveDeletes returns, the parser immediately either enters + deterministic operation or shifts a token. However, it doesn't + hurt, and the code might evolve to need it. */ + yystackp->yytops.yylookaheadNeeds[yyj] = + yystackp->yytops.yylookaheadNeeds[yyi]; + if (yyj != yyi) + YY_DPRINTF ((stderr, "Rename stack %ld -> %ld.\n", + YY_CAST (long, yyi), YY_CAST (long, yyj))); + yyj += 1; + } + yyi += 1; + } +} + +/** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic + * value *YYVALP and source location *YYLOCP. */ +static inline void +yyglrShift (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yy_state_t yylrState, + YYPTRDIFF_T yyposn, + YYSTYPE* yyvalp]b4_locations_if([, YYLTYPE* yylocp])[) +{ + yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate; + + yynewState->yylrState = yylrState; + yynewState->yyposn = yyposn; + yynewState->yyresolved = yytrue; + yynewState->yypred = yystackp->yytops.yystates[yyk]; + yynewState->yysemantics.yyval = *yyvalp;]b4_locations_if([ + yynewState->yyloc = *yylocp;])[ + yystackp->yytops.yystates[yyk] = yynewState; + + YY_RESERVE_GLRSTACK (yystackp); +} + +/** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with the (unresolved) + * semantic value of YYRHS under the action for YYRULE. */ +static inline void +yyglrShiftDefer (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yy_state_t yylrState, + YYPTRDIFF_T yyposn, yyGLRState* yyrhs, yyRuleNum yyrule) +{ + yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate; + YY_ASSERT (yynewState->yyisState); + + yynewState->yylrState = yylrState; + yynewState->yyposn = yyposn; + yynewState->yyresolved = yyfalse; + yynewState->yypred = yystackp->yytops.yystates[yyk]; + yynewState->yysemantics.yyfirstVal = YY_NULLPTR; + yystackp->yytops.yystates[yyk] = yynewState; + + /* Invokes YY_RESERVE_GLRSTACK. */ + yyaddDeferredAction (yystackp, yyk, yynewState, yyrhs, yyrule); +} + +#if ]b4_api_PREFIX[DEBUG + +/*----------------------------------------------------------------------. +| Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. | +`----------------------------------------------------------------------*/ + +static inline void +yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, YYPTRDIFF_T yyk, + yyRuleNum yyrule]b4_user_formals[) +{ + int yynrhs = yyrhsLength (yyrule);]b4_locations_if([ + int yylow = 1;])[ + int yyi; + YY_FPRINTF ((stderr, "Reducing stack %ld by rule %d (line %d):\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule])); + if (! yynormal) + yyfillin (yyvsp, 1, -yynrhs); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YY_FPRINTF ((stderr, " $%d = ", yyi + 1)); + yy_symbol_print (stderr, + yy_accessing_symbol (yyvsp[yyi - yynrhs + 1].yystate.yylrState), + &yyvsp[yyi - yynrhs + 1].yystate.yysemantics.yyval]b4_locations_if([, + &]b4_rhs_location(yynrhs, yyi + 1))[]dnl + b4_user_args[); + if (!yyvsp[yyi - yynrhs + 1].yystate.yyresolved) + YY_FPRINTF ((stderr, " (unresolved)")); + YY_FPRINTF ((stderr, "\n")); + } +} +#endif + +/** Pop the symbols consumed by reduction #YYRULE from the top of stack + * #YYK of *YYSTACKP, and perform the appropriate semantic action on their + * semantic values. Assumes that all ambiguities in semantic values + * have been previously resolved. Set *YYVALP to the resulting value, + * and *YYLOCP to the computed location (if any). Return value is as + * for userAction. */ +static inline YYRESULTTAG +yydoAction (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyRuleNum yyrule, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + int yynrhs = yyrhsLength (yyrule); + + if (yystackp->yysplitPoint == YY_NULLPTR) + { + /* Standard special case: single stack. */ + yyGLRStackItem* yyrhs + = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yytops.yystates[yyk]); + YY_ASSERT (yyk == 0); + yystackp->yynextFree -= yynrhs; + yystackp->yyspaceLeft += yynrhs; + yystackp->yytops.yystates[0] = & yystackp->yynextFree[-1].yystate; + return yyuserAction (yyrule, yynrhs, yyrhs, yystackp, yyk, + yyvalp]b4_locuser_args[); + } + else + { + yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + yyGLRState* yys = yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred + = yystackp->yytops.yystates[yyk]; + int yyi;]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].yystate.yyloc = yys->yyloc;]])[ + for (yyi = 0; yyi < yynrhs; yyi += 1) + { + yys = yys->yypred; + YY_ASSERT (yys); + } + yyupdateSplit (yystackp, yys); + yystackp->yytops.yystates[yyk] = yys; + return yyuserAction (yyrule, yynrhs, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yystackp, yyk, yyvalp]b4_locuser_args[); + } +} + +/** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE, + * and push back on the resulting nonterminal symbol. Perform the + * semantic action associated with YYRULE and store its value with the + * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently + * unambiguous. Otherwise, store the deferred semantic action with + * the new state. If the new state would have an identical input + * position, LR state, and predecessor to an existing state on the stack, + * it is identified with that existing state, eliminating stack #YYK from + * *YYSTACKP. In this case, the semantic value is + * added to the options for the existing state's semantic value. + */ +static inline YYRESULTTAG +yyglrReduce (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyRuleNum yyrule, + yybool yyforceEval]b4_user_formals[) +{ + YYPTRDIFF_T yyposn = yystackp->yytops.yystates[yyk]->yyposn; + + if (yyforceEval || yystackp->yysplitPoint == YY_NULLPTR) + { + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ + + YYRESULTTAG yyflag = yydoAction (yystackp, yyk, yyrule, &yyval]b4_locuser_args([&yyloc])[); + if (yyflag == yyerr && yystackp->yysplitPoint != YY_NULLPTR) + YY_DPRINTF ((stderr, + "Parse on stack %ld rejected by rule %d (line %d).\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule])); + if (yyflag != yyok) + return yyflag; + yyglrShift (yystackp, yyk, + yyLRgotoState (yystackp->yytops.yystates[yyk]->yylrState, + yylhsNonterm (yyrule)), + yyposn, &yyval]b4_locations_if([, &yyloc])[); + } + else + { + YYPTRDIFF_T yyi; + int yyn; + yyGLRState* yys, *yys0 = yystackp->yytops.yystates[yyk]; + yy_state_t yynewLRState; + + for (yys = yystackp->yytops.yystates[yyk], yyn = yyrhsLength (yyrule); + 0 < yyn; yyn -= 1) + { + yys = yys->yypred; + YY_ASSERT (yys); + } + yyupdateSplit (yystackp, yys); + yynewLRState = yyLRgotoState (yys->yylrState, yylhsNonterm (yyrule)); + YY_DPRINTF ((stderr, + "Reduced stack %ld by rule %d (line %d); action deferred. " + "Now in state %d.\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule], + yynewLRState)); + for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) + if (yyi != yyk && yystackp->yytops.yystates[yyi] != YY_NULLPTR) + { + yyGLRState *yysplit = yystackp->yysplitPoint; + yyGLRState *yyp = yystackp->yytops.yystates[yyi]; + while (yyp != yys && yyp != yysplit && yyp->yyposn >= yyposn) + { + if (yyp->yylrState == yynewLRState && yyp->yypred == yys) + { + yyaddDeferredAction (yystackp, yyk, yyp, yys0, yyrule); + yymarkStackDeleted (yystackp, yyk); + YY_DPRINTF ((stderr, "Merging stack %ld into stack %ld.\n", + YY_CAST (long, yyk), YY_CAST (long, yyi))); + return yyok; + } + yyp = yyp->yypred; + } + } + yystackp->yytops.yystates[yyk] = yys; + yyglrShiftDefer (yystackp, yyk, yynewLRState, yyposn, yys0, yyrule); + } + return yyok; +} + +static YYPTRDIFF_T +yysplitStack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + if (yystackp->yysplitPoint == YY_NULLPTR) + { + YY_ASSERT (yyk == 0); + yystackp->yysplitPoint = yystackp->yytops.yystates[yyk]; + } + if (yystackp->yytops.yycapacity <= yystackp->yytops.yysize) + { + YYPTRDIFF_T state_size = YYSIZEOF (yystackp->yytops.yystates[0]); + YYPTRDIFF_T half_max_capacity = YYSIZE_MAXIMUM / 2 / state_size; + if (half_max_capacity < yystackp->yytops.yycapacity) + yyMemoryExhausted (yystackp); + yystackp->yytops.yycapacity *= 2; + + { + yyGLRState** yynewStates + = YY_CAST (yyGLRState**, + YYREALLOC (yystackp->yytops.yystates, + (YY_CAST (YYSIZE_T, yystackp->yytops.yycapacity) + * sizeof yynewStates[0]))); + if (yynewStates == YY_NULLPTR) + yyMemoryExhausted (yystackp); + yystackp->yytops.yystates = yynewStates; + } + + { + yybool* yynewLookaheadNeeds + = YY_CAST (yybool*, + YYREALLOC (yystackp->yytops.yylookaheadNeeds, + (YY_CAST (YYSIZE_T, yystackp->yytops.yycapacity) + * sizeof yynewLookaheadNeeds[0]))); + if (yynewLookaheadNeeds == YY_NULLPTR) + yyMemoryExhausted (yystackp); + yystackp->yytops.yylookaheadNeeds = yynewLookaheadNeeds; + } + } + yystackp->yytops.yystates[yystackp->yytops.yysize] + = yystackp->yytops.yystates[yyk]; + yystackp->yytops.yylookaheadNeeds[yystackp->yytops.yysize] + = yystackp->yytops.yylookaheadNeeds[yyk]; + yystackp->yytops.yysize += 1; + return yystackp->yytops.yysize - 1; +} + +/** True iff YYY0 and YYY1 represent identical options at the top level. + * That is, they represent the same rule applied to RHS symbols + * that produce the same terminal symbols. */ +static yybool +yyidenticalOptions (yySemanticOption* yyy0, yySemanticOption* yyy1) +{ + if (yyy0->yyrule == yyy1->yyrule) + { + yyGLRState *yys0, *yys1; + int yyn; + for (yys0 = yyy0->yystate, yys1 = yyy1->yystate, + yyn = yyrhsLength (yyy0->yyrule); + yyn > 0; + yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1) + if (yys0->yyposn != yys1->yyposn) + return yyfalse; + return yytrue; + } + else + return yyfalse; +} + +/** Assuming identicalOptions (YYY0,YYY1), destructively merge the + * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */ +static void +yymergeOptionSets (yySemanticOption* yyy0, yySemanticOption* yyy1) +{ + yyGLRState *yys0, *yys1; + int yyn; + for (yys0 = yyy0->yystate, yys1 = yyy1->yystate, + yyn = yyrhsLength (yyy0->yyrule); + 0 < yyn; + yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1) + { + if (yys0 == yys1) + break; + else if (yys0->yyresolved) + { + yys1->yyresolved = yytrue; + yys1->yysemantics.yyval = yys0->yysemantics.yyval; + } + else if (yys1->yyresolved) + { + yys0->yyresolved = yytrue; + yys0->yysemantics.yyval = yys1->yysemantics.yyval; + } + else + { + yySemanticOption** yyz0p = &yys0->yysemantics.yyfirstVal; + yySemanticOption* yyz1 = yys1->yysemantics.yyfirstVal; + while (yytrue) + { + if (yyz1 == *yyz0p || yyz1 == YY_NULLPTR) + break; + else if (*yyz0p == YY_NULLPTR) + { + *yyz0p = yyz1; + break; + } + else if (*yyz0p < yyz1) + { + yySemanticOption* yyz = *yyz0p; + *yyz0p = yyz1; + yyz1 = yyz1->yynext; + (*yyz0p)->yynext = yyz; + } + yyz0p = &(*yyz0p)->yynext; + } + yys1->yysemantics.yyfirstVal = yys0->yysemantics.yyfirstVal; + } + } +} + +/** Y0 and Y1 represent two possible actions to take in a given + * parsing state; return 0 if no combination is possible, + * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */ +static int +yypreference (yySemanticOption* y0, yySemanticOption* y1) +{ + yyRuleNum r0 = y0->yyrule, r1 = y1->yyrule; + int p0 = yydprec[r0], p1 = yydprec[r1]; + + if (p0 == p1) + { + if (yymerger[r0] == 0 || yymerger[r0] != yymerger[r1]) + return 0; + else + return 1; + } + if (p0 == 0 || p1 == 0) + return 0; + if (p0 < p1) + return 3; + if (p1 < p0) + return 2; + return 0; +} + +static YYRESULTTAG +yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp]b4_user_formals[); + + +/** Resolve the previous YYN states starting at and including state YYS + * on *YYSTACKP. If result != yyok, some states may have been left + * unresolved possibly with empty semantic option chains. Regardless + * of whether result = yyok, each state has been left with consistent + * data so that yydestroyGLRState can be invoked if necessary. */ +static YYRESULTTAG +yyresolveStates (yyGLRState* yys, int yyn, + yyGLRStack* yystackp]b4_user_formals[) +{ + if (0 < yyn) + { + YY_ASSERT (yys->yypred); + YYCHK (yyresolveStates (yys->yypred, yyn-1, yystackp]b4_user_args[)); + if (! yys->yyresolved) + YYCHK (yyresolveValue (yys, yystackp]b4_user_args[)); + } + return yyok; +} + +/** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its + * user action, and return the semantic value and location in *YYVALP + * and *YYLOCP. Regardless of whether result = yyok, all RHS states + * have been destroyed (assuming the user action destroys all RHS + * semantic values if invoked). */ +static YYRESULTTAG +yyresolveAction (yySemanticOption* yyopt, yyGLRStack* yystackp, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + int yynrhs = yyrhsLength (yyopt->yyrule); + YYRESULTTAG yyflag = + yyresolveStates (yyopt->yystate, yynrhs, yystackp]b4_user_args[); + if (yyflag != yyok) + { + yyGLRState *yys; + for (yys = yyopt->yystate; yynrhs > 0; yys = yys->yypred, yynrhs -= 1) + yydestroyGLRState ("Cleanup: popping", yys]b4_user_args[); + return yyflag; + } + + yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred = yyopt->yystate;]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].yystate.yyloc = yyopt->yystate->yyloc;]])[ + { + int yychar_current = yychar; + YYSTYPE yylval_current = yylval;]b4_locations_if([ + YYLTYPE yylloc_current = yylloc;])[ + yychar = yyopt->yyrawchar; + yylval = yyopt->yyval;]b4_locations_if([ + yylloc = yyopt->yyloc;])[ + yyflag = yyuserAction (yyopt->yyrule, yynrhs, + yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yystackp, -1, yyvalp]b4_locuser_args[); + yychar = yychar_current; + yylval = yylval_current;]b4_locations_if([ + yylloc = yylloc_current;])[ + } + return yyflag; +} + +#if ]b4_api_PREFIX[DEBUG +static void +yyreportTree (yySemanticOption* yyx, int yyindent) +{ + int yynrhs = yyrhsLength (yyx->yyrule); + int yyi; + yyGLRState* yys; + yyGLRState* yystates[1 + YYMAXRHS]; + yyGLRState yyleftmost_state; + + for (yyi = yynrhs, yys = yyx->yystate; 0 < yyi; yyi -= 1, yys = yys->yypred) + yystates[yyi] = yys; + if (yys == YY_NULLPTR) + { + yyleftmost_state.yyposn = 0; + yystates[0] = &yyleftmost_state; + } + else + yystates[0] = yys; + + if (yyx->yystate->yyposn < yys->yyposn + 1) + YY_FPRINTF ((stderr, "%*s%s -> \n", + yyindent, "", yysymbol_name (yylhsNonterm (yyx->yyrule)), + yyx->yyrule - 1)); + else + YY_FPRINTF ((stderr, "%*s%s -> \n", + yyindent, "", yysymbol_name (yylhsNonterm (yyx->yyrule)), + yyx->yyrule - 1, YY_CAST (long, yys->yyposn + 1), + YY_CAST (long, yyx->yystate->yyposn))); + for (yyi = 1; yyi <= yynrhs; yyi += 1) + { + if (yystates[yyi]->yyresolved) + { + if (yystates[yyi-1]->yyposn+1 > yystates[yyi]->yyposn) + YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "", + yysymbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)))); + else + YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "", + yysymbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)), + YY_CAST (long, yystates[yyi-1]->yyposn + 1), + YY_CAST (long, yystates[yyi]->yyposn))); + } + else + yyreportTree (yystates[yyi]->yysemantics.yyfirstVal, yyindent+2); + } +} +#endif + +static YYRESULTTAG +yyreportAmbiguity (yySemanticOption* yyx0, + yySemanticOption* yyx1]b4_pure_formals[) +{ + YY_USE (yyx0); + YY_USE (yyx1); + +#if ]b4_api_PREFIX[DEBUG + YY_FPRINTF ((stderr, "Ambiguity detected.\n")); + YY_FPRINTF ((stderr, "Option 1,\n")); + yyreportTree (yyx0, 2); + YY_FPRINTF ((stderr, "\nOption 2,\n")); + yyreportTree (yyx1, 2); + YY_FPRINTF ((stderr, "\n")); +#endif + + yyerror (]b4_yyerror_args[YY_("syntax is ambiguous")); + return yyabort; +}]b4_locations_if([[ + +/** Resolve the locations for each of the YYN1 states in *YYSTACKP, + * ending at YYS1. Has no effect on previously resolved states. + * The first semantic option of a state is always chosen. */ +static void +yyresolveLocations (yyGLRState *yys1, int yyn1, + yyGLRStack *yystackp]b4_user_formals[) +{ + if (0 < yyn1) + { + yyresolveLocations (yys1->yypred, yyn1 - 1, yystackp]b4_user_args[); + if (!yys1->yyresolved) + { + yyGLRStackItem yyrhsloc[1 + YYMAXRHS]; + int yynrhs; + yySemanticOption *yyoption = yys1->yysemantics.yyfirstVal; + YY_ASSERT (yyoption); + yynrhs = yyrhsLength (yyoption->yyrule); + if (0 < yynrhs) + { + yyGLRState *yys; + int yyn; + yyresolveLocations (yyoption->yystate, yynrhs, + yystackp]b4_user_args[); + for (yys = yyoption->yystate, yyn = yynrhs; + yyn > 0; + yys = yys->yypred, yyn -= 1) + yyrhsloc[yyn].yystate.yyloc = yys->yyloc; + } + else + { + /* Both yyresolveAction and yyresolveLocations traverse the GSS + in reverse rightmost order. It is only necessary to invoke + yyresolveLocations on a subforest for which yyresolveAction + would have been invoked next had an ambiguity not been + detected. Thus the location of the previous state (but not + necessarily the previous state itself) is guaranteed to be + resolved already. */ + yyGLRState *yyprevious = yyoption->yystate; + yyrhsloc[0].yystate.yyloc = yyprevious->yyloc; + } + YYLLOC_DEFAULT ((yys1->yyloc), yyrhsloc, yynrhs); + } + } +}]])[ + +/** Resolve the ambiguity represented in state YYS in *YYSTACKP, + * perform the indicated actions, and set the semantic value of YYS. + * If result != yyok, the chain of semantic options in YYS has been + * cleared instead or it has been left unmodified except that + * redundant options may have been removed. Regardless of whether + * result = yyok, YYS has been left with consistent data so that + * yydestroyGLRState can be invoked if necessary. */ +static YYRESULTTAG +yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp]b4_user_formals[) +{ + yySemanticOption* yyoptionList = yys->yysemantics.yyfirstVal; + yySemanticOption* yybest = yyoptionList; + yySemanticOption** yypp; + yybool yymerge = yyfalse; + YYSTYPE yyval; + YYRESULTTAG yyflag;]b4_locations_if([ + YYLTYPE *yylocp = &yys->yyloc;])[ + + for (yypp = &yyoptionList->yynext; *yypp != YY_NULLPTR; ) + { + yySemanticOption* yyp = *yypp; + + if (yyidenticalOptions (yybest, yyp)) + { + yymergeOptionSets (yybest, yyp); + *yypp = yyp->yynext; + } + else + { + switch (yypreference (yybest, yyp)) + { + case 0:]b4_locations_if([[ + yyresolveLocations (yys, 1, yystackp]b4_user_args[);]])[ + return yyreportAmbiguity (yybest, yyp]b4_pure_args[); + break; + case 1: + yymerge = yytrue; + break; + case 2: + break; + case 3: + yybest = yyp; + yymerge = yyfalse; + break; + default: + /* This cannot happen so it is not worth a YY_ASSERT (yyfalse), + but some compilers complain if the default case is + omitted. */ + break; + } + yypp = &yyp->yynext; + } + } + + if (yymerge) + { + yySemanticOption* yyp; + int yyprec = yydprec[yybest->yyrule]; + yyflag = yyresolveAction (yybest, yystackp, &yyval]b4_locuser_args[); + if (yyflag == yyok) + for (yyp = yybest->yynext; yyp != YY_NULLPTR; yyp = yyp->yynext) + { + if (yyprec == yydprec[yyp->yyrule]) + { + YYSTYPE yyval_other;]b4_locations_if([ + YYLTYPE yydummy;])[ + yyflag = yyresolveAction (yyp, yystackp, &yyval_other]b4_locuser_args([&yydummy])[); + if (yyflag != yyok) + { + yydestruct ("Cleanup: discarding incompletely merged value for", + yy_accessing_symbol (yys->yylrState), + &yyval]b4_locuser_args[); + break; + } + yyuserMerge (yymerger[yyp->yyrule], &yyval, &yyval_other); + } + } + } + else + yyflag = yyresolveAction (yybest, yystackp, &yyval]b4_locuser_args([yylocp])[); + + if (yyflag == yyok) + { + yys->yyresolved = yytrue; + yys->yysemantics.yyval = yyval; + } + else + yys->yysemantics.yyfirstVal = YY_NULLPTR; + return yyflag; +} + +static YYRESULTTAG +yyresolveStack (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yysplitPoint != YY_NULLPTR) + { + yyGLRState* yys; + int yyn; + + for (yyn = 0, yys = yystackp->yytops.yystates[0]; + yys != yystackp->yysplitPoint; + yys = yys->yypred, yyn += 1) + continue; + YYCHK (yyresolveStates (yystackp->yytops.yystates[0], yyn, yystackp + ]b4_user_args[)); + } + return yyok; +} + +/** Called when returning to deterministic operation to clean up the extra + * stacks. */ +static void +yycompressStack (yyGLRStack* yystackp) +{ + /* yyr is the state after the split point. */ + yyGLRState *yyr; + + if (yystackp->yytops.yysize != 1 || yystackp->yysplitPoint == YY_NULLPTR) + return; + + { + yyGLRState *yyp, *yyq; + for (yyp = yystackp->yytops.yystates[0], yyq = yyp->yypred, yyr = YY_NULLPTR; + yyp != yystackp->yysplitPoint; + yyr = yyp, yyp = yyq, yyq = yyp->yypred) + yyp->yypred = yyr; + } + + yystackp->yyspaceLeft += yystackp->yynextFree - yystackp->yyitems; + yystackp->yynextFree = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yysplitPoint) + 1; + yystackp->yyspaceLeft -= yystackp->yynextFree - yystackp->yyitems; + yystackp->yysplitPoint = YY_NULLPTR; + yystackp->yylastDeleted = YY_NULLPTR; + + while (yyr != YY_NULLPTR) + { + yystackp->yynextFree->yystate = *yyr; + yyr = yyr->yypred; + yystackp->yynextFree->yystate.yypred = &yystackp->yynextFree[-1].yystate; + yystackp->yytops.yystates[0] = &yystackp->yynextFree->yystate; + yystackp->yynextFree += 1; + yystackp->yyspaceLeft -= 1; + } +} + +static YYRESULTTAG +yyprocessOneStack (yyGLRStack* yystackp, YYPTRDIFF_T yyk, + YYPTRDIFF_T yyposn]b4_pure_formals[) +{ + while (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + { + yy_state_t yystate = yystackp->yytops.yystates[yyk]->yylrState; + YY_DPRINTF ((stderr, "Stack %ld Entering state %d\n", + YY_CAST (long, yyk), yystate)); + + YY_ASSERT (yystate != YYFINAL); + + if (yyisDefaultedState (yystate)) + { + YYRESULTTAG yyflag; + yyRuleNum yyrule = yydefaultAction (yystate); + if (yyrule == 0) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + return yyok; + } + yyflag = yyglrReduce (yystackp, yyk, yyrule, yyimmediate[yyrule]]b4_user_args[); + if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, + "Stack %ld dies " + "(predicate failure or explicit user error).\n", + YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + return yyok; + } + if (yyflag != yyok) + return yyflag; + } + else + { + yysymbol_kind_t yytoken = ]b4_yygetToken_call[; + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts); + yystackp->yytops.yylookaheadNeeds[yyk] = yytrue; + + for (/* nothing */; *yyconflicts; yyconflicts += 1) + { + YYRESULTTAG yyflag; + YYPTRDIFF_T yynewStack = yysplitStack (yystackp, yyk); + YY_DPRINTF ((stderr, "Splitting off stack %ld from %ld.\n", + YY_CAST (long, yynewStack), YY_CAST (long, yyk))); + yyflag = yyglrReduce (yystackp, yynewStack, + *yyconflicts, + yyimmediate[*yyconflicts]]b4_user_args[); + if (yyflag == yyok) + YYCHK (yyprocessOneStack (yystackp, yynewStack, + yyposn]b4_pure_args[)); + else if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yynewStack))); + yymarkStackDeleted (yystackp, yynewStack); + } + else + return yyflag; + } + + if (yyisShiftAction (yyaction)) + break; + else if (yyisErrorAction (yyaction)) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + break; + } + else + { + YYRESULTTAG yyflag = yyglrReduce (yystackp, yyk, -yyaction, + yyimmediate[-yyaction]]b4_user_args[); + if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, + "Stack %ld dies " + "(predicate failure or explicit user error).\n", + YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + break; + } + else if (yyflag != yyok) + return yyflag; + } + } + } + return yyok; +} + +]b4_parse_error_case([simple], [], +[[/* Put in YYARG at most YYARGN of the expected tokens given the + current YYSTACKP, and return the number of tokens stored in YYARG. If + YYARG is null, return the number of expected tokens (guaranteed to + be less than YYNTOKENS). */ +static int +yypcontext_expected_tokens (const yyGLRStack* yystackp, + yysymbol_kind_t yyarg[], int yyargn) +{ + /* Actual size of YYARG. */ + int yycount = 0; + int yyn = yypact[yystackp->yytops.yystates[0]->yylrState]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (yysymbol_kind_t, yyx); + } + } + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; +}]])[ + +]b4_parse_error_bmatch( + [custom], +[[/* User defined function to report a syntax error. */ +typedef yyGLRStack yypcontext_t; +static int +yyreport_syntax_error (const yyGLRStack* yystackp]b4_user_formals[); + +/* The kind of the lookahead of this context. */ +static yysymbol_kind_t +yypcontext_token (const yyGLRStack *yystackp) YY_ATTRIBUTE_UNUSED; + +static yysymbol_kind_t +yypcontext_token (const yyGLRStack *yystackp) +{ + YY_USE (yystackp); + yysymbol_kind_t yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + return yytoken; +} + +]b4_locations_if([[/* The location of the lookahead of this context. */ +static const YYLTYPE * +yypcontext_location (const yyGLRStack *yystackp) YY_ATTRIBUTE_UNUSED; + +static const YYLTYPE * +yypcontext_location (const yyGLRStack *yystackp) +{ + YY_USE (yystackp); + return &yylloc; +}]])], + [detailed\|verbose], +[[static int +yy_syntax_error_arguments (const yyGLRStack* yystackp, + yysymbol_kind_t yyarg[], int yyargn) +{ + yysymbol_kind_t yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + /* Actual size of YYARG. */ + int yycount = 0; + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != ]b4_symbol(empty, kind)[) + { + int yyn; + if (yyarg) + yyarg[yycount] = yytoken; + ++yycount; + yyn = yypcontext_expected_tokens (yystackp, + yyarg ? yyarg + 1 : yyarg, yyargn - 1); + if (yyn == YYENOMEM) + return YYENOMEM; + else + yycount += yyn; + } + return yycount; +} +]])[ + + +static void +yyreportSyntaxError (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yyerrState != 0) + return; +]b4_parse_error_case( + [custom], +[[ if (yyreport_syntax_error (yystackp]b4_user_args[)) + yyMemoryExhausted (yystackp);]], + [simple], +[[ yyerror (]b4_lyyerror_args[YY_("syntax error"));]], +[[ { + yybool yysize_overflow = yyfalse; + char* yymsg = YY_NULLPTR; + enum { YYARGS_MAX = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULLPTR; + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ + yysymbol_kind_t yyarg[YYARGS_MAX]; + /* Cumulated lengths of YYARG. */ + YYPTRDIFF_T yysize = 0; + + /* Actual size of YYARG. */ + int yycount + = yy_syntax_error_arguments (yystackp, yyarg, YYARGS_MAX); + if (yycount == YYENOMEM) + yyMemoryExhausted (yystackp); + + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: /* Avoid compiler warnings. */ + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + /* Compute error message size. Don't count the "%s"s, but reserve + room for the terminator. */ + yysize = yystrlen (yyformat) - 2 * yycount + 1; + { + int yyi; + for (yyi = 0; yyi < yycount; ++yyi) + { + YYPTRDIFF_T yysz + = ]b4_parse_error_case( + [verbose], [[yytnamerr (YY_NULLPTR, yytname[yyarg[yyi]])]], + [[yystrlen (yysymbol_name (yyarg[yyi]))]]);[ + if (YYSIZE_MAXIMUM - yysize < yysz) + yysize_overflow = yytrue; + else + yysize += yysz; + } + } + + if (!yysize_overflow) + yymsg = YY_CAST (char *, YYMALLOC (YY_CAST (YYSIZE_T, yysize))); + + if (yymsg) + { + char *yyp = yymsg; + int yyi = 0; + while ((*yyp = *yyformat)) + { + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + {]b4_parse_error_case([verbose], [[ + yyp += yytnamerr (yyp, yytname[yyarg[yyi++]]);]], [[ + yyp = yystpcpy (yyp, yysymbol_name (yyarg[yyi++]));]])[ + yyformat += 2; + } + else + { + ++yyp; + ++yyformat; + } + } + yyerror (]b4_lyyerror_args[yymsg); + YYFREE (yymsg); + } + else + { + yyerror (]b4_lyyerror_args[YY_("syntax error")); + yyMemoryExhausted (yystackp); + } + }]])[ + yynerrs += 1; +} + +/* Recover from a syntax error on *YYSTACKP, assuming that *YYSTACKP->YYTOKENP, + yylval, and yylloc are the syntactic category, semantic value, and location + of the lookahead. */ +static void +yyrecoverSyntaxError (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yyerrState == 3) + /* We just shifted the error token and (perhaps) took some + reductions. Skip tokens until we can proceed. */ + while (yytrue) + { + yysymbol_kind_t yytoken; + int yyj; + if (yychar == ]b4_symbol(eof, [id])[) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); + if (yychar != ]b4_symbol(empty, id)[) + {]b4_locations_if([[ + /* We throw away the lookahead, but the error range + of the shifted error token must take it into account. */ + yyGLRState *yys = yystackp->yytops.yystates[0]; + yyGLRStackItem yyerror_range[3]; + yyerror_range[1].yystate.yyloc = yys->yyloc; + yyerror_range[2].yystate.yyloc = yylloc; + YYLLOC_DEFAULT ((yys->yyloc), yyerror_range, 2);]])[ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Error: discarding", + yytoken, &yylval]b4_locuser_args([&yylloc])[); + yychar = ]b4_symbol(empty, id)[; + } + yytoken = ]b4_yygetToken_call[; + yyj = yypact[yystackp->yytops.yystates[0]->yylrState]; + if (yypact_value_is_default (yyj)) + return; + yyj += yytoken; + if (yyj < 0 || YYLAST < yyj || yycheck[yyj] != yytoken) + { + if (yydefact[yystackp->yytops.yystates[0]->yylrState] != 0) + return; + } + else if (! yytable_value_is_error (yytable[yyj])) + return; + } + + /* Reduce to one stack. */ + { + YYPTRDIFF_T yyk; + for (yyk = 0; yyk < yystackp->yytops.yysize; yyk += 1) + if (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + break; + if (yyk >= yystackp->yytops.yysize) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); + for (yyk += 1; yyk < yystackp->yytops.yysize; yyk += 1) + yymarkStackDeleted (yystackp, yyk); + yyremoveDeletes (yystackp); + yycompressStack (yystackp); + } + + /* Pop stack until we find a state that shifts the error token. */ + yystackp->yyerrState = 3; + while (yystackp->yytops.yystates[0] != YY_NULLPTR) + { + yyGLRState *yys = yystackp->yytops.yystates[0]; + int yyj = yypact[yys->yylrState]; + if (! yypact_value_is_default (yyj)) + { + yyj += ]b4_symbol(error, kind)[; + if (0 <= yyj && yyj <= YYLAST && yycheck[yyj] == ]b4_symbol(error, kind)[ + && yyisShiftAction (yytable[yyj])) + { + /* Shift the error token. */ + int yyaction = yytable[yyj];]b4_locations_if([[ + /* First adjust its location.*/ + YYLTYPE yyerrloc; + yystackp->yyerror_range[2].yystate.yyloc = yylloc; + YYLLOC_DEFAULT (yyerrloc, (yystackp->yyerror_range), 2);]])[ + YY_SYMBOL_PRINT ("Shifting", yy_accessing_symbol (yyaction), + &yylval, &yyerrloc); + yyglrShift (yystackp, 0, yyaction, + yys->yyposn, &yylval]b4_locations_if([, &yyerrloc])[); + yys = yystackp->yytops.yystates[0]; + break; + } + }]b4_locations_if([[ + yystackp->yyerror_range[1].yystate.yyloc = yys->yyloc;]])[ + if (yys->yypred != YY_NULLPTR) + yydestroyGLRState ("Error: popping", yys]b4_user_args[); + yystackp->yytops.yystates[0] = yys->yypred; + yystackp->yynextFree -= 1; + yystackp->yyspaceLeft += 1; + } + if (yystackp->yytops.yystates[0] == YY_NULLPTR) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); +} + +#define YYCHK1(YYE) \ + do { \ + switch (YYE) { \ + case yyok: break; \ + case yyabort: goto yyabortlab; \ + case yyaccept: goto yyacceptlab; \ + case yyerr: goto yyuser_error; \ + case yynomem: goto yyexhaustedlab; \ + default: goto yybuglab; \ + } \ + } while (0) + +/*----------. +| yyparse. | +`----------*/ + +int +]b4_glr_cc_if([yy_parse_impl], [yyparse])[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + int yyresult; + yyGLRStack yystack; + yyGLRStack* const yystackp = &yystack; + YYPTRDIFF_T yyposn; + + YY_DPRINTF ((stderr, "Starting parse\n")); + + yychar = ]b4_symbol(empty, id)[; + yylval = yyval_default;]b4_locations_if([ + yylloc = yyloc_default;])[ +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl +[ + if (! yyinitGLRStack (yystackp, YYINITDEPTH)) + goto yyexhaustedlab; + switch (YYSETJMP (yystack.yyexception_buffer)) + { + case 0: break; + case 1: goto yyabortlab; + case 2: goto yyexhaustedlab; + default: goto yybuglab; + } + yyglrShift (&yystack, 0, 0, 0, &yylval]b4_locations_if([, &yylloc])[); + yyposn = 0; + + while (yytrue) + { + /* For efficiency, we have two loops, the first of which is + specialized to deterministic operation (single stack, no + potential ambiguity). */ + /* Standard mode. */ + while (yytrue) + { + yy_state_t yystate = yystack.yytops.yystates[0]->yylrState; + YY_DPRINTF ((stderr, "Entering state %d\n", yystate)); + if (yystate == YYFINAL) + goto yyacceptlab; + if (yyisDefaultedState (yystate)) + { + yyRuleNum yyrule = yydefaultAction (yystate); + if (yyrule == 0) + {]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + YYCHK1 (yyglrReduce (&yystack, 0, yyrule, yytrue]b4_user_args[)); + } + else + { + yysymbol_kind_t yytoken = ]b4_yygetToken_call;[ + const short* yyconflicts; + int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts); + if (*yyconflicts) + /* Enter nondeterministic mode. */ + break; + if (yyisShiftAction (yyaction)) + { + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + yychar = ]b4_symbol(empty, id)[; + yyposn += 1; + yyglrShift (&yystack, 0, yyaction, yyposn, &yylval]b4_locations_if([, &yylloc])[); + if (0 < yystack.yyerrState) + yystack.yyerrState -= 1; + } + else if (yyisErrorAction (yyaction)) + {]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + /* Issue an error message unless the scanner already + did. */ + if (yychar != ]b4_symbol(error, id)[) + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + else + YYCHK1 (yyglrReduce (&yystack, 0, -yyaction, yytrue]b4_user_args[)); + } + } + + /* Nondeterministic mode. */ + while (yytrue) + { + yysymbol_kind_t yytoken_to_shift; + YYPTRDIFF_T yys; + + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + yystackp->yytops.yylookaheadNeeds[yys] = yychar != ]b4_symbol(empty, id)[; + + /* yyprocessOneStack returns one of three things: + + - An error flag. If the caller is yyprocessOneStack, it + immediately returns as well. When the caller is finally + yyparse, it jumps to an error label via YYCHK1. + + - yyok, but yyprocessOneStack has invoked yymarkStackDeleted + (&yystack, yys), which sets the top state of yys to NULL. Thus, + yyparse's following invocation of yyremoveDeletes will remove + the stack. + + - yyok, when ready to shift a token. + + Except in the first case, yyparse will invoke yyremoveDeletes and + then shift the next token onto all remaining stacks. This + synchronization of the shift (that is, after all preceding + reductions on all stacks) helps prevent double destructor calls + on yylval in the event of memory exhaustion. */ + + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + YYCHK1 (yyprocessOneStack (&yystack, yys, yyposn]b4_lpure_args[)); + yyremoveDeletes (&yystack); + if (yystack.yytops.yysize == 0) + { + yyundeleteLastStack (&yystack); + if (yystack.yytops.yysize == 0) + yyFail (&yystack][]b4_lpure_args[, YY_("syntax error")); + YYCHK1 (yyresolveStack (&yystack]b4_user_args[)); + YY_DPRINTF ((stderr, "Returning to deterministic operation.\n"));]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + + /* If any yyglrShift call fails, it will fail after shifting. Thus, + a copy of yylval will already be on stack 0 in the event of a + failure in the following loop. Thus, yychar is set to ]b4_symbol(empty, id)[ + before the loop to make sure the user destructor for yylval isn't + called twice. */ + yytoken_to_shift = YYTRANSLATE (yychar); + yychar = ]b4_symbol(empty, id)[; + yyposn += 1; + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + { + yy_state_t yystate = yystack.yytops.yystates[yys]->yylrState; + const short* yyconflicts; + int yyaction = yygetLRActions (yystate, yytoken_to_shift, + &yyconflicts); + /* Note that yyconflicts were handled by yyprocessOneStack. */ + YY_DPRINTF ((stderr, "On stack %ld, ", YY_CAST (long, yys))); + YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, &yylval, &yylloc); + yyglrShift (&yystack, yys, yyaction, yyposn, + &yylval]b4_locations_if([, &yylloc])[); + YY_DPRINTF ((stderr, "Stack %ld now in state %d\n", + YY_CAST (long, yys), + yystack.yytops.yystates[yys]->yylrState)); + } + + if (yystack.yytops.yysize == 1) + { + YYCHK1 (yyresolveStack (&yystack]b4_user_args[)); + YY_DPRINTF ((stderr, "Returning to deterministic operation.\n")); + yycompressStack (&yystack); + break; + } + } + continue; + yyuser_error: + yyrecoverSyntaxError (&yystack]b4_user_args[); + yyposn = yystack.yytops.yystates[0]->yyposn; + } + + yyacceptlab: + yyresult = 0; + goto yyreturnlab; + + yybuglab: + YY_ASSERT (yyfalse); + goto yyabortlab; + + yyabortlab: + yyresult = 1; + goto yyreturnlab; + + yyexhaustedlab: + yyerror (]b4_lyyerror_args[YY_("memory exhausted")); + yyresult = 2; + goto yyreturnlab; + + yyreturnlab: + if (yychar != ]b4_symbol(empty, id)[) + yydestruct ("Cleanup: discarding lookahead", + YYTRANSLATE (yychar), &yylval]b4_locuser_args([&yylloc])[); + + /* If the stack is well-formed, pop the stack until it is empty, + destroying its entries as we go. But free the stack regardless + of whether it is well-formed. */ + if (yystack.yyitems) + { + yyGLRState** yystates = yystack.yytops.yystates; + if (yystates) + { + YYPTRDIFF_T yysize = yystack.yytops.yysize; + YYPTRDIFF_T yyk; + for (yyk = 0; yyk < yysize; yyk += 1) + if (yystates[yyk]) + { + while (yystates[yyk]) + { + yyGLRState *yys = yystates[yyk];]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yys->yyloc;]])[ + if (yys->yypred != YY_NULLPTR) + yydestroyGLRState ("Cleanup: popping", yys]b4_user_args[); + yystates[yyk] = yys->yypred; + yystack.yynextFree -= 1; + yystack.yyspaceLeft += 1; + } + break; + } + } + yyfreeGLRStack (&yystack); + } + + return yyresult; +} + +/* DEBUGGING ONLY */ +#if ]b4_api_PREFIX[DEBUG +/* Print *YYS and its predecessors. */ +static void +yy_yypstack (yyGLRState* yys) +{ + if (yys->yypred) + { + yy_yypstack (yys->yypred); + YY_FPRINTF ((stderr, " -> ")); + } + YY_FPRINTF ((stderr, "%d@@%ld", yys->yylrState, YY_CAST (long, yys->yyposn))); +} + +/* Print YYS (possibly NULL) and its predecessors. */ +static void +yypstates (yyGLRState* yys) +{ + if (yys == YY_NULLPTR) + YY_FPRINTF ((stderr, "")); + else + yy_yypstack (yys); + YY_FPRINTF ((stderr, "\n")); +} + +/* Print the stack #YYK. */ +static void +yypstack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + yypstates (yystackp->yytops.yystates[yyk]); +} + +/* Print all the stacks. */ +static void +yypdumpstack (yyGLRStack* yystackp) +{ +#define YYINDEX(YYX) \ + YY_CAST (long, \ + ((YYX) \ + ? YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX)) - yystackp->yyitems \ + : -1)) + + yyGLRStackItem* yyp; + for (yyp = yystackp->yyitems; yyp < yystackp->yynextFree; yyp += 1) + { + YY_FPRINTF ((stderr, "%3ld. ", + YY_CAST (long, yyp - yystackp->yyitems))); + if (*YY_REINTERPRET_CAST (yybool *, yyp)) + { + YY_ASSERT (yyp->yystate.yyisState); + YY_ASSERT (yyp->yyoption.yyisState); + YY_FPRINTF ((stderr, "Res: %d, LR State: %d, posn: %ld, pred: %ld", + yyp->yystate.yyresolved, yyp->yystate.yylrState, + YY_CAST (long, yyp->yystate.yyposn), + YYINDEX (yyp->yystate.yypred))); + if (! yyp->yystate.yyresolved) + YY_FPRINTF ((stderr, ", firstVal: %ld", + YYINDEX (yyp->yystate.yysemantics.yyfirstVal))); + } + else + { + YY_ASSERT (!yyp->yystate.yyisState); + YY_ASSERT (!yyp->yyoption.yyisState); + YY_FPRINTF ((stderr, "Option. rule: %d, state: %ld, next: %ld", + yyp->yyoption.yyrule - 1, + YYINDEX (yyp->yyoption.yystate), + YYINDEX (yyp->yyoption.yynext))); + } + YY_FPRINTF ((stderr, "\n")); + } + + YY_FPRINTF ((stderr, "Tops:")); + { + YYPTRDIFF_T yyi; + for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) + YY_FPRINTF ((stderr, "%ld: %ld; ", YY_CAST (long, yyi), + YYINDEX (yystackp->yytops.yystates[yyi]))); + YY_FPRINTF ((stderr, "\n")); + } +#undef YYINDEX +} +#endif + +#undef yylval +#undef yychar +#undef yynerrs]b4_locations_if([ +#undef yylloc]) + +m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define yyparse ]b4_prefix[parse +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char +#define yydebug ]b4_prefix[debug +#define yynerrs ]b4_prefix[nerrs]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])])[ + +]b4_glr_cc_if([b4_glr_cc_pre_epilogue +b4_glr_cc_cleanup])[ +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/MinSizeRel/data/skeletons/glr.cc b/bison/MinSizeRel/data/skeletons/glr.cc new file mode 100644 index 0000000..7181402 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/glr.cc @@ -0,0 +1,397 @@ +# C++ GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# This skeleton produces a C++ class that encapsulates a C glr parser. +# This is in order to reduce the maintenance burden. The glr.c +# skeleton is clean and pure enough so that there are no real +# problems. The C++ interface is the same as that of lalr1.cc. In +# fact, glr.c can replace yacc.c without the user noticing any +# difference, and similarly for glr.cc replacing lalr1.cc. +# +# The passing of parse-params +# +# The additional arguments are stored as members of the parser +# object, yyparser. The C routines need to carry yyparser +# throughout the C parser; that's easy: make yyparser an +# additional parse-param. But because the C++ skeleton needs to +# know the "real" original parse-param, we save them +# (b4_parse_param_orig). Note that b4_parse_param is overquoted +# (and c.m4 strips one level of quotes). This is a PITA, and +# explains why there are so many levels of quotes. +# +# The locations +# +# We use location.cc just like lalr1.cc, but because glr.c stores +# the locations in a union, the position and location classes +# must not have a constructor. Therefore, contrary to lalr1.cc, we +# must not define "b4_location_constructors". As a consequence the +# user must initialize the first positions (in particular the +# filename member). + +# We require a pure interface. +m4_define([b4_pure_flag], [1]) + +m4_include(b4_skeletonsdir/[c++.m4]) +b4_bison_locations_if([m4_include(b4_skeletonsdir/[location.cc])]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +# Save the parse parameters. +m4_define([b4_parse_param_orig], m4_defn([b4_parse_param])) + +# b4_parse_param_wrap +# ------------------- +# New ones. +m4_ifset([b4_parse_param], +[m4_define([b4_parse_param_wrap], + [[b4_namespace_ref::b4_parser_class[& yyparser], [[yyparser]]],] +m4_defn([b4_parse_param]))], +[m4_define([b4_parse_param_wrap], + [[b4_namespace_ref::b4_parser_class[& yyparser], [[yyparser]]]]) +]) + + +# b4_yy_symbol_print_define +# ------------------------- +# Bypass the default implementation to generate the "yy_symbol_print" +# and "yy_symbol_value_print" functions. +m4_define([b4_yy_symbol_print_define], +[[/*--------------------. +| Print this symbol. | +`--------------------*/ + +static void +yy_symbol_print (FILE *, ]b4_namespace_ref::b4_parser_class[::symbol_kind_type yytoken, + const ]b4_namespace_ref::b4_parser_class[::value_type *yyvaluep]b4_locations_if([[, + const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp]])[]b4_user_formals[) +{ +]b4_parse_param_use[]dnl +[ yyparser.yy_symbol_print_ (yytoken, yyvaluep]b4_locations_if([, yylocationp])[); +} +]])[ + +# Hijack the initial action to initialize the locations. +]b4_bison_locations_if([m4_define([b4_initial_action], +[yylloc.initialize ();]m4_ifdef([b4_initial_action], [ +m4_defn([b4_initial_action])]))])[ + +# Hijack the post prologue to declare yyerror. +]m4_append([b4_post_prologue], +[b4_syncline([@oline@], [@ofile@])dnl +[static void +yyerror (]b4_locations_if([[const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp, + ]])[]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param), + ])[const char* msg);]])[ + +# Inserted before the epilogue to define implementations (yyerror, parser member +# functions etc.). +]m4_define([b4_glr_cc_pre_epilogue], +[b4_syncline([@oline@], [@ofile@])dnl +[ +/*------------------. +| Report an error. | +`------------------*/ + +static void +yyerror (]b4_locations_if([[const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp, + ]])[]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param), + ])[const char* msg) +{ +]b4_parse_param_use[]dnl +[ yyparser.error (]b4_locations_if([[*yylocationp, ]])[msg); +} + + +]b4_namespace_open[ +]dnl In this section, the parse params are the original parse_params. +m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_orig]))dnl +[ /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[)]m4_ifset([b4_parse_param], [ + :])[ +#if ]b4_api_PREFIX[DEBUG + ]m4_ifset([b4_parse_param], [ ], [ :])[yycdebug_ (&std::cerr)]m4_ifset([b4_parse_param], [,])[ +#endif]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + return ::yy_parse_impl (*this]b4_user_args[); + } + +#if ]b4_api_PREFIX[DEBUG + /*--------------------. + | Print this symbol. | + `--------------------*/ + + void + ]b4_parser_class[::yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const + {]b4_locations_if([[ + YY_USE (yylocationp);]])[ + YY_USE (yyvaluep); + std::ostream& yyo = debug_stream (); + std::ostream& yyoutput = yyo; + YY_USE (yyoutput); + ]b4_symbol_actions([printer])[ + } + + + void + ]b4_parser_class[::yy_symbol_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const + { + *yycdebug_ << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << yysymbol_name (yykind) << " ("]b4_locations_if([[ + << *yylocationp << ": "]])[; + yy_symbol_value_print_ (yykind, yyvaluep]b4_locations_if([[, yylocationp]])[); + *yycdebug_ << ')'; + } + + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + // Actually, it is yydebug which is really used. + yydebug = l; + } + +#endif +]m4_popdef([b4_parse_param])dnl +b4_namespace_close[]dnl +]) + + +m4_define([b4_define_symbol_kind], +[m4_format([#define %-15s %s], + b4_symbol($][1, kind_base), + b4_namespace_ref[::]b4_parser_class[::symbol_kind::]b4_symbol($1, kind_base)) +]) + +# b4_glr_cc_setup +# --------------- +# Setup redirections for glr.c: Map the names used in c.m4 to the ones used +# in c++.m4. +m4_define([b4_glr_cc_setup], +[[]b4_attribute_define[ +]b4_null_define[ + +// This skeleton is based on C, yet compiles it as C++. +// So expect warnings about C style casts. +#if defined __clang__ && 306 <= __clang_major__ * 100 + __clang_minor__ +# pragma clang diagnostic ignored "-Wold-style-cast" +#elif defined __GNUC__ && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# pragma GCC diagnostic ignored "-Wold-style-cast" +#endif + +// On MacOS, PTRDIFF_MAX is defined as long long, which Clang's +// -pedantic reports as being a C++11 extension. +#if defined __APPLE__ && YY_CPLUSPLUS < 201103L \ + && defined __clang__ && 4 <= __clang_major__ +# pragma clang diagnostic ignored "-Wc++11-long-long" +#endif + +#undef ]b4_symbol(empty, [id])[ +#define ]b4_symbol(empty, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(empty, [id])[ +#undef ]b4_symbol(eof, [id])[ +#define ]b4_symbol(eof, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(eof, [id])[ +#undef ]b4_symbol(error, [id])[ +#define ]b4_symbol(error, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(error, [id])[ + +#ifndef ]b4_api_PREFIX[STYPE +# define ]b4_api_PREFIX[STYPE ]b4_namespace_ref[::]b4_parser_class[::value_type +#endif +#ifndef ]b4_api_PREFIX[LTYPE +# define ]b4_api_PREFIX[LTYPE ]b4_namespace_ref[::]b4_parser_class[::location_type +#endif + +typedef ]b4_namespace_ref[::]b4_parser_class[::symbol_kind_type yysymbol_kind_t; + +// Expose C++ symbol kinds to C. +]b4_define_symbol_kind(-2)dnl +b4_symbol_foreach([b4_define_symbol_kind])])[ +]]) + + +m4_define([b4_undef_symbol_kind], +[[#undef ]b4_symbol($1, kind_base)[ +]]) + + +# b4_glr_cc_cleanup +# ----------------- +# Remove redirections for glr.c. +m4_define([b4_glr_cc_cleanup], +[[#undef ]b4_symbol(empty, [id])[ +#undef ]b4_symbol(eof, [id])[ +#undef ]b4_symbol(error, [id])[ + +]b4_undef_symbol_kind(-2)dnl +b4_symbol_foreach([b4_undef_symbol_kind])dnl +]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_orig]))dnl +b4_percent_code_get([[requires]])[ +#include +#include +#include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ + + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + virtual ~]b4_parser_class[ (); + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + virtual int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + typedef int debug_level_type; + /// The current debugging level. + debug_level_type debug_level () const; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + virtual void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + +# if ]b4_api_PREFIX[DEBUG + public: + /// \brief Report a symbol value on the debug stream. + /// \param yykind The symbol kind. + /// \param yyvaluep Its semantic value.]b4_locations_if([[ + /// \param yylocationp Its location.]])[ + virtual void yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const; + /// \brief Report a symbol on the debug stream. + /// \param yykind The symbol kind. + /// \param yyvaluep Its semantic value.]b4_locations_if([[ + /// \param yylocationp Its location.]])[ + virtual void yy_symbol_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const; + private: + /// Debug stream. + std::ostream* yycdebug_; +#endif + +]b4_parse_param_vars[ + }; + +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]m4_popdef([b4_parse_param])dnl +])[ + +]b4_header_if( +[b4_output_begin([b4_spec_header_file]) +b4_copyright([Skeleton interface for Bison GLR parsers in C++], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Akim Demaille. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end]) + +# Let glr.c (and b4_shared_declarations) believe that the user +# arguments include the parser itself. +m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_wrap])) +m4_include(b4_skeletonsdir/[glr.c]) +m4_popdef([b4_parse_param]) diff --git a/bison/MinSizeRel/data/skeletons/glr2.cc b/bison/MinSizeRel/data/skeletons/glr2.cc new file mode 100644 index 0000000..757d68d --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/glr2.cc @@ -0,0 +1,3533 @@ +# C++ GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c++.m4]) + +# api.value.type=variant is valid. +m4_define([b4_value_type_setup_variant]) + +# b4_tname_if(TNAME-NEEDED, TNAME-NOT-NEEDED) +# ------------------------------------------- +m4_define([b4_tname_if], +[m4_case(b4_percent_define_get([[parse.error]]), + [verbose], [$1], + [b4_token_table_if([$1], + [$2])])]) + +b4_bison_locations_if([ + m4_define([b4_location_constructors]) + m4_include(b4_skeletonsdir/[location.cc])]) +b4_variant_if([m4_include(b4_skeletonsdir/[variant.hh])]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +]m4_define([b4_define_symbol_kind], +[m4_format([#define %-15s %s], + b4_symbol($][1, kind_base), + b4_namespace_ref[::]b4_parser_class[::symbol_kind::]b4_symbol($1, kind_base)) +]) + + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "yy" whose contents is CONTENT. Does not use "static", +# should be in unnamed namespace. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [ b4_comment([$3])])dnl + const b4_int_type_for([$2]) yy$1[[]] = + { + $2 + };dnl +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + + + +## ------------ ## +## Interfaces. ## +## ------------ ## + +# b4_user_formals +# --------------- +# The possible parse-params formal arguments preceded by a comma. +# +# This is not shared with yacc.c in c.m4 because GLR relies on ISO C +# formal argument declarations. +m4_define([b4_user_formals], +[m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])]) + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[symbol_kind::b4_symbol_kind_base($@)]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([(*yyvalp)], [$1], [$2])]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[(static_cast(yyvsp))@{YYFILL (b4_subtract([$2], [$1]))@}.getState()]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# Expansion of $$ or $$, for symbol SYMBOL-NUM. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).value ()], [$3], [$4])]) + + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(*yylocp)]) + + +# b4_rhs_location(RULE-LENGTH, NUM) +# --------------------------------- +# Expansion of @NUM, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(b4_rhs_data([$1], [$2]).yyloc)]) + + +# b4_symbol_action(SYMBOL-NUM, KIND) +# ---------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +# +# Currently we need two different b4_symbol_action: once for the +# self-contained symbols, and another time for yy_destroy_ and +# yy_symbol_value_print_, which don't use genuine symbols yet. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[m4_pushdef([b4_symbol_value], m4_defn([b4_symbol_value_template]))[]dnl +b4_dollar_pushdef([yysym.value], + [$1], + [], + [yysym.location])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +m4_popdef([b4_symbol_value])[]dnl +b4_dollar_popdef[]dnl +])]) + + +# b4_symbol_action_for_yyval(SYMBOL-NUM, KIND) +# -------------------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +m4_define([b4_symbol_action_for_yyval], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([yyval], + [$1], + [], + [yyloc])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_call_merger(MERGER-NUM, MERGER-NAME, SYMBOL-SUM) +# --------------------------------------------------- +m4_define([b4_call_merger], +[b4_case([$1], + [ b4_symbol_if([$3], [has_type], + [b4_variant_if([yy0.as< b4_symbol($3, type) > () = $2 (yy0.as< b4_symbol($3, type) >(), yy1.as< b4_symbol($3, type) >());], + [yy0.b4_symbol($3, slot) = $2 (yy0, yy1);])], + [yy0 = $2 (yy0, yy1);])])]) + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_token_ctor_if( +[b4_function_call([yylex], + [symbol_type], m4_ifdef([b4_lex_param], b4_lex_param))], +[b4_function_call([yylex], [int], + [[value_type *], [&this->yyla.value]][]dnl +b4_locations_if([, [[location_type *], [&this->yyla.location]]])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param))])]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[b4_percent_code_get([[requires]])[ +#include +#include // ptrdiff_t +#include // memcpy +#include +#include +#include +#include +#include +#include +#include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ +]b4_symbol_type_define[ + + // FIXME: should be private eventually. + class glr_stack; + class glr_state; + + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + ~]b4_parser_class[ (); + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + using debug_level_type = int; + /// The current debugging level. + debug_level_type debug_level () const; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol);]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol); +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static std::string symbol_name (symbol_kind_type yysymbol);]])[ + +]b4_token_constructor_define[ +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + class context + { + public: + context (glr_stack& yystack, const symbol_type& yyla); + const symbol_type& lookahead () const YY_NOEXCEPT { return yyla_; } + symbol_kind_type token () const YY_NOEXCEPT { return yyla_.kind (); }]b4_locations_if([[ + const location_type& location () const YY_NOEXCEPT { return yyla_.location; } +]])[ + /// Put in YYARG at most YYARGN of the expected tokens, and return the + /// number of tokens stored in YYARG. If YYARG is null, return the + /// number of expected tokens (guaranteed to be less than YYNTOKENS). + int expected_tokens (symbol_kind_type yyarg[], int yyargn) const; + + private: + glr_stack& yystack_; + const symbol_type& yyla_; + }; +]])[ +# if ]b4_api_PREFIX[DEBUG + public: + /// \brief Report a symbol value on the debug stream. + /// \param yykind The symbol kind. + /// \param yyval Its semantic value.]b4_locations_if([[ + /// \param yyloc Its location.]])[ + void yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const; + /// \brief Report a symbol on the debug stream. + /// \param yykind The symbol kind. + /// \param yyval Its semantic value.]b4_locations_if([[ + /// \param yyloc Its location.]])[ + void yy_symbol_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const; + private: + /// Debug stream. + std::ostream* yycdebug_; +#endif + +]b4_parse_error_bmatch( +[custom], [[ + private: + /// Report a syntax error + /// \param yyctx the context in which the error occurred. + void report_syntax_error (const context& yyctx) const;]], +[detailed\|verbose], [[ + private: + /// The arguments of the error message. + int yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const; + + /// Generate an error message. + /// \param yyctx the context in which the error occurred. + virtual std::string yysyntax_error_ (const context& yyctx) const;]])[ + + /// Convert a scanner token kind \a t to a symbol kind. + /// In theory \a t should be a token_kind_type, but character literals + /// are valid, yet not members of the token_kind_type enum. + static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT; + +]b4_parse_error_bmatch( +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// For a symbol, its name in clear. + static const char* const yytname_[]; +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// Convert the symbol name \a n to a form suitable for a diagnostic. + static std::string yytnamerr_ (const char *yystr); + + /// For a symbol, its name in clear. + static const char* const yytname_[]; +]])[ + + /// \brief Reclaim the memory associated to a symbol. + /// \param yymsg Why this token is reclaimed. + /// If null, print nothing. + /// \param yykind The symbol kind. + void yy_destroy_ (const char* yymsg, symbol_kind_type yykind, + value_type& yyval]b4_locations_if([[, + location_type& yyloc]])[); + +]b4_parse_param_vars[ + // Needs access to yy_destroy_, report_syntax_error, etc. + friend glr_stack; + }; + +]b4_token_ctor_if([b4_yytranslate_define([$1])[ +]b4_public_types_define([$1])])[ +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]])[ + + +## -------------- ## +## Output files. ## +## -------------- ## + + +# ------------- # +# Header file. # +# ------------- # + +]b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Skeleton interface for Bison GLR parsers in C++], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Valentin Tolmer. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations([hh])[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end])[ + + +# --------------------- # +# Implementation file. # +# --------------------- # + +]b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Valentin Tolmer. + +]b4_disclaimer[ +]b4_identification[ + +]b4_percent_code_get([[top]])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define yyparse ]b4_prefix[parse +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug]])[ + +]b4_user_pre_prologue[ + +]b4_null_define[ + +]b4_header_if([[#include "@basename(]b4_spec_header_file[@)"]], + [b4_shared_declarations([cc])])[ + +namespace +{ + /* Default (constant) value used for initialization for null + right-hand sides. Unlike the standard yacc.c template, here we set + the default value of $$ to a zeroed-out value. Since the default + value is undefined, this behavior is technically correct. */ + ]b4_namespace_ref[::]b4_parser_class[::value_type yyval_default; +} + +]b4_user_post_prologue[ +]b4_percent_code_get[ + +#include +#include + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +#ifndef YYFREE +# define YYFREE free +#endif +#ifndef YYMALLOC +# define YYMALLOC malloc +#endif + +#ifndef YYSETJMP +# include +# define YYJMP_BUF jmp_buf +# define YYSETJMP(Env) setjmp (Env) +/* Pacify Clang and ICC. */ +# define YYLONGJMP(Env, Val) \ + do { \ + longjmp (Env, Val); \ + YYASSERT (0); \ + } while (false) +#endif + +]b4_attribute_define([noreturn])[ + +#if defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_NULL_DEREFERENCE_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wnull-dereference\"") +# define YY_IGNORE_NULL_DEREFERENCE_END \ + _Pragma ("GCC diagnostic pop") +#else +# define YY_IGNORE_NULL_DEREFERENCE_BEGIN +# define YY_IGNORE_NULL_DEREFERENCE_END +#endif + +]b4_null_define[ +]b4_cast_define[ + +// FIXME: Use the same conventions as lalr1.cc. +]b4_parse_assert_if[ +#ifndef YYASSERT +# define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0))) +#endif + +#ifdef YYDEBUG +# define YYDASSERT(Condition) YYASSERT(Condition) +#else +# define YYDASSERT(Condition) +#endif + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ +/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */ +#define YYMAXRHS ]b4_r2_max[ +/* YYMAXLEFT -- Maximum number of symbols to the left of a handle + accessed by $0, $-1, etc., in any rule. */ +#define YYMAXLEFT ]b4_max_left_semantic_context[ + +namespace +{ +#if ]b4_api_PREFIX[DEBUG + /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ + const ]b4_int_type_for([b4_rline])[ yyrline[] = + { + ]b4_rline[ + }; +#endif + +#define YYPACT_NINF ]b4_pact_ninf[ +#define YYTABLE_NINF ]b4_table_ninf[ + +]b4_parser_tables_define[ + + /* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */ + const ]b4_int_type_for([b4_dprec])[ yydprec[] = + { + ]b4_dprec[ + }; + + /* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */ + const ]b4_int_type_for([b4_merger])[ yymerger[] = + { + ]b4_merger[ + }; + + /* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as + in the case of predicates. */ + const bool yyimmediate[] = + { + ]b4_immediate[ + }; + + /* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of + list of conflicting reductions corresponding to action entry for + state STATE-NUM in yytable. 0 means no conflicts. The list in + yyconfl is terminated by a rule number of 0. */ + const ]b4_int_type_for([b4_conflict_list_heads])[ yyconflp[] = + { + ]b4_conflict_list_heads[ + }; + + /* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by + 0, pointed into by YYCONFLP. */ + ]dnl Do not use b4_int_type_for here, since there are places where + dnl pointers onto yyconfl are taken, whose type is "short*". + dnl We probably ought to introduce a type for confl. + [const short yyconfl[] = + { + ]b4_conflicting_rules[ + }; +} // namespace + + +/* Error token number */ +#define YYTERROR 1 + +]b4_locations_if([[ +]b4_yylloc_default_define[ +# define YYRHSLOC(Rhs, K) ((Rhs)[K].getState().yyloc) +]])[ + +enum YYRESULTTAG { yyok, yyaccept, yyabort, yyerr }; + +#define YYCHK(YYE) \ + do { \ + YYRESULTTAG yychk_flag = YYE; \ + if (yychk_flag != yyok) \ + return yychk_flag; \ + } while (false) + +#if ]b4_api_PREFIX[DEBUG + +#define YYCDEBUG if (!yydebug) {} else std::cerr + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ + do { \ + if (yydebug) \ + { \ + std::cerr << Title << ' '; \ + yyparser.yy_symbol_print_ (Kind, Value]b4_locations_if([, Location])[); \ + std::cerr << '\n'; \ + } \ + } while (false) + +# define YY_REDUCE_PRINT(Args) \ + do { \ + if (yydebug) \ + yystateStack.yy_reduce_print Args; \ + } while (false) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; + +namespace +{ + using glr_stack = ]b4_namespace_ref[::]b4_parser_class[::glr_stack; + using glr_state = ]b4_namespace_ref[::]b4_parser_class[::glr_state; + + void yypstack (const glr_stack& yystack, size_t yyk) + YY_ATTRIBUTE_UNUSED; + void yypdumpstack (const glr_stack& yystack) + YY_ATTRIBUTE_UNUSED; +} + +#else /* !]b4_api_PREFIX[DEBUG */ + +# define YYCDEBUG if (true) {} else std::cerr +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) {} +# define YY_REDUCE_PRINT(Args) {} + +#endif /* !]b4_api_PREFIX[DEBUG */ + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif + +/* Minimum number of free items on the stack allowed after an + allocation. This is to allow allocation and initialization + to be completed by functions that call yyexpandGLRStack before the + stack is expanded, thus insuring that all necessary pointers get + properly redirected to new data. */ +#define YYHEADROOM 2 + +#ifndef YYSTACKEXPANDABLE +# define YYSTACKEXPANDABLE 1 +#endif + +namespace +{ + template + class strong_index_alias + { + public: + static strong_index_alias create (std::ptrdiff_t value) + { + strong_index_alias result; + result.value_ = value; + return result; + } + + std::ptrdiff_t const& get () const { return value_; } + + size_t uget () const { return static_cast (value_); } + + strong_index_alias operator+ (std::ptrdiff_t other) const + { + return strong_index_alias (get () + other); + } + + void operator+= (std::ptrdiff_t other) + { + value_ += other; + } + + strong_index_alias operator- (std::ptrdiff_t other) + { + return strong_index_alias (get () - other); + } + + void operator-= (std::ptrdiff_t other) + { + value_ -= other; + } + + size_t operator- (strong_index_alias other) + { + return strong_index_alias (get () - other.get ()); + } + + strong_index_alias& operator++ () + { + ++value_; + return *this; + } + + bool isValid () const + { + return value_ != INVALID_INDEX; + } + + void setInvalid() + { + value_ = INVALID_INDEX; + } + + bool operator== (strong_index_alias other) + { + return get () == other.get (); + } + + bool operator!= (strong_index_alias other) + { + return get () != other.get (); + } + + bool operator< (strong_index_alias other) + { + return get () < other.get (); + } + + private: + static const std::ptrdiff_t INVALID_INDEX; + + // WARNING: 0-initialized. + std::ptrdiff_t value_; + }; // class strong_index_alias + + template + const std::ptrdiff_t strong_index_alias::INVALID_INDEX = + std::numeric_limits::max (); + + using state_set_index = strong_index_alias; + + state_set_index create_state_set_index (std::ptrdiff_t value) + { + return state_set_index::create (value); + } + + /** State numbers, as in LALR(1) machine */ + using state_num = int; + + /** Rule numbers, as in LALR(1) machine */ + using rule_num = int; + + using parser_type = ]b4_namespace_ref[::]b4_parser_class[; + using glr_state = parser_type::glr_state; + using symbol_kind = parser_type::symbol_kind; + using symbol_kind_type = parser_type::symbol_kind_type; + using symbol_type = parser_type::symbol_type; + using value_type = parser_type::value_type;]b4_locations_if([[ + using location_type = parser_type::location_type;]])[ + + // Forward declarations. + class glr_stack_item; + class semantic_option; +} // namespace + +namespace +{ + /** Accessing symbol of state YYSTATE. */ + inline symbol_kind_type + yy_accessing_symbol (state_num yystate) + { + return YY_CAST (symbol_kind_type, yystos[yystate]); + } + + /** Left-hand-side symbol for rule #YYRULE. */ + inline symbol_kind_type + yylhsNonterm (rule_num yyrule) + { + return static_cast(yyr1[yyrule]); + } + + /** Number of symbols composing the right hand side of rule #RULE. */ + inline int + yyrhsLength (rule_num yyrule) + { + return yyr2[yyrule]; + } +} + +namespace ]b4_namespace_ref[ +{ + class ]b4_parser_class[::glr_state + { + public: + glr_state () + : yyresolved (false) + , yylrState (0) + , yyposn (0) + , yypred (0) + , yyfirstVal (0)]b4_locations_if([[ + , yyloc ()]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + /// Build with a semantic value. + glr_state (state_num lrState, size_t posn, const value_type& val]b4_locations_if([[, const location_type& loc]])[) + : yyresolved (true) + , yylrState (lrState) + , yyposn (posn) + , yypred (0) + , yyval (]b4_variant_if([], [[val]])[)]b4_locations_if([[ + , yyloc (loc)]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_variant_if([[ + ]b4_symbol_variant([yy_accessing_symbol (lrState)], + [yyval], [copy], [val])])[} + + /// Build with a semantic option. + glr_state (state_num lrState, size_t posn) + : yyresolved (false) + , yylrState (lrState) + , yyposn (posn) + , yypred (0) + , yyfirstVal (0)]b4_locations_if([[ + , yyloc ()]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + glr_state (const glr_state& other) + : yyresolved (other.yyresolved) + , yylrState (other.yylrState) + , yyposn (other.yyposn) + , yypred (0)]b4_locations_if([[ + , yyloc (other.yyloc)]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + { + setPred (other.pred ()); + if (other.yyresolved)]b4_variant_if([[ + { + new (&yyval) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (other.yylrState)], + [yyval], [copy], [other.value ()])[ + }]], [[ + new (&yyval) value_type (other.value ());]])[ + else + { + yyfirstVal = 0; + setFirstVal (other.firstVal ()); + }]b4_parse_assert_if([[ + check_();]])[ + } + + ~glr_state () + {]b4_parse_assert_if([[ + check_ ();]])[ + if (yyresolved) + {]b4_variant_if([[ + symbol_kind_type yykind = yy_accessing_symbol (yylrState); + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yykind]], [[yyval]], [[template destroy]])])[ + yyval.~value_type (); + }]b4_parse_assert_if([[ + magic_ = 0;]])[ + } + + glr_state& operator= (const glr_state& other) + {]b4_parse_assert_if([[ + check_ (); + other.check_ ();]])[ + if (!yyresolved && other.yyresolved) + new (&yyval) value_type; + yyresolved = other.yyresolved; + yylrState = other.yylrState; + yyposn = other.yyposn; + setPred (other.pred ()); + if (other.yyresolved)]b4_variant_if([[ + ]b4_symbol_variant([yy_accessing_symbol (other.yylrState)], + [yyval], [copy], [other.value ()])], [[ + value () = other.value ();]])[ + else + setFirstVal (other.firstVal ());]b4_locations_if([[ + yyloc = other.yyloc;]])[ + return *this; + } + + /** Type tag for the semantic value. If true, yyval applies, otherwise + * yyfirstVal applies. */ + bool yyresolved; + /** Number of corresponding LALR(1) machine state. */ + state_num yylrState; + /** Source position of the last token produced by my symbol */ + size_t yyposn; + + /// Only call pred() and setPred() on objects in yyitems, not temporaries. + glr_state* pred (); + const glr_state* pred () const; + void setPred (const glr_state* state); + + /// Only call firstVal() and setFirstVal() on objects in yyitems, not + /// temporaries. + semantic_option* firstVal (); + const semantic_option* firstVal () const; + void setFirstVal (const semantic_option* option); + + value_type& value () + {]b4_parse_assert_if([[ + check_ ();]])[ + return yyval; + } + + const value_type& value () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return yyval; + } + + void + destroy (char const *yymsg, ]b4_namespace_ref[::]b4_parser_class[& yyparser); + + /* DEBUGGING ONLY */ + #if ]b4_api_PREFIX[DEBUG + void yy_yypstack () const + {]b4_parse_assert_if([[ + check_ ();]])[ + if (pred () != YY_NULLPTR) + { + pred ()->yy_yypstack (); + std::cerr << " -> "; + } + std::cerr << yylrState << "@@" << yyposn; + } + #endif + + std::ptrdiff_t indexIn (const glr_stack_item* array) const YY_ATTRIBUTE_UNUSED; + + glr_stack_item* asItem () + {]b4_parse_assert_if([[ + check_ ();]])[ + return asItem(this); + } + + const glr_stack_item* asItem () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return asItem (this); + } + + private: + template + static const glr_stack_item* asItem (const T* state) + { + return reinterpret_cast(state); + } + template + static glr_stack_item* asItem (T* state) + { + return reinterpret_cast (state); + } + static const char *as_pointer_ (const glr_state *state) + { + return reinterpret_cast (state); + } + static char *as_pointer_ (glr_state *state) + { + return reinterpret_cast (state); + } + /** Preceding state in this stack */ + std::ptrdiff_t yypred; + union { + /** First in a chain of alternative reductions producing the + * nonterminal corresponding to this state, threaded through + * yyfirstVal. Value "0" means empty. */ + std::ptrdiff_t yyfirstVal; + /** Semantic value for this state. */ + value_type yyval; + };]b4_locations_if([[ + // FIXME: Why public? + public: + /** Source location for this state. */ + location_type yyloc;]])[ + +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YY_IGNORE_NULL_DEREFERENCE_BEGIN + YYASSERT (this->magic_ == MAGIC); + YY_IGNORE_NULL_DEREFERENCE_END + } + + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 713705 }; + unsigned int magic_;]])[ + }; // class ]b4_parser_class[::glr_state +} // namespace ]b4_namespace_ref[ + + +namespace +{ + /** A stack of GLRState representing the different heads during + * nondeterministic evaluation. */ + class glr_state_set + { + public: + /** Initialize YYSET to a singleton set containing an empty stack. */ + glr_state_set () + : yylastDeleted (YY_NULLPTR) + { + yystates.push_back (YY_NULLPTR); + yylookaheadNeeds.push_back (false); + } + + // Behave like a vector of states. + glr_state*& operator[] (state_set_index index) + { + return yystates[index.uget()]; + } + + glr_state* operator[] (state_set_index index) const + { + return yystates[index.uget()]; + } + + size_t size () const + { + return yystates.size (); + } + + std::vector::iterator begin () + { + return yystates.begin (); + } + + std::vector::iterator end () + { + return yystates.end (); + } + + bool lookaheadNeeds (state_set_index index) const + { + return yylookaheadNeeds[index.uget ()]; + } + + bool setLookaheadNeeds (state_set_index index, bool value) + { + return yylookaheadNeeds[index.uget ()] = value; + } + + /** Invalidate stack #YYK. */ + void + yymarkStackDeleted (state_set_index yyk) + { + size_t k = yyk.uget (); + if (yystates[k] != YY_NULLPTR) + yylastDeleted = yystates[k]; + yystates[k] = YY_NULLPTR; + } + + /** Undelete the last stack in *this that was marked as deleted. Can + only be done once after a deletion, and only when all other stacks have + been deleted. */ + void + yyundeleteLastStack () + { + if (yylastDeleted == YY_NULLPTR || !yystates.empty ()) + return; + yystates.push_back (yylastDeleted); + YYCDEBUG << "Restoring last deleted stack as stack #0.\n"; + clearLastDeleted (); + } + + /** Remove the dead stacks (yystates[i] == YY_NULLPTR) and shift the later + * ones. */ + void + yyremoveDeletes () + { + size_t newsize = yystates.size (); + /* j is the number of live stacks we have seen. */ + for (size_t i = 0, j = 0; j < newsize; ++i) + { + if (yystates[i] == YY_NULLPTR) + { + if (i == j) + { + YYCDEBUG << "Removing dead stacks.\n"; + } + newsize -= 1; + } + else + { + yystates[j] = yystates[i]; + /* In the current implementation, it's unnecessary to copy + yylookaheadNeeds[i] since, after + yyremoveDeletes returns, the parser immediately either enters + deterministic operation or shifts a token. However, it doesn't + hurt, and the code might evolve to need it. */ + yylookaheadNeeds[j] = yylookaheadNeeds[i]; + if (j != i) + { + YYCDEBUG << "Rename stack " << i << " -> " << j << ".\n"; + } + j += 1; + } + } + yystates.resize (newsize); + yylookaheadNeeds.resize (newsize); + } + + + state_set_index + yysplitStack (state_set_index yyk) + { + const size_t k = yyk.uget (); + yystates.push_back (yystates[k]); + yylookaheadNeeds.push_back (yylookaheadNeeds[k]); + return create_state_set_index (static_cast (yystates.size () - 1)); + } + + void clearLastDeleted () + { + yylastDeleted = YY_NULLPTR; + } + + private: + + std::vector yystates; + /** During nondeterministic operation, yylookaheadNeeds tracks which + * stacks have actually needed the current lookahead. During deterministic + * operation, yylookaheadNeeds[0] is not maintained since it would merely + * duplicate !yyla.empty (). */ + std::vector yylookaheadNeeds; + + /** The last stack we invalidated. */ + glr_state* yylastDeleted; + }; // class glr_state_set +} // namespace + +namespace +{ + class semantic_option + { + public: + semantic_option () + : yyrule (0) + , yystate (0) + , yynext (0) + , yyla ()]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + semantic_option (rule_num rule) + : yyrule (rule) + , yystate (0) + , yynext (0) + , yyla ()]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + semantic_option (const semantic_option& that) + : yyrule (that.yyrule) + , yystate (that.yystate) + , yynext (that.yynext) + , yyla (that.yyla)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_parse_assert_if([[ + that.check_ ();]])[ + } + + // Needed for the assignment in yynewSemanticOption. + semantic_option& operator= (const semantic_option& that) + {]b4_parse_assert_if([[ + check_ (); + that.check_ ();]])[ + yyrule = that.yyrule; + yystate = that.yystate; + yynext = that.yynext; + yyla = that.yyla; + return *this; + } + + /// Only call state() and setState() on objects in yyitems, not temporaries. + glr_state* state(); + const glr_state* state() const; + void setState(const glr_state* s); + + const semantic_option* next () const YY_ATTRIBUTE_UNUSED; + semantic_option* next (); + void setNext (const semantic_option* s); + + std::ptrdiff_t indexIn (const glr_stack_item* array) const YY_ATTRIBUTE_UNUSED; + + /** True iff YYY0 and YYY1 represent identical options at the top level. + * That is, they represent the same rule applied to RHS symbols + * that produce the same terminal symbols. */ + bool + isIdenticalTo (const semantic_option& yyy1) const + {]b4_parse_assert_if([[ + check_ (); + yyy1.check_ ();]])[ + if (this->yyrule == yyy1.yyrule) + { + const glr_state *yys0, *yys1; + int yyn; + for (yys0 = this->state(), + yys1 = yyy1.state(), + yyn = yyrhsLength (this->yyrule); + yyn > 0; + yys0 = yys0->pred(), + yys1 = yys1->pred(), yyn -= 1) + if (yys0->yyposn != yys1->yyposn) + return false; + return true; + } + else + return false; + } + + /** Assuming identicalOptions (YYY0,YYY1), destructively merge the + * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */ + void + mergeWith (semantic_option& yyy1) + {]b4_parse_assert_if([[ + check_ (); + yyy1.check_ ();]])[ + glr_state *yys0 = this->state (); + glr_state *yys1 = yyy1.state (); + for (int yyn = yyrhsLength (this->yyrule); + yyn > 0; + yyn -= 1, yys0 = yys0->pred (), yys1 = yys1->pred ()) + { + if (yys0 == yys1) + break; + else if (yys0->yyresolved) + { + yys1->yyresolved = true;]b4_variant_if([[ + YYASSERT (yys1->yylrState == yys0->yylrState); + ]b4_symbol_variant([yy_accessing_symbol (yys0->yylrState)], + [yys1->value ()], [copy], [yys0->value ()])], [[ + yys1->value () = yys0->value ();]])[ + } + else if (yys1->yyresolved) + { + yys0->yyresolved = true;]b4_variant_if([[ + YYASSERT (yys0->yylrState == yys1->yylrState); + ]b4_symbol_variant([yy_accessing_symbol (yys1->yylrState)], + [yys0->value ()], [copy], [yys1->value ()])], [[ + yys0->value () = yys1->value ();]])[ + } + else + { + semantic_option* yyz0prev = YY_NULLPTR; + semantic_option* yyz0 = yys0->firstVal(); + semantic_option* yyz1 = yys1->firstVal(); + while (true) + { + if (yyz1 == yyz0 || yyz1 == YY_NULLPTR) + break; + else if (yyz0 == YY_NULLPTR) + { + if (yyz0prev != YY_NULLPTR) + yyz0prev->setNext (yyz1); + else + yys0->setFirstVal (yyz1); + break; + } + else if (yyz0 < yyz1) + { + semantic_option* yyz = yyz0; + if (yyz0prev != YY_NULLPTR) + yyz0prev->setNext(yyz1); + else + yys0->setFirstVal(yyz1); + yyz1 = yyz1->next(); + yyz0->setNext(yyz); + } + yyz0prev = yyz0; + yyz0 = yyz0->next(); + } + yys1->setFirstVal(yys0->firstVal()); + } + } + } + +#if ]b4_api_PREFIX[DEBUG + void yyreportTree (size_t yyindent = 2) const + {]b4_parse_assert_if([[ + check_ ();]])[ + int yynrhs = yyrhsLength (this->yyrule); + const glr_state* yystates[1 + YYMAXRHS]; + glr_state yyleftmost_state; + + { + const glr_state* yys = this->state(); + for (int yyi = yynrhs; 0 < yyi; yyi -= 1) + { + yystates[yyi] = yys; + yys = yys->pred(); + } + if (yys == YY_NULLPTR) + { + yyleftmost_state.yyposn = 0; + yystates[0] = &yyleftmost_state; + } + else + yystates[0] = yys; + } + + std::string yylhs = ]b4_namespace_ref[::]b4_parser_class[::symbol_name (yylhsNonterm (this->yyrule)); + YYASSERT(this->state()); + if (this->state()->yyposn < yystates[0]->yyposn + 1) + std::cerr << std::string(yyindent, ' ') << yylhs << " -> yyrule - 1 << ", empty>\n"; + else + std::cerr << std::string(yyindent, ' ') << yylhs << " -> yyrule - 1 << ", tokens " + << yystates[0]->yyposn + 1 << " .. " + << this->state()->yyposn << ">\n"; + for (int yyi = 1; yyi <= yynrhs; yyi += 1) + { + if (yystates[yyi]->yyresolved) + { + std::string yysym = ]b4_namespace_ref[::]b4_parser_class[::symbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)); + if (yystates[yyi-1]->yyposn+1 > yystates[yyi]->yyposn) + std::cerr << std::string(yyindent + 2, ' ') << yysym + << " \n"; + else + std::cerr << std::string(yyindent + 2, ' ') << yysym + << " yyposn + 1 + << " .. " << yystates[yyi]->yyposn << ">\n"; + } + else + yystates[yyi]->firstVal ()->yyreportTree (yyindent+2); + } + } +#endif + + /** Rule number for this reduction */ + rule_num yyrule; + + private: + template + static const glr_stack_item* asItem(const T* state) + { + return reinterpret_cast(state); + } + template + static glr_stack_item* asItem(T* state) + { + return reinterpret_cast(state); + } + /** The last RHS state in the list of states to be reduced. */ + std::ptrdiff_t yystate; + /** Next sibling in chain of options. To facilitate merging, + * options are chained in decreasing order by address. */ + std::ptrdiff_t yynext; + + public: + /** The lookahead for this reduction. */ + symbol_type yyla; + +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YY_IGNORE_NULL_DEREFERENCE_BEGIN + YYASSERT (this->magic_ == MAGIC); + YY_IGNORE_NULL_DEREFERENCE_END + } + + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 0xeff1cace }; + unsigned int magic_;]])[ + }; // class semantic_option +} // namespace + +namespace +{ + /** Type of the items in the GLR stack. + * It can be either a glr_state or a semantic_option. The is_state_ field + * indicates which item of the union is valid. */ + class glr_stack_item + { + public: + glr_stack_item (bool state = true) + : is_state_ (state)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + { + if (is_state_) + new (&raw_) glr_state; + else + new (&raw_) semantic_option; + } + + glr_stack_item (const glr_stack_item& other) YY_NOEXCEPT YY_NOTHROW + : is_state_ (other.is_state_)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_parse_assert_if([[ + other.check_ ();]])[ + std::memcpy (raw_, other.raw_, union_size); + } + + glr_stack_item& operator= (glr_stack_item other) + {]b4_parse_assert_if([[ + check_ (); + other.check_ ();]])[ + std::swap (is_state_, other.is_state_); + std::swap (raw_, other.raw_); + return *this; + } + + ~glr_stack_item () + {]b4_parse_assert_if([[ + check_ ();]])[ + if (is_state ()) + getState ().~glr_state (); + else + getOption ().~semantic_option (); + } + + void setState (const glr_state &state) + {]b4_parse_assert_if([[ + check_ (); + state.check_ ();]])[ + if (this != state.asItem ()) + { + if (is_state_) + getState ().~glr_state (); + else + getOption ().~semantic_option (); + new (&raw_) glr_state (state); + is_state_ = true; + } + } + + glr_state& getState () + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (is_state ()); + void *yyp = raw_; + glr_state& res = *static_cast (yyp);]b4_parse_assert_if([[ + res.check_ ();]])[ + return res; + } + + const glr_state& getState () const + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (is_state ()); + const void *yyp = raw_; + const glr_state& res = *static_cast (yyp);]b4_parse_assert_if([[ + res.check_ ();]])[ + return res; + } + + semantic_option& getOption () + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (!is_state ()); + void *yyp = raw_; + return *static_cast (yyp); + } + const semantic_option& getOption () const + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (!is_state ()); + const void *yyp = raw_; + return *static_cast (yyp); + } + bool is_state () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return is_state_; + } + + private: + /// The possible contents of raw_. Since they have constructors, they cannot + /// be directly included in the union. + union contents + { + char yystate[sizeof (glr_state)]; + char yyoption[sizeof (semantic_option)]; + }; + enum { union_size = sizeof (contents) }; + union { + /// Strongest alignment constraints. + long double yyalign_me; + /// A buffer large enough to store the contents. + char raw_[union_size]; + }; + /** Type tag for the union. */ + bool is_state_; +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YYASSERT (this->magic_ == MAGIC); + YYASSERT (this->is_state_ == false || this->is_state_ == true); + } + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 0xDEAD1ACC }; // 3735886540. + const unsigned int magic_;]])[ + }; // class glr_stack_item +} // namespace + +glr_state* glr_state::pred () +{]b4_parse_assert_if([[ + check_ ();]])[ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yypred ? &asItem (as_pointer_ (this) - yypred)->getState () : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +const glr_state* glr_state::pred () const +{]b4_parse_assert_if([[ + check_ ();]])[ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yypred ? &asItem (as_pointer_ (this) - yypred)->getState () : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +void glr_state::setPred (const glr_state* state) +{]b4_parse_assert_if([[ + check_ (); + if (state) + state->check_ ();]])[ + yypred = state ? as_pointer_ (this) - as_pointer_ (state) : 0; +} + +semantic_option* glr_state::firstVal () +{]b4_parse_assert_if([[ + check_ ();]])[ + return yyfirstVal ? &(asItem(this) - yyfirstVal)->getOption() : YY_NULLPTR; +} + +const semantic_option* glr_state::firstVal () const +{]b4_parse_assert_if([[ + check_ ();]])[ + return yyfirstVal ? &(asItem(this) - yyfirstVal)->getOption() : YY_NULLPTR; +} + +void glr_state::setFirstVal (const semantic_option* option) +{]b4_parse_assert_if([[ + check_ ();]])[ + yyfirstVal = option ? asItem(this) - asItem(option) : 0; +} + +std::ptrdiff_t glr_state::indexIn (const glr_stack_item* array) const +{]b4_parse_assert_if([[ + check_ ();]])[ + return asItem(this) - array; +} + +std::ptrdiff_t semantic_option::indexIn (const glr_stack_item* array) const +{ + return asItem(this) - array; +} + +glr_state* semantic_option::state () +{ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yystate ? &(asItem(this) - yystate)->getState() : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +const glr_state* semantic_option::state () const +{ + return yystate ? &(asItem(this) - yystate)->getState() : YY_NULLPTR; +} + +void semantic_option::setState (const glr_state* s) +{ + yystate = s ? asItem(this) - asItem(s) : 0; +} + +const semantic_option* semantic_option::next () const +{ + return yynext ? &(asItem(this) - yynext)->getOption() : YY_NULLPTR; +} + +semantic_option* semantic_option::next () +{ + return yynext ? &(asItem(this) - yynext)->getOption() : YY_NULLPTR; +} + +void semantic_option::setNext (const semantic_option* s) +{ + yynext = s ? asItem(this) - asItem(s) : 0; +} + +void glr_state::destroy (char const* yymsg, ]b4_namespace_ref[::]b4_parser_class[& yyparser) +{]b4_parse_assert_if([[ + check_ ();]])[ + if (yyresolved) + yyparser.yy_destroy_ (yymsg, yy_accessing_symbol(yylrState), + value ()]b4_locations_if([, yyloc])[); + else + { +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << yymsg + << (firstVal() ? " unresolved " : " incomplete ") + << (yy_accessing_symbol (yylrState) < YYNTOKENS ? "token" : "nterm") + << ' ' << yyparser.symbol_name (yy_accessing_symbol (yylrState)) + << " ("]b4_locations_if([[ + << yyloc << ": "]])[ + << ")\n"; +#endif + if (firstVal() != YY_NULLPTR) + { + semantic_option& yyoption = *firstVal (); + glr_state *yyrh = yyoption.state (); + for (int yyn = yyrhsLength (yyoption.yyrule); yyn > 0; yyn -= 1) + { + yyrh->destroy (yymsg, yyparser); + yyrh = yyrh->pred(); + } + } + } +} + + +#undef YYFILL +#define YYFILL(N) yyfill (yyvsp, yylow, (N), yynormal) + +namespace +{ + class state_stack + { + public: + using parser_type = ]b4_namespace_ref[::]b4_parser_class[; + using symbol_kind = parser_type::symbol_kind; + using value_type = parser_type::value_type;]b4_locations_if([[ + using location_type = parser_type::location_type;]])[ + + /** Initialize to a single empty stack, with total maximum + * capacity for all stacks of YYSIZE. */ + state_stack (size_t yysize) + : yysplitPoint (YY_NULLPTR) + { + yyitems.reserve (yysize); + } + +#if YYSTACKEXPANDABLE + /** Returns false if it tried to expand but could not. */ + bool + yyexpandGLRStackIfNeeded () + { + return YYHEADROOM <= spaceLeft () || yyexpandGLRStack (); + } + + private: + /** If *this is expandable, extend it. WARNING: Pointers into the + stack from outside should be considered invalid after this call. + We always expand when there are 1 or fewer items left AFTER an + allocation, so that we can avoid having external pointers exist + across an allocation. */ + bool + yyexpandGLRStack () + { + const size_t oldsize = yyitems.size(); + if (YYMAXDEPTH - YYHEADROOM < oldsize) + return false; + const size_t yynewSize = YYMAXDEPTH < 2 * oldsize ? YYMAXDEPTH : 2 * oldsize; + const glr_stack_item *oldbase = &yyitems[0]; + + yyitems.reserve (yynewSize); + const glr_stack_item *newbase = &yyitems[0]; + + // Adjust the pointers. Perform raw pointer arithmetic, as there + // is no reason for objects to be aligned on their size. + const ptrdiff_t disp + = reinterpret_cast (newbase) - reinterpret_cast (oldbase); + if (yysplitPoint) + const_cast (yysplitPoint) + = reinterpret_cast (reinterpret_cast (const_cast (yysplitPoint)) + disp); + + for (std::vector::iterator + i = yytops.begin (), + yyend = yytops.end (); + i != yyend; ++i) + if (glr_state_not_null (*i)) + *i = reinterpret_cast(reinterpret_cast(*i) + disp); + + return true; + } + + public: +#else + bool yyexpandGLRStackIfNeeded () + { + return YYHEADROOM <= spaceLeft (); + } +#endif +#undef YYSTACKEXPANDABLE + + static bool glr_state_not_null (glr_state* s) + { + return s != YY_NULLPTR; + } + + bool + reduceToOneStack () + { + using iterator = std::vector::iterator; + const iterator yybegin = yytops.begin(); + const iterator yyend = yytops.end(); + const iterator yyit = std::find_if(yybegin, yyend, glr_state_not_null); + if (yyit == yyend) + return false; + for (state_set_index yyk = create_state_set_index(yyit + 1 - yybegin); + yyk.uget() != numTops(); ++yyk) + yytops.yymarkStackDeleted (yyk); + yytops.yyremoveDeletes (); + yycompressStack (); + return true; + } + + /** Called when returning to deterministic operation to clean up the extra + * stacks. */ + void + yycompressStack () + { + if (yytops.size() != 1 || !isSplit()) + return; + + // yyr is the state after the split point. + glr_state* yyr = YY_NULLPTR; + for (glr_state *yyp = firstTop(), *yyq = yyp->pred(); + yyp != yysplitPoint; + yyr = yyp, yyp = yyq, yyq = yyp->pred()) + yyp->setPred(yyr); + + // This const_cast is okay, since anyway we have access to the mutable + // yyitems into which yysplitPoint points. + glr_stack_item* nextFreeItem + = const_cast (yysplitPoint)->asItem () + 1; + yysplitPoint = YY_NULLPTR; + yytops.clearLastDeleted (); + + while (yyr != YY_NULLPTR) + { + nextFreeItem->setState (*yyr); + glr_state& nextFreeState = nextFreeItem->getState(); + yyr = yyr->pred(); + nextFreeState.setPred(&(nextFreeItem - 1)->getState()); + setFirstTop (&nextFreeState); + ++nextFreeItem; + } + yyitems.resize(static_cast(nextFreeItem - yyitems.data())); + } + + bool isSplit() const { + return yysplitPoint != YY_NULLPTR; + } + + // Present the interface of a vector of glr_stack_item. + std::vector::const_iterator begin () const + { + return yyitems.begin (); + } + + std::vector::const_iterator end () const + { + return yyitems.end (); + } + + size_t size() const + { + return yyitems.size (); + } + + glr_stack_item& operator[] (size_t i) + { + return yyitems[i]; + } + + glr_stack_item& stackItemAt (size_t index) + { + return yyitems[index]; + } + + size_t numTops () const + { + return yytops.size (); + } + + glr_state* firstTop () const + { + return yytops[create_state_set_index (0)]; + } + + glr_state* topAt (state_set_index i) const + { + return yytops[i]; + } + + void setFirstTop (glr_state* value) + { + yytops[create_state_set_index (0)] = value; + } + + void setTopAt (state_set_index i, glr_state* value) + { + yytops[i] = value; + } + + void pop_back () + { + yyitems.pop_back (); + } + + void pop_back (size_t n) + { + yyitems.resize (yyitems.size () - n); + } + + state_set_index + yysplitStack (state_set_index yyk) + { + if (!isSplit ()) + { + YYASSERT (yyk.get () == 0); + yysplitPoint = topAt (yyk); + } + return yytops.yysplitStack (yyk); + } + + /** Assuming that YYS is a GLRState somewhere on *this, update the + * splitpoint of *this, if needed, so that it is at least as deep as + * YYS. */ + void + yyupdateSplit (glr_state& yys) + { + if (isSplit() && &yys < yysplitPoint) + yysplitPoint = &yys; + } + + /** Return a fresh GLRState. + * Callers should call yyreserveStack afterwards to make sure there is + * sufficient headroom. */ + glr_state& yynewGLRState (const glr_state& newState) + { + glr_state& state = yyitems[yynewGLRStackItem (true)].getState (); +#if false && 201103L <= YY_CPLUSPLUS + state = std::move (newState); +#else + state = newState; +#endif + return state; + } + + /** Return a fresh SemanticOption. + * Callers should call yyreserveStack afterwards to make sure there is + * sufficient headroom. */ + semantic_option& yynewSemanticOption (semantic_option newOption) + { + semantic_option& option = yyitems[yynewGLRStackItem (false)].getOption (); + option = std::move (newOption); + return option; + } + + /* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in + * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1. + * For convenience, always return YYLOW1. */ + int + yyfill (glr_stack_item *yyvsp, int &yylow, int yylow1, bool yynormal) + { + if (!yynormal && yylow1 < yylow) + { + yyfillin (yyvsp, yylow, yylow1); + yylow = yylow1; + } + return yylow1; + } + + /** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting + * at YYVSP[YYLOW0].getState().pred(). Leaves YYVSP[YYLOW1].getState().pred() + * containing the pointer to the next state in the chain. */ + void + yyfillin (glr_stack_item *yyvsp, int yylow0, int yylow1) + { + glr_state* s = yyvsp[yylow0].getState().pred(); + YYASSERT(s != YY_NULLPTR); + for (int i = yylow0-1; i >= yylow1; i -= 1, s = s->pred()) + { + glr_state& yys = yyvsp[i].getState(); +#if ]b4_api_PREFIX[DEBUG + yys.yylrState = s->yylrState; +#endif + yys.yyresolved = s->yyresolved; + if (s->yyresolved) + {]b4_variant_if([[ + new (&yys.value ()) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (s->yylrState)], + [yys.value ()], [copy], [s->value ()])], [[ + new (&yys.value ()) value_type (s->value ());]])[ + } + else + /* The effect of using yyval or yyloc (in an immediate + * rule) is undefined. */ + yys.setFirstVal (YY_NULLPTR);]b4_locations_if([[ + yys.yyloc = s->yyloc;]])[ + yys.setPred(s->pred()); + } + } + +#if ]b4_api_PREFIX[DEBUG + + /*----------------------------------------------------------------------. + | Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. | + `----------------------------------------------------------------------*/ + + void + yy_reduce_print (bool yynormal, glr_stack_item* yyvsp, state_set_index yyk, + rule_num yyrule, parser_type& yyparser) + { + int yynrhs = yyrhsLength (yyrule);]b4_locations_if([ + int yylow = 1;])[ + int yyi; + std::cerr << "Reducing stack " << yyk.get() << " by rule " << yyrule - 1 + << " (line " << int (yyrline[yyrule]) << "):\n"; + if (! yynormal) + yyfillin (yyvsp, 1, -yynrhs); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + std::cerr << " $" << yyi + 1 << " = "; + yyparser.yy_symbol_print_ + (yy_accessing_symbol (yyvsp[yyi - yynrhs + 1].getState().yylrState), + yyvsp[yyi - yynrhs + 1].getState().value ()]b4_locations_if([[, + ]b4_rhs_location(yynrhs, yyi + 1)])[); + if (!yyvsp[yyi - yynrhs + 1].getState().yyresolved) + std::cerr << " (unresolved)"; + std::cerr << '\n'; + } + } + + +#define YYINDEX(YYX) \ + ((YYX) == YY_NULLPTR ? -1 : (YYX)->indexIn (yyitems.data ())) + + void + dumpStack () const + { + for (size_t yyi = 0; yyi < size(); ++yyi) + { + const glr_stack_item& item = yyitems[yyi]; + std::cerr << std::setw(3) << yyi << ". "; + if (item.is_state()) + { + std::cerr << "Res: " << item.getState().yyresolved + << ", LR State: " << item.getState().yylrState + << ", posn: " << item.getState().yyposn + << ", pred: " << YYINDEX(item.getState().pred()); + if (! item.getState().yyresolved) + std::cerr << ", firstVal: " + << YYINDEX(item.getState().firstVal()); + } + else + { + std::cerr << "Option. rule: " << item.getOption().yyrule - 1 + << ", state: " << YYINDEX(item.getOption().state()) + << ", next: " << YYINDEX(item.getOption().next()); + } + std::cerr << '\n'; + } + std::cerr << "Tops:"; + for (state_set_index yyi = create_state_set_index(0); yyi.uget() < numTops(); ++yyi) { + std::cerr << yyi.get() << ": " << YYINDEX(topAt(yyi)) << "; "; + } + std::cerr << '\n'; + } + +#undef YYINDEX +#endif + + YYRESULTTAG + yyreportAmbiguity (const semantic_option& yyx0, + const semantic_option& yyx1, parser_type& yyparser]b4_locations_if([, const location_type& yyloc])[) + { + YY_USE (yyx0); + YY_USE (yyx1); + +#if ]b4_api_PREFIX[DEBUG + std::cerr << "Ambiguity detected.\n" + "Option 1,\n"; + yyx0.yyreportTree (); + std::cerr << "\nOption 2,\n"; + yyx1.yyreportTree (); + std::cerr << '\n'; +#endif + + yyparser.error (]b4_locations_if([yyloc, ])[YY_("syntax is ambiguous")); + return yyabort; + } + +#if ]b4_api_PREFIX[DEBUG + /* Print YYS (possibly NULL) and its predecessors. */ + void + yypstates (const glr_state* yys) const + { + if (yys != YY_NULLPTR) + yys->yy_yypstack(); + else + std::cerr << ""; + std::cerr << '\n'; + } +#endif + + private: + size_t spaceLeft() const + { + return yyitems.capacity() - yyitems.size(); + } + + /** Return a fresh GLRStackItem in this. The item is an LR state + * if YYIS_STATE, and otherwise a semantic option. Callers should call + * yyreserveStack afterwards to make sure there is sufficient + * headroom. */ + size_t + yynewGLRStackItem (bool yyis_state) + { + YYDASSERT(yyitems.size() < yyitems.capacity()); + yyitems.push_back(glr_stack_item(yyis_state)); + return yyitems.size() - 1; + } + + + public: + std::vector yyitems; + // Where the stack splits. Anything below this address is deterministic. + const glr_state* yysplitPoint; + glr_state_set yytops; + }; // class state_stack +} // namespace + +#undef YYFILL +#define YYFILL(N) yystateStack.yyfill (yyvsp, yylow, (N), yynormal) + +namespace ]b4_namespace_ref[ +{ + class ]b4_parser_class[::glr_stack + { + public: +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // Needs access to yypact_value_is_default, etc. + friend context; +]])[ + + glr_stack (size_t yysize, parser_type& yyparser_yyarg]m4_ifset([b4_parse_param], [, b4_parse_param_decl])[) + : yyerrState (0) + , yystateStack (yysize) + , yyerrcnt (0) + , yyla () + , yyparser (yyparser_yyarg)]m4_ifset([b4_parse_param], [,b4_parse_param_cons])[ + {} + + ~glr_stack () + { + if (!this->yyla.empty ()) + yyparser.yy_destroy_ ("Cleanup: discarding lookahead", + this->yyla.kind (), this->yyla.value]b4_locations_if([, this->yyla.location])[); + popall_ (); + } + + int yyerrState; +]b4_locations_if([[ /* To compute the location of the error token. */ + glr_stack_item yyerror_range[3];]])[ + state_stack yystateStack; + int yyerrcnt; + symbol_type yyla; + YYJMP_BUF yyexception_buffer; + parser_type& yyparser; + + #define YYCHK1(YYE) \ + do { \ + switch (YYE) { \ + case yyok: \ + break; \ + case yyabort: \ + goto yyabortlab; \ + case yyaccept: \ + goto yyacceptlab; \ + case yyerr: \ + goto yyuser_error; \ + default: \ + goto yybuglab; \ + } \ + } while (false) + + int + parse () + { + int yyresult; + size_t yyposn; + + YYCDEBUG << "Starting parse\n"; + + this->yyla.clear (); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yyla.value], [], [], [yyla.location])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl +[ + switch (YYSETJMP (this->yyexception_buffer)) + { + case 0: break; + case 1: goto yyabortlab; + case 2: goto yyexhaustedlab; + default: goto yybuglab; + } + this->yyglrShift (create_state_set_index(0), 0, 0, this->yyla.value]b4_locations_if([, this->yyla.location])[); + yyposn = 0; + + while (true) + { + /* For efficiency, we have two loops, the first of which is + specialized to deterministic operation (single stack, no + potential ambiguity). */ + /* Standard mode */ + while (true) + { + const state_num yystate = this->firstTopState()->yylrState; + YYCDEBUG << "Entering state " << yystate << '\n'; + if (yystate == YYFINAL) + goto yyacceptlab; + if (yy_is_defaulted_state (yystate)) + { + const rule_num yyrule = yy_default_action (yystate); + if (yyrule == 0) + {]b4_locations_if([[ + this->yyerror_range[1].getState().yyloc = this->yyla.location;]])[ + this->yyreportSyntaxError (); + goto yyuser_error; + } + YYCHK1 (this->yyglrReduce (create_state_set_index(0), yyrule, true)); + } + else + { + yyget_token (); + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, this->yyla.kind (), yyconflicts); + if (*yyconflicts != 0) + break; + if (yy_is_shift_action (yyaction)) + { + YY_SYMBOL_PRINT ("Shifting", this->yyla.kind (), this->yyla.value, this->yyla.location); + yyposn += 1; + // FIXME: we should move yylval. + this->yyglrShift (create_state_set_index(0), yyaction, yyposn, this->yyla.value]b4_locations_if([, this->yyla.location])[); + yyla.clear (); + if (0 < this->yyerrState) + this->yyerrState -= 1; + } + else if (yy_is_error_action (yyaction)) + {]b4_locations_if([[ + this->yyerror_range[1].getState().yyloc = this->yyla.location;]])[ + /* Don't issue an error message again for exceptions + thrown from the scanner. */ + if (this->yyla.kind () != ]b4_symbol(error, kind)[) + this->yyreportSyntaxError (); + goto yyuser_error; + } + else + YYCHK1 (this->yyglrReduce (create_state_set_index(0), -yyaction, true)); + } + } + + while (true) + { + for (state_set_index yys = create_state_set_index(0); yys.uget() < this->yystateStack.numTops(); ++yys) + this->yystateStack.yytops.setLookaheadNeeds(yys, !this->yyla.empty ()); + + /* yyprocessOneStack returns one of three things: + + - An error flag. If the caller is yyprocessOneStack, it + immediately returns as well. When the caller is finally + yyparse, it jumps to an error label via YYCHK1. + + - yyok, but yyprocessOneStack has invoked yymarkStackDeleted + (yys), which sets the top state of yys to NULL. Thus, + yyparse's following invocation of yyremoveDeletes will remove + the stack. + + - yyok, when ready to shift a token. + + Except in the first case, yyparse will invoke yyremoveDeletes and + then shift the next token onto all remaining stacks. This + synchronization of the shift (that is, after all preceding + reductions on all stacks) helps prevent double destructor calls + on yylval in the event of memory exhaustion. */ + + for (state_set_index yys = create_state_set_index (0); yys.uget () < this->yystateStack.numTops (); ++yys) + YYCHK1 (this->yyprocessOneStack (yys, yyposn]b4_locations_if([, &this->yyla.location])[)); + this->yystateStack.yytops.yyremoveDeletes (); + if (this->yystateStack.yytops.size() == 0) + { + this->yystateStack.yytops.yyundeleteLastStack (); + if (this->yystateStack.yytops.size() == 0) + this->yyFail (]b4_locations_if([&this->yyla.location, ])[YY_("syntax error")); + YYCHK1 (this->yyresolveStack ()); + YYCDEBUG << "Returning to deterministic operation.\n";]b4_locations_if([[ + this->yyerror_range[1].getState ().yyloc = this->yyla.location;]])[ + this->yyreportSyntaxError (); + goto yyuser_error; + } + + /* If any yyglrShift call fails, it will fail after shifting. Thus, + a copy of yylval will already be on stack 0 in the event of a + failure in the following loop. Thus, yyla is emptied + before the loop to make sure the user destructor for yylval isn't + called twice. */ + symbol_kind_type yytoken_to_shift = this->yyla.kind (); + this->yyla.kind_ = ]b4_symbol(empty, kind)[; + yyposn += 1; + for (state_set_index yys = create_state_set_index (0); yys.uget () < this->yystateStack.numTops (); ++yys) + { + const state_num yystate = this->topState (yys)->yylrState; + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, yytoken_to_shift, yyconflicts); + /* Note that yyconflicts were handled by yyprocessOneStack. */ + YYCDEBUG << "On stack " << yys.get() << ", "; + YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, this->yyla.value, this->yyla.location); + this->yyglrShift (yys, yyaction, yyposn, this->yyla.value]b4_locations_if([, this->yyla.location])[); + YYCDEBUG << "Stack " << yys.get() << " now in state " + << this->topState(yys)->yylrState << '\n'; + } +]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yytoken_to_shift]], [[this->yyla.value]], [[template destroy]])])[ + + if (this->yystateStack.yytops.size () == 1) + { + YYCHK1 (this->yyresolveStack ()); + YYCDEBUG << "Returning to deterministic operation.\n"; + this->yystateStack.yycompressStack (); + break; + } + } + continue; + yyuser_error: + this->yyrecoverSyntaxError (]b4_locations_if([&this->yyla.location])[); + yyposn = this->firstTopState()->yyposn; + } + + yyacceptlab: + yyresult = 0; + goto yyreturn; + + yybuglab: + YYASSERT (false); + goto yyabortlab; + + yyabortlab: + yyresult = 1; + goto yyreturn; + + yyexhaustedlab: + yyparser.error (]b4_locations_if([this->yyla.location, ])[YY_("memory exhausted")); + yyresult = 2; + goto yyreturn; + + yyreturn: + return yyresult; + } + #undef YYCHK1 + + void yyreserveGlrStack () + { + if (!yystateStack.yyexpandGLRStackIfNeeded ()) + yyMemoryExhausted (); + } + + _Noreturn void + yyMemoryExhausted () + { + YYLONGJMP (yyexception_buffer, 2); + } + + _Noreturn void + yyFail (]b4_locations_if([location_type* yylocp, ])[const char* yymsg) + { + if (yymsg != YY_NULLPTR) + yyparser.error (]b4_locations_if([*yylocp, ])[yymsg); + YYLONGJMP (yyexception_buffer, 1); + } + + /* GLRStates */ + + + /** Add a new semantic action that will execute the action for rule + * YYRULE on the semantic values in YYRHS to the list of + * alternative actions for YYSTATE. Assumes that YYRHS comes from + * stack #YYK of *this. */ + void + yyaddDeferredAction (state_set_index yyk, glr_state* yystate, + glr_state* yyrhs, rule_num yyrule) + { + semantic_option& yyopt = yystateStack.yynewSemanticOption (semantic_option (yyrule)); + yyopt.setState (yyrhs); + yyopt.setNext (yystate->firstVal ()); + if (yystateStack.yytops.lookaheadNeeds (yyk)) + yyopt.yyla = this->yyla; + yystate->setFirstVal (&yyopt); + + yyreserveGlrStack (); + } + + #if ]b4_api_PREFIX[DEBUG + void yypdumpstack () const + { + yystateStack.dumpStack(); + } + #endif + + void + yyreportSyntaxError () + { + if (yyerrState != 0) + return; +]b4_parse_error_case( +[simple], [[ + std::string msg = YY_("syntax error"); + yyparser.error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]], +[custom], [[ + context yyctx (*this, yyla); + yyparser.report_syntax_error (yyctx);]], +[[ + context yyctx (*this, yyla); + std::string msg = yyparser.yysyntax_error_ (yyctx); + yyparser.error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]])[ + yyerrcnt += 1; + } + + /* Recover from a syntax error on this, assuming that yytoken, + yylval, and yylloc are the syntactic category, semantic value, and location + of the lookahead. */ + void + yyrecoverSyntaxError (]b4_locations_if([location_type* yylocp])[) + { + if (yyerrState == 3) + /* We just shifted the error token and (perhaps) took some + reductions. Skip tokens until we can proceed. */ + while (true) + { + if (this->yyla.kind () == ]b4_symbol(eof, kind)[) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + if (this->yyla.kind () != ]b4_symbol(empty, kind)[) + {]b4_locations_if([[ + /* We throw away the lookahead, but the error range + of the shifted error token must take it into account. */ + glr_state *yys = firstTopState(); + yyerror_range[1].getState().yyloc = yys->yyloc; + yyerror_range[2].getState().yyloc = this->yyla.location; + YYLLOC_DEFAULT ((yys->yyloc), yyerror_range, 2);]])[ + yyparser.yy_destroy_ ("Error: discarding", + this->yyla.kind (), this->yyla.value]b4_locations_if([, this->yyla.location])[);]b4_variant_if([[ + // Value type destructor. + ]b4_symbol_variant([[this->yyla.kind ()]], [[this->yyla.value]], [[template destroy]])])[ + this->yyla.kind_ = ]b4_symbol(empty, kind)[; + } + yyget_token (); + int yyj = yypact[firstTopState()->yylrState]; + if (yypact_value_is_default (yyj)) + return; + yyj += this->yyla.kind (); + if (yyj < 0 || YYLAST < yyj || yycheck[yyj] != this->yyla.kind ()) + { + if (yydefact[firstTopState()->yylrState] != 0) + return; + } + else if (! yytable_value_is_error (yytable[yyj])) + return; + } + + if (!yystateStack.reduceToOneStack()) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + + /* Now pop stack until we find a state that shifts the error token. */ + yyerrState = 3; + while (firstTopState () != YY_NULLPTR) + { + glr_state *yys = firstTopState (); + int yyj = yypact[yys->yylrState]; + if (! yypact_value_is_default (yyj)) + { + yyj += YYTERROR; + if (0 <= yyj && yyj <= YYLAST && yycheck[yyj] == YYTERROR + && yy_is_shift_action (yytable[yyj])) + { + /* Shift the error token. */]b4_locations_if([[ + /* First adjust its location.*/ + location_type yyerrloc; + yyerror_range[2].getState().yyloc = this->yyla.location; + YYLLOC_DEFAULT (yyerrloc, (yyerror_range), 2);]])[ + YY_SYMBOL_PRINT ("Shifting", yy_accessing_symbol (yytable[yyj]), + this->yyla.value, yyerrloc); + yyglrShift (create_state_set_index(0), yytable[yyj], + yys->yyposn, yyla.value]b4_locations_if([, yyerrloc])[); + yys = firstTopState(); + break; + } + }]b4_locations_if([[ + yyerror_range[1].getState().yyloc = yys->yyloc;]])[ + if (yys->pred() != YY_NULLPTR) + yys->destroy ("Error: popping", yyparser); + yystateStack.setFirstTop(yys->pred()); + yystateStack.pop_back(); + } + if (firstTopState() == YY_NULLPTR) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + } + + YYRESULTTAG + yyprocessOneStack (state_set_index yyk, + size_t yyposn]b4_locations_if([, location_type* yylocp])[) + { + while (yystateStack.topAt(yyk) != YY_NULLPTR) + { + const state_num yystate = topState(yyk)->yylrState; + YYCDEBUG << "Stack " << yyk.get() + << " Entering state " << yystate << '\n'; + + YYASSERT (yystate != YYFINAL); + + if (yy_is_defaulted_state (yystate)) + { + const rule_num yyrule = yy_default_action (yystate); + if (yyrule == 0) + { + YYCDEBUG << "Stack " << yyk.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + return yyok; + } + const YYRESULTTAG yyflag + = yyglrReduce (yyk, yyrule, yyimmediate[yyrule]); + if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yyk.get() << " dies" + " (predicate failure or explicit user error).\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + return yyok; + } + if (yyflag != yyok) + return yyflag; + } + else + { + yystateStack.yytops.setLookaheadNeeds(yyk, true); + yyget_token (); + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, this->yyla.kind (), yyconflicts); + + for (; *yyconflicts != 0; ++yyconflicts) + { + state_set_index yynewStack = yystateStack.yysplitStack (yyk); + YYCDEBUG << "Splitting off stack " << yynewStack.get() + << " from " << yyk.get() << ".\n"; + YYRESULTTAG yyflag = + yyglrReduce (yynewStack, *yyconflicts, yyimmediate[*yyconflicts]); + if (yyflag == yyok) + YYCHK (yyprocessOneStack (yynewStack, + yyposn]b4_locations_if([, yylocp])[)); + else if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yynewStack.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yynewStack); + } + else + return yyflag; + } + + if (yy_is_shift_action (yyaction)) + break; + else if (yy_is_error_action (yyaction)) + { + YYCDEBUG << "Stack " << yyk.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + break; + } + else + { + YYRESULTTAG yyflag + = yyglrReduce (yyk, -yyaction, yyimmediate[-yyaction]); + if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yyk.get() << " dies" + " (predicate failure or explicit user error).\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + break; + } + else if (yyflag != yyok) + return yyflag; + } + } + } + return yyok; + } + + /** Perform user action for rule number YYN, with RHS length YYRHSLEN, + * and top stack item YYVSP. YYVALP points to place to put semantic + * value ($$), and yylocp points to place for location information + * (@@$). Returns yyok for normal return, yyaccept for YYACCEPT, + * yyerr for YYERROR, yyabort for YYABORT. */ + YYRESULTTAG + yyuserAction (rule_num yyrule, int yyrhslen, glr_stack_item* yyvsp, state_set_index yyk, + value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + bool yynormal YY_ATTRIBUTE_UNUSED = !yystateStack.isSplit(); + int yylow = 1; +]b4_parse_param_use([yyvalp], [yylocp])dnl +[ YY_USE (yyk); + YY_USE (yyrhslen); + # undef yyerrok + # define yyerrok (yyerrState = 0) + # undef YYACCEPT + # define YYACCEPT return yyaccept + # undef YYABORT + # define YYABORT return yyabort + # undef YYERROR + # define YYERROR return yyerrok, yyerr + # undef YYRECOVERING + # define YYRECOVERING() (yyerrState != 0) + # undef yytoken + # define yytoken this->yyla.kind_ + # undef yyclearin + # define yyclearin (yytoken = ]b4_symbol(empty, kind)[) + # undef YYBACKUP + # define YYBACKUP(Token, Value) \ + return yyparser.error (]b4_locations_if([*yylocp, ])[YY_("syntax error: cannot back up")), \ + yyerrok, yyerr + +]b4_variant_if([[ + /* Variants are always initialized to an empty instance of the + correct type. The default '$$ = $1' action is NOT applied + when using variants. */ + // However we really need to prepare yyvsp now if we want to get + // correct locations, so invoke YYFILL for $1 anyway. + (void) YYFILL (1-yyrhslen); + ]b4_symbol_variant([[yylhsNonterm (yyrule)]], [(*yyvalp)], [emplace])], [[ + if (yyrhslen == 0) + *yyvalp = yyval_default; + else + *yyvalp = yyvsp[YYFILL (1-yyrhslen)].getState().value ();]])[]b4_locations_if([[ + /* Default location. */ + YYLLOC_DEFAULT ((*yylocp), (yyvsp - yyrhslen), yyrhslen); + yyerror_range[1].getState().yyloc = *yylocp; +]])[ + /* If yyk == -1, we are running a deferred action on a temporary + stack. In that case, YY_REDUCE_PRINT must not play with YYFILL, + so pretend the stack is "normal". */ + YY_REDUCE_PRINT ((yynormal || yyk == create_state_set_index (-1), yyvsp, yyk, yyrule, yyparser)); + #if YY_EXCEPTIONS + try + { + #endif // YY_EXCEPTIONS + switch (yyrule) + { + ]b4_user_actions[ + default: break; + } + #if YY_EXCEPTIONS + } + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n';]b4_locations_if([ + *yylocp = yyexc.location;])[ + yyparser.error (]b4_locations_if([*yylocp, ])[yyexc.what ()); + YYERROR; + } + #endif // YY_EXCEPTIONS + YY_SYMBOL_PRINT ("-> $$ =", yylhsNonterm (yyrule), *yyvalp, *yylocp); + + return yyok; + # undef yyerrok + # undef YYABORT + # undef YYACCEPT + # undef YYERROR + # undef YYBACKUP + # undef yytoken + # undef yyclearin + # undef YYRECOVERING + } + + YYRESULTTAG + yyresolveStack () + { + if (yystateStack.isSplit ()) + { + int yyn = 0; + for (glr_state* yys = firstTopState (); + yys != yystateStack.yysplitPoint; + yys = yys->pred ()) + yyn += 1; + YYCHK (yyresolveStates (*firstTopState (), yyn)); + } + return yyok; + } + + /** Pop the symbols consumed by reduction #YYRULE from the top of stack + * #YYK of *YYSTACKP, and perform the appropriate semantic action on their + * semantic values. Assumes that all ambiguities in semantic values + * have been previously resolved. Set *YYVALP to the resulting value, + * and *YYLOCP to the computed location (if any). Return value is as + * for userAction. */ + YYRESULTTAG + yydoAction (state_set_index yyk, rule_num yyrule, + value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + const int yynrhs = yyrhsLength (yyrule); + + if (!yystateStack.isSplit()) + { + /* Standard special case: single stack. */ + YYASSERT (yyk.get() == 0); + glr_stack_item* yyrhs = yystateStack.firstTop()->asItem(); + const YYRESULTTAG res + = yyuserAction (yyrule, yynrhs, yyrhs, yyk, yyvalp]b4_locations_if([, yylocp])[); + yystateStack.pop_back(static_cast(yynrhs)); + yystateStack.setFirstTop(&yystateStack[yystateStack.size() - 1].getState()); + return res; + } + else + { + glr_stack_item yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + glr_state* yys = yystateStack.topAt(yyk); + yyrhsVals[YYMAXRHS + YYMAXLEFT].getState().setPred(yys);]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].getState().yyloc = yys->yyloc;]])[ + for (int yyi = 0; yyi < yynrhs; yyi += 1) + { + yys = yys->pred(); + YYASSERT (yys != YY_NULLPTR); + } + yystateStack.yyupdateSplit (*yys); + yystateStack.setTopAt(yyk, yys); + return yyuserAction (yyrule, yynrhs, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yyk, + yyvalp]b4_locations_if([, yylocp])[); + } + } + + /** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE, + * and push back on the resulting nonterminal symbol. Perform the + * semantic action associated with YYRULE and store its value with the + * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently + * unambiguous. Otherwise, store the deferred semantic action with + * the new state. If the new state would have an identical input + * position, LR state, and predecessor to an existing state on the stack, + * it is identified with that existing state, eliminating stack #YYK from + * *YYSTACKP. In this case, the semantic value is + * added to the options for the existing state's semantic value. + */ + YYRESULTTAG + yyglrReduce (state_set_index yyk, rule_num yyrule, bool yyforceEval) + { + size_t yyposn = topState(yyk)->yyposn; + + if (yyforceEval || !yystateStack.isSplit()) + { + value_type val;]b4_locations_if([[ + location_type loc;]])[ + + YYRESULTTAG yyflag = yydoAction (yyk, yyrule, &val]b4_locations_if([, &loc])[); + if (yyflag == yyerr && yystateStack.isSplit()) + {]b4_parse_trace_if([[ + YYCDEBUG << "Parse on stack " << yyk.get () + << " rejected by rule " << yyrule - 1 + << " (line " << int (yyrline[yyrule]) << ").\n"; + ]])[} + if (yyflag != yyok) + return yyflag; + yyglrShift (yyk, + yyLRgotoState (topState(yyk)->yylrState, + yylhsNonterm (yyrule)), + yyposn, val]b4_locations_if([, loc])[);]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yylhsNonterm (yyrule)]], [[val]], [[template destroy]])])[ + } + else + { + glr_state *yys = yystateStack.topAt(yyk); + glr_state *yys0 = yys; + for (int yyn = yyrhsLength (yyrule); 0 < yyn; yyn -= 1) + { + yys = yys->pred(); + YYASSERT (yys != YY_NULLPTR); + } + yystateStack.yyupdateSplit (*yys); + state_num yynewLRState = yyLRgotoState (yys->yylrState, yylhsNonterm (yyrule));]b4_parse_trace_if([[ + YYCDEBUG << "Reduced stack " << yyk.get () + << " by rule " << yyrule - 1 << " (line " << int (yyrline[yyrule]) + << "); action deferred. Now in state " << yynewLRState + << ".\n";]])[ + for (state_set_index yyi = create_state_set_index(0); yyi.uget() < yystateStack.numTops(); ++yyi) + if (yyi != yyk && yystateStack.topAt(yyi) != YY_NULLPTR) + { + const glr_state* yysplit = yystateStack.yysplitPoint; + glr_state* yyp = yystateStack.topAt(yyi); + while (yyp != yys && yyp != yysplit + && yyp->yyposn >= yyposn) + { + if (yyp->yylrState == yynewLRState + && yyp->pred() == yys) + { + yyaddDeferredAction (yyk, yyp, yys0, yyrule); + yystateStack.yytops.yymarkStackDeleted (yyk); + YYCDEBUG << "Merging stack " << yyk.get () + << " into stack " << yyi.get () << ".\n"; + return yyok; + } + yyp = yyp->pred(); + } + } + yystateStack.setTopAt(yyk, yys); + yyglrShiftDefer (yyk, yynewLRState, yyposn, yys0, yyrule); + } + return yyok; + } + + /** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with the (unresolved) + * semantic value of YYRHS under the action for YYRULE. */ + void + yyglrShiftDefer (state_set_index yyk, state_num yylrState, + size_t yyposn, glr_state* yyrhs, rule_num yyrule) + { + glr_state& yynewState = yystateStack.yynewGLRState ( + glr_state (yylrState, yyposn)); + yynewState.setPred (yystateStack.topAt (yyk)); + yystateStack.setTopAt (yyk, &yynewState); + + /* Invokes yyreserveStack. */ + yyaddDeferredAction (yyk, &yynewState, yyrhs, yyrule); + } + + /** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic + * value YYVAL_ARG and source location YYLOC_ARG. */ + void + yyglrShift (state_set_index yyk, state_num yylrState, + size_t yyposn, + const value_type& yyval_arg]b4_locations_if([, const location_type& yyloc_arg])[) + { + glr_state& yynewState = yystateStack.yynewGLRState ( + glr_state (yylrState, yyposn, yyval_arg]b4_locations_if([, yyloc_arg])[)); + yynewState.setPred (yystateStack.topAt(yyk)); + yystateStack.setTopAt (yyk, &yynewState); + yyreserveGlrStack (); + } + +#if ]b4_api_PREFIX[DEBUG + void + yypstack (state_set_index yyk) const + { + yystateStack.yypstates (yystateStack.topAt (yyk)); + } +#endif + + glr_state* topState(state_set_index i) { + return yystateStack.topAt(i); + } + + glr_state* firstTopState() { + return yystateStack.firstTop(); + } + + private: + + void popall_ () + { + /* If the stack is well-formed, pop the stack until it is empty, + destroying its entries as we go. But free the stack regardless + of whether it is well-formed. */ + for (state_set_index k = create_state_set_index(0); k.uget() < yystateStack.numTops(); k += 1) + if (yystateStack.topAt(k) != YY_NULLPTR) + { + while (yystateStack.topAt(k) != YY_NULLPTR) + { + glr_state* state = topState(k);]b4_locations_if([[ + yyerror_range[1].getState().yyloc = state->yyloc;]])[ + if (state->pred() != YY_NULLPTR) + state->destroy ("Cleanup: popping", yyparser); + yystateStack.setTopAt(k, state->pred()); + yystateStack.pop_back(); + } + break; + } + } + + /** Resolve the previous YYN states starting at and including state YYS + * on *YYSTACKP. If result != yyok, some states may have been left + * unresolved possibly with empty semantic option chains. Regardless + * of whether result = yyok, each state has been left with consistent + * data so that destroy can be invoked if necessary. */ + YYRESULTTAG + yyresolveStates (glr_state& yys, int yyn) + { + if (0 < yyn) + { + YYASSERT (yys.pred() != YY_NULLPTR); + YYCHK (yyresolveStates (*yys.pred(), yyn-1)); + if (! yys.yyresolved) + YYCHK (yyresolveValue (yys)); + } + return yyok; + } + + static void + yyuserMerge (int yyn, value_type& yy0, value_type& yy1) + { + YY_USE (yy0); + YY_USE (yy1); + + switch (yyn) + { +]b4_mergers[ + default: break; + } + } + + /** Resolve the ambiguity represented in state YYS in *YYSTACKP, + * perform the indicated actions, and set the semantic value of YYS. + * If result != yyok, the chain of semantic options in YYS has been + * cleared instead or it has been left unmodified except that + * redundant options may have been removed. Regardless of whether + * result = yyok, YYS has been left with consistent data so that + * destroy can be invoked if necessary. */ + YYRESULTTAG + yyresolveValue (glr_state& yys) + { + semantic_option* yybest = yys.firstVal(); + YYASSERT(yybest != YY_NULLPTR); + bool yymerge = false; + YYRESULTTAG yyflag;]b4_locations_if([ + location_type *yylocp = &yys.yyloc;])[ + + semantic_option* yypPrev = yybest; + for (semantic_option* yyp = yybest->next(); + yyp != YY_NULLPTR; ) + { + if (yybest->isIdenticalTo (*yyp)) + { + yybest->mergeWith (*yyp); + yypPrev->setNext(yyp->next()); + yyp = yypPrev->next(); + } + else + { + switch (yypreference (*yybest, *yyp)) + { + case 0:]b4_locations_if([[ + yyresolveLocations (yys, 1);]])[ + return yystateStack.yyreportAmbiguity (*yybest, *yyp, yyparser]b4_locations_if([, *yylocp])[); + break; + case 1: + yymerge = true; + break; + case 2: + break; + case 3: + yybest = yyp; + yymerge = false; + break; + default: + /* This cannot happen so it is not worth a YYASSERT (false), + but some compilers complain if the default case is + omitted. */ + break; + } + yypPrev = yyp; + yyp = yyp->next(); + } + } + + value_type val; + if (yymerge) + { + int yyprec = yydprec[yybest->yyrule]; + yyflag = yyresolveAction (*yybest, &val]b4_locations_if([, yylocp])[); + if (yyflag == yyok) + for (semantic_option* yyp = yybest->next(); + yyp != YY_NULLPTR; + yyp = yyp->next()) + { + if (yyprec == yydprec[yyp->yyrule]) + { + value_type yyval_other;]b4_locations_if([ + location_type yydummy;])[ + yyflag = yyresolveAction (*yyp, &yyval_other]b4_locations_if([, &yydummy])[); + if (yyflag != yyok) + { + yyparser.yy_destroy_ ("Cleanup: discarding incompletely merged value for", + yy_accessing_symbol (yys.yylrState), + this->yyla.value]b4_locations_if([, *yylocp])[); + break; + } + yyuserMerge (yymerger[yyp->yyrule], val, yyval_other);]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yy_accessing_symbol (yys.yylrState)]], [[yyval_other]], [[template destroy]])])[ + } + } + } + else + yyflag = yyresolveAction (*yybest, &val]b4_locations_if([, yylocp])[); + + if (yyflag == yyok) + { + yys.yyresolved = true; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN]b4_variant_if([[ + new (&yys.value ()) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (yys.yylrState)], + [yys.value ()], [copy], [val])], [[ + new (&yys.value ()) value_type (val);]])[ + + YY_IGNORE_MAYBE_UNINITIALIZED_END + } + else + yys.setFirstVal(YY_NULLPTR); +]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yy_accessing_symbol (yys.yylrState)]], [[val]], [[template destroy]])])[ + return yyflag; + } + + /** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its + * user action, and return the semantic value and location in *YYVALP + * and *YYLOCP. Regardless of whether result = yyok, all RHS states + * have been destroyed (assuming the user action destroys all RHS + * semantic values if invoked). */ + YYRESULTTAG + yyresolveAction (semantic_option& yyopt, value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + glr_state* yyoptState = yyopt.state(); + YYASSERT(yyoptState != YY_NULLPTR); + int yynrhs = yyrhsLength (yyopt.yyrule); + YYRESULTTAG yyflag = yyresolveStates (*yyoptState, yynrhs); + if (yyflag != yyok) + { + for (glr_state *yys = yyoptState; yynrhs > 0; yys = yys->pred(), yynrhs -= 1) + yys->destroy ("Cleanup: popping", yyparser); + return yyflag; + } + + glr_stack_item yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + yyrhsVals[YYMAXRHS + YYMAXLEFT].getState().setPred(yyopt.state());]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].getState().yyloc = yyoptState->yyloc;]])[ + { + symbol_type yyla_current = std::move (this->yyla); + this->yyla = std::move (yyopt.yyla); + yyflag = yyuserAction (yyopt.yyrule, yynrhs, + yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + create_state_set_index (-1), + yyvalp]b4_locations_if([, yylocp])[); + this->yyla = std::move (yyla_current); + } + return yyflag; + }]b4_locations_if([[ + + /** Resolve the locations for each of the YYN1 states in *YYSTACKP, + * ending at YYS1. Has no effect on previously resolved states. + * The first semantic option of a state is always chosen. */ + void + yyresolveLocations (glr_state &yys1, int yyn1) + { + if (0 < yyn1) + { + yyresolveLocations (*yys1.pred(), yyn1 - 1); + if (!yys1.yyresolved) + { + glr_stack_item yyrhsloc[1 + YYMAXRHS]; + YYASSERT (yys1.firstVal() != YY_NULLPTR); + semantic_option& yyoption = *yys1.firstVal(); + const int yynrhs = yyrhsLength (yyoption.yyrule); + if (0 < yynrhs) + { + yyresolveLocations (*yyoption.state(), yynrhs); + const glr_state *yys = yyoption.state(); + for (int yyn = yynrhs; yyn > 0; yyn -= 1) + { + yyrhsloc[yyn].getState().yyloc = yys->yyloc; + yys = yys->pred(); + } + } + else + { + /* Both yyresolveAction and yyresolveLocations traverse the GSS + in reverse rightmost order. It is only necessary to invoke + yyresolveLocations on a subforest for which yyresolveAction + would have been invoked next had an ambiguity not been + detected. Thus the location of the previous state (but not + necessarily the previous state itself) is guaranteed to be + resolved already. */ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + yyrhsloc[0].getState().yyloc = yyoption.state()->yyloc; + YY_IGNORE_NULL_DEREFERENCE_END + } + YYLLOC_DEFAULT ((yys1.yyloc), yyrhsloc, yynrhs); + } + } + }]])[ + + /** If yytoken is empty, fetch the next token. */ + void + yyget_token () + { +]b4_parse_param_use()dnl +[ if (this->yyla.empty ()) + { + YYCDEBUG << "Reading a token\n"; +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + {]b4_token_ctor_if([[ + symbol_type yylookahead (]b4_yylex[); + yyla.move (yylookahead);]], [[ + yyla.kind_ = yyparser.yytranslate_ (]b4_yylex[);]])[ + } +#if YY_EXCEPTIONS + catch (const parser_type::syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what () << '\n';]b4_locations_if([ + this->yyla.location = yyexc.location;])[ + yyparser.error (]b4_locations_if([this->yyla.location, ])[yyexc.what ()); + // Map errors caught in the scanner to the error token, so that error + // handling is started. + this->yyla.kind_ = ]b4_symbol(error, kind)[; + } + } +#endif // YY_EXCEPTIONS + if (this->yyla.kind () == ]b4_symbol(eof, kind)[) + YYCDEBUG << "Now at end of input.\n"; + else + YY_SYMBOL_PRINT ("Next token is", this->yyla.kind (), this->yyla.value, this->yyla.location); + } + + + /* Bison grammar-table manipulation. */ + + /** The action to take in YYSTATE on seeing YYTOKEN. + * Result R means + * R < 0: Reduce on rule -R. + * R = 0: Error. + * R > 0: Shift to state R. + * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list + * of conflicting reductions. + */ + static int + yygetLRActions (state_num yystate, symbol_kind_type yytoken, const short*& yyconflicts) + { + int yyindex = yypact[yystate] + yytoken; + if (yytoken == ]b4_symbol(error, kind)[) + { + // This is the error token. + yyconflicts = yyconfl; + return 0; + } + else if (yy_is_defaulted_state (yystate) + || yyindex < 0 || YYLAST < yyindex || yycheck[yyindex] != yytoken) + { + yyconflicts = yyconfl; + return -yydefact[yystate]; + } + else if (! yytable_value_is_error (yytable[yyindex])) + { + yyconflicts = yyconfl + yyconflp[yyindex]; + return yytable[yyindex]; + } + else + { + yyconflicts = yyconfl + yyconflp[yyindex]; + return 0; + } + } + + /** Compute post-reduction state. + * \param yystate the current state + * \param yysym the nonterminal to push on the stack + */ + static state_num + yyLRgotoState (state_num yystate, symbol_kind_type yysym) + { + const int yyr = yypgoto[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= YYLAST && yycheck[yyr] == yystate) + return yytable[yyr]; + else + return yydefgoto[yysym - YYNTOKENS]; + } + + static bool + yypact_value_is_default (state_num yystate) + { + return ]b4_table_value_equals([[pact]], [[yystate]], [b4_pact_ninf], [YYPACT_NINF])[; + } + + static bool + yytable_value_is_error (int yytable_value YY_ATTRIBUTE_UNUSED) + { + return ]b4_table_value_equals([[table]], [[yytable_value]], [b4_table_ninf], [YYTABLE_NINF])[; + } + + static bool + yy_is_shift_action (int yyaction) YY_NOEXCEPT + { + return 0 < yyaction; + } + + static bool + yy_is_error_action (int yyaction) YY_NOEXCEPT + { + return yyaction == 0; + } + + /** Whether LR state YYSTATE has only a default reduction + * (regardless of token). */ + static bool + yy_is_defaulted_state (state_num yystate) + { + return yypact_value_is_default (yypact[yystate]); + } + + /** The default reduction for YYSTATE, assuming it has one. */ + static rule_num + yy_default_action (state_num yystate) + { + return yydefact[yystate]; + } + + /* GLRStacks */ + + /** Y0 and Y1 represent two possible actions to take in a given + * parsing state; return 0 if no combination is possible, + * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */ + static int + yypreference (const semantic_option& y0, const semantic_option& y1) + { + const rule_num r0 = y0.yyrule, r1 = y1.yyrule; + const int p0 = yydprec[r0], p1 = yydprec[r1]; + + if (p0 == p1) + { + if (yymerger[r0] == 0 || yymerger[r0] != yymerger[r1]) + return 0; + else + return 1; + } + else if (p0 == 0 || p1 == 0) + return 0; + else if (p0 < p1) + return 3; + else if (p1 < p0) + return 2; + else + return 0; + } + +]b4_parse_param_vars[ + }; // class ]b4_parser_class[::glr_stack +} // namespace ]b4_namespace_ref[ + + +#if ]b4_api_PREFIX[DEBUG +namespace +{ + void + yypstack (const glr_stack& yystack, size_t yyk) + { + yystack.yypstack (create_state_set_index (static_cast (yyk))); + } + + void + yypdumpstack (const glr_stack& yystack) + { + yystack.yypdumpstack (); + } +} +#endif + +]b4_namespace_open[ + /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[)]m4_ifset([b4_parse_param], [ + :])[ +#if ]b4_api_PREFIX[DEBUG + ]m4_ifset([b4_parse_param], [ ], [ :])[yycdebug_ (&std::cerr)]m4_ifset([b4_parse_param], [,])[ +#endif]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + glr_stack yystack(YYINITDEPTH, *this]b4_user_args[); + return yystack.parse (); + } + +]b4_parse_error_bmatch([custom\|detailed], +[[ const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ + } +]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytname_[yysymbol]; + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + std::string + ]b4_parser_class[::yytnamerr_ (const char *yystr) + { + if (*yystr == '"') + { + std::string yyr; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + yyr += *yyp; + break; + + case '"': + return yyr; + } + do_not_strip_quotes: ; + } + + return yystr; + } + + std::string + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytnamerr_ (yytname_[yysymbol]); + } +]])[ + +]b4_parse_error_bmatch([simple\|verbose], +[[#if ]b4_api_PREFIX[DEBUG]b4_tname_if([[ || 1]])[ + // YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + // First, the terminals, then, starting at \a YYNTOKENS, nonterminals. + const char* + const ]b4_parser_class[::yytname_[] = + { + ]b4_tname[ + }; +#endif +]])[ + +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // ]b4_parser_class[::context. + ]b4_parser_class[::context::context (glr_stack& yystack, const symbol_type& yyla) + : yystack_ (yystack) + , yyla_ (yyla) + {} + + int + ]b4_parser_class[::context::expected_tokens (symbol_kind_type yyarg[], int yyargn) const + { + // Actual number of expected tokens + int yycount = 0; + const int yyn = yypact[yystack_.firstTopState()->yylrState]; + if (!yystack_.yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for this + state because they are default actions. */ + const int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + const int yychecklim = YYLAST - yyn + 1; + const int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yystack_.yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (symbol_kind_type, yyx); + } + } + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; + } + +]])[ + +]b4_parse_error_bmatch([detailed\|verbose], [[ + int + ]b4_parser_class[::yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const + { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yyla) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is + a consistent state with a default action. There might have + been a previous inconsistent state, consistent state with a + non-default action, or user semantic action that manipulated + yyla. (However, yyla is currently not documented for users.) + */ + + if (!yyctx.lookahead ().empty ()) + { + if (yyarg) + yyarg[0] = yyctx.token (); + int yyn = yyctx.expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1); + return yyn + 1; + } + return 0; + } + + // Generate an error message. + std::string + ]b4_parser_class[::yysyntax_error_ (const context& yyctx) const + { + // Its maximum. + enum { YYARGS_MAX = 5 }; + // Arguments of yyformat. + symbol_kind_type yyarg[YYARGS_MAX]; + int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX); + + char const* yyformat = YY_NULLPTR; + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: // Avoid compiler warnings. + YYCASE_ (0, YY_("syntax error")); + YYCASE_ (1, YY_("syntax error, unexpected %s")); + YYCASE_ (2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_ (3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_ (4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_ (5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + std::string yyres; + // Argument number. + std::ptrdiff_t yyi = 0; + for (char const* yyp = yyformat; *yyp; ++yyp) + if (yyp[0] == '%' && yyp[1] == 's' && yyi < yycount) + { + yyres += symbol_name (yyarg[yyi++]); + ++yyp; + } + else + yyres += *yyp; + return yyres; + }]])[ + + void + ]b4_parser_class[::yy_destroy_ (const char* yymsg, symbol_kind_type yykind, + value_type& yyval]b4_locations_if([[, + location_type& yyloc]])[) + { + YY_USE (yyval);]b4_locations_if([[ + YY_USE (yyloc);]])[ + if (!yymsg) + yymsg = "Deleting"; + ]b4_parser_class[& yyparser = *this; + YY_USE (yyparser); + YY_SYMBOL_PRINT (yymsg, yykind, yyval, yyloc); + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + ]m4_do([m4_pushdef([b4_symbol_action], m4_defn([b4_symbol_action_for_yyval]))], + [b4_symbol_actions([destructor])], + [m4_popdef([b4_symbol_action])])[ + YY_IGNORE_MAYBE_UNINITIALIZED_END + } + +#if ]b4_api_PREFIX[DEBUG + /*--------------------. + | Print this symbol. | + `--------------------*/ + + void + ]b4_parser_class[::yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const + {]b4_locations_if([[ + YY_USE (yyloc);]])[ + YY_USE (yyval); + std::ostream& yyo = debug_stream (); + YY_USE (yyo); + ]m4_do([m4_pushdef([b4_symbol_action], m4_defn([b4_symbol_action_for_yyval]))], + [b4_symbol_actions([printer])], + [m4_popdef([b4_symbol_action])])[ + } + + void + ]b4_parser_class[::yy_symbol_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const + { + *yycdebug_ << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << symbol_name (yykind) << " ("]b4_locations_if([[ + << yyloc << ": "]])[; + yy_symbol_value_print_ (yykind, yyval]b4_locations_if([[, yyloc]])[); + *yycdebug_ << ')'; + } + + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + // Actually, it is yydebug which is really used. + yydebug = l; + } +#endif // ]b4_api_PREFIX[DEBUG + +]b4_token_ctor_if([], [b4_yytranslate_define([cc])])[ + +]b4_token_ctor_if([], [[ + /*---------. + | symbol. | + `---------*/ +]b4_public_types_define([cc])])[ +]b4_namespace_close[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/MinSizeRel/data/skeletons/java-skel.m4 b/bison/MinSizeRel/data/skeletons/java-skel.m4 new file mode 100644 index 0000000..11cbc49 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/java-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# Java skeleton dispatching for Bison. + +# Copyright (C) 2007, 2009-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [b4_complain([%%glr-parser not supported for Java])]) +b4_nondeterministic_if([b4_complain([%%nondeterministic-parser not supported for Java])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.java]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/bison/MinSizeRel/data/skeletons/java.m4 b/bison/MinSizeRel/data/skeletons/java.m4 new file mode 100644 index 0000000..8b0828b --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/java.m4 @@ -0,0 +1,502 @@ + -*- Autoconf -*- + +# Java language support for Bison + +# Copyright (C) 2007-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c-like.m4]) + + +# b4_list2(LIST1, LIST2) +# ---------------------- +# Join two lists with a comma if necessary. +m4_define([b4_list2], + [$1[]m4_ifval(m4_quote($1), [m4_ifval(m4_quote($2), [[, ]])])[]$2]) + + +# b4_percent_define_get3(DEF, PRE, POST, NOT) +# ------------------------------------------- +# Expand to the value of DEF surrounded by PRE and POST if it's %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_get3], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$2[]b4_percent_define_get([$1])[]$3], [$4])]) + + + +# b4_flag_value(BOOLEAN-FLAG) +# --------------------------- +m4_define([b4_flag_value], [b4_flag_if([$1], [true], [false])]) + + +# b4_parser_class_declaration +# --------------------------- +# The declaration of the parser class ("class YYParser"), with all its +# qualifiers/annotations. +b4_percent_define_default([[api.parser.abstract]], [[false]]) +b4_percent_define_default([[api.parser.final]], [[false]]) +b4_percent_define_default([[api.parser.public]], [[false]]) +b4_percent_define_default([[api.parser.strictfp]], [[false]]) + +m4_define([b4_parser_class_declaration], +[b4_percent_define_get3([api.parser.annotations], [], [ ])dnl +b4_percent_define_flag_if([api.parser.public], [public ])dnl +b4_percent_define_flag_if([api.parser.abstract], [abstract ])dnl +b4_percent_define_flag_if([api.parser.final], [final ])dnl +b4_percent_define_flag_if([api.parser.strictfp], [strictfp ])dnl +[class ]b4_parser_class[]dnl +b4_percent_define_get3([api.parser.extends], [ extends ])dnl +b4_percent_define_get3([api.parser.implements], [ implements ])]) + + +# b4_lexer_if(TRUE, FALSE) +# ------------------------ +m4_define([b4_lexer_if], +[b4_percent_code_ifdef([[lexer]], [$1], [$2])]) + + +# b4_identification +# ----------------- +m4_define([b4_identification], +[[ /** Version number for the Bison executable that generated this parser. */ + public static final String bisonVersion = "]b4_version_string["; + + /** Name of the skeleton that generated this parser. */ + public static final String bisonSkeleton = ]b4_skeleton[; +]]) + + +## ------------ ## +## Data types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# MIN to MAX (included). +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-128], [127]), [1], [byte], + b4_ints_in($@, [-32768], [32767]), [1], [short], + [int])]) + +# b4_int_type_for(NAME) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# 'NAME_min' to 'NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + +# b4_null +# ------- +m4_define([b4_null], [null]) + + +# b4_typed_parser_table_define(TYPE, NAME, DATA, COMMENT) +# ------------------------------------------------------- +# We use intermediate functions (e.g., yypact_init) to work around the +# 64KB limit for JVM methods. See +# https://lists.gnu.org/r/help-bison/2008-11/msg00004.html. +m4_define([b4_typed_parser_table_define], +[m4_ifval([$4], [b4_comment([$4]) + ])dnl +[private static final ]$1[[] yy$2_ = yy$2_init(); + private static final ]$1[[] yy$2_init() + { + return new ]$1[[] + { + ]$3[ + }; + }]]) + + +# b4_integral_parser_table_define(NAME, DATA, COMMENT) +#----------------------------------------------------- +m4_define([b4_integral_parser_table_define], +[b4_typed_parser_table_define([b4_int_type_for([$2])], [$1], [$2], [$3])]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + + +# b4_token_enum(TOKEN-NUM) +# ------------------------ +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_visible_if([$1], + [m4_format([[ /** Token %s, to be returned by the scanner. */ + static final int %s = %s%s; +]], + b4_symbol([$1], [tag]), + b4_symbol([$1], [id]), + b4_symbol([$1], b4_api_token_raw_if([[number]], [[code]])))])]) + + +# b4_token_enums +# -------------- +# Output the definition of the tokens (if there are) as enums. +m4_define([b4_token_enums], +[b4_any_token_visible_if([ /* Token kinds. */ +b4_symbol_foreach([b4_token_enum])])]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[SymbolKind.b4_symbol_kind_base($@)]) + + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-30s %s], + m4_format([[%s(%s)%s]], + b4_symbol([$1], [kind_base]), + [$1], + m4_if([$1], b4_last_symbol, [[;]], [[,]])), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +m4_define([b4_declare_symbol_enum], +[[ public enum SymbolKind + { +]b4_symbol_foreach([b4_symbol_enum])[ + + private final int yycode_; + + SymbolKind (int n) { + this.yycode_ = n; + } + + private static final SymbolKind[] values_ = { + ]m4_map_args_sep([b4_symbol_kind(], [)], [, + ], b4_symbol_numbers)[ + }; + + static final SymbolKind get(int code) { + return values_[code]; + } + + public final int getCode() { + return this.yycode_; + } + +]b4_parse_error_bmatch( +[simple\|verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + private static String yytnamerr_(String yystr) + { + if (yystr.charAt (0) == '"') + { + StringBuffer yyr = new StringBuffer(); + strip_quotes: for (int i = 1; i < yystr.length(); i++) + switch (yystr.charAt(i)) + { + case '\'': + case ',': + break strip_quotes; + + case '\\': + if (yystr.charAt(++i) != '\\') + break strip_quotes; + /* Fall through. */ + default: + yyr.append(yystr.charAt(i)); + break; + + case '"': + return yyr.toString(); + } + } + return yystr; + } + + /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at \a YYNTOKENS_, nonterminals. */ + ]b4_typed_parser_table_define([String], [tname], [b4_tname])[ + + /* The user-facing name of this symbol. */ + public final String getName() { + return yytnamerr_(yytname_[yycode_]); + } +]], +[custom\|detailed], +[[ /* YYNAMES_[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at \a YYNTOKENS_, nonterminals. */ + ]b4_typed_parser_table_define([String], [names], [b4_symbol_names])[ + + /* The user-facing name of this symbol. */ + public final String getName() { + return yynames_[yycode_]; + }]])[ + }; +]])]) + + + +# b4_case(ID, CODE, [COMMENTS]) +# ----------------------------- +# We need to fool Java's stupid unreachable code detection. +m4_define([b4_case], +[ case $1:m4_ifval([$3], [ b4_comment([$3])]) + if (yyn == $1) + $2; + break; +]) + + +# b4_predicate_case(LABEL, CONDITIONS) +# ------------------------------------ +m4_define([b4_predicate_case], +[ case $1: + if (! ($2)) YYERROR; + break; +]) + + +## -------- ## +## Checks. ## +## -------- ## + +b4_percent_define_check_kind([[api.value.type]], [code], [deprecated]) + +b4_percent_define_check_kind([[annotations]], [code], [deprecated]) +b4_percent_define_check_kind([[extends]], [code], [deprecated]) +b4_percent_define_check_kind([[implements]], [code], [deprecated]) +b4_percent_define_check_kind([[init_throws]], [code], [deprecated]) +b4_percent_define_check_kind([[lex_throws]], [code], [deprecated]) +b4_percent_define_check_kind([[api.parser.class]], [code], [deprecated]) +b4_percent_define_check_kind([[throws]], [code], [deprecated]) + + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +m4_define([b4_yystype], [b4_percent_define_get([[api.value.type]])]) +b4_percent_define_default([[api.value.type]], [[Object]]) +b4_percent_define_default([[api.symbol.prefix]], [[S_]]) + +# b4_api_prefix, b4_api_PREFIX +# ---------------------------- +# Corresponds to %define api.prefix +b4_percent_define_default([[api.prefix]], [[YY]]) +m4_define([b4_api_prefix], +[b4_percent_define_get([[api.prefix]])]) +m4_define([b4_api_PREFIX], +[m4_toupper(b4_api_prefix)]) + +# b4_prefix +# --------- +# If the %name-prefix is not given, it is api.prefix. +m4_define_default([b4_prefix], [b4_api_prefix]) + +b4_percent_define_default([[api.parser.class]], [b4_prefix[]Parser]) +m4_define([b4_parser_class], [b4_percent_define_get([[api.parser.class]])]) + +b4_percent_define_default([[lex_throws]], [[java.io.IOException]]) +m4_define([b4_lex_throws], [b4_percent_define_get([[lex_throws]])]) + +b4_percent_define_default([[throws]], []) +m4_define([b4_throws], [b4_percent_define_get([[throws]])]) + +b4_percent_define_default([[init_throws]], []) +m4_define([b4_init_throws], [b4_percent_define_get([[init_throws]])]) + +b4_percent_define_default([[api.location.type]], [Location]) +m4_define([b4_location_type], [b4_percent_define_get([[api.location.type]])]) + +b4_percent_define_default([[api.position.type]], [Position]) +m4_define([b4_position_type], [b4_percent_define_get([[api.position.type]])]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[i18n($1)]]) + + +# b4_trans(STRING) +# ---------------- +# Translate a string if i18n is enabled. Avoid collision with b4_translate. +m4_define([b4_trans], +[b4_has_translations_if([i18n($1)], [$1])]) + + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [(($3)($1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [((b4_symbol([$2], [type]))($1))], + [$1])], + [$1])])]) + + +# b4_lhs_value([SYMBOL-NUM], [TYPE]) +# ---------------------------------- +# See README. +m4_define([b4_lhs_value], [yyval]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[yystack.valueAt (b4_subtract($@))]) + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +# +# In this simple implementation, %token and %type have class names +# between the angle brackets. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2])], [$3], [$4])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[yystack.locationAt (b4_subtract($@))]) + + +# b4_lex_param +# b4_parse_param +# -------------- +# If defined, b4_lex_param arrives double quoted, but below we prefer +# it to be single quoted. Same for b4_parse_param. + +# TODO: should be in bison.m4 +m4_define_default([b4_lex_param], [[]]) +m4_define([b4_lex_param], b4_lex_param) +m4_define([b4_parse_param], b4_parse_param) + +# b4_lex_param_decl +# ----------------- +# Extra formal arguments of the constructor. +m4_define([b4_lex_param_decl], +[m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_decls(b4_lex_param))], + [$1])]) + +m4_define([b4_param_decls], + [m4_map([b4_param_decl], [$@])]) +m4_define([b4_param_decl], [, $1]) + +m4_define([b4_remove_comma], [m4_ifval(m4_quote($1), [$1, ], [])m4_shift2($@)]) + + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [b4_remove_comma([$1], + b4_param_decls(b4_parse_param))], + [$1])]) + + + +# b4_lex_param_call +# ----------------- +# Delegating the lexer parameters to the lexer constructor. +m4_define([b4_lex_param_call], + [m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_calls(b4_lex_param))], + [$1])]) +m4_define([b4_param_calls], + [m4_map([b4_param_call], [$@])]) +m4_define([b4_param_call], [, $2]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [b4_constructor_calls(b4_parse_param)])]) + +m4_define([b4_constructor_calls], + [m4_map([b4_constructor_call], [$@])]) +m4_define([b4_constructor_call], + [this.$2 = $2; + ]) + + + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + /* User arguments. */ +b4_var_decls(b4_parse_param)])]) + +m4_define([b4_var_decls], + [m4_map_sep([b4_var_decl], [ +], [$@])]) +m4_define([b4_var_decl], + [ protected final $1;]) + + + +# b4_maybe_throws(THROWS) +# ----------------------- +# Expand to either an empty string or "throws THROWS". +m4_define([b4_maybe_throws], + [m4_ifval($1, [ throws $1])]) diff --git a/bison/MinSizeRel/data/skeletons/lalr1.cc b/bison/MinSizeRel/data/skeletons/lalr1.cc new file mode 100644 index 0000000..7cb69d3 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/lalr1.cc @@ -0,0 +1,1633 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c++.m4]) + +# api.value.type=variant is valid. +m4_define([b4_value_type_setup_variant]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +# b4_tname_if(TNAME-NEEDED, TNAME-NOT-NEEDED) +# ------------------------------------------- +m4_define([b4_tname_if], +[m4_case(b4_percent_define_get([[parse.error]]), + [verbose], [$1], + [b4_token_table_if([$1], + [$2])])]) + + +# b4_integral_parser_table_declare(TABLE-NAME, CONTENT, COMMENT) +# -------------------------------------------------------------- +# Declare "parser::yy_" whose contents is CONTENT. +m4_define([b4_integral_parser_table_declare], +[m4_ifval([$3], [b4_comment([$3], [ ]) +])dnl + static const b4_int_type_for([$2]) yy$1_[[]];dnl +]) + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "parser::yy_" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[ const b4_int_type_for([$2]) + b4_parser_class::yy$1_[[]] = + { + $2 + };dnl +]) + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[symbol_kind::b4_symbol_kind_base($@)]) + + +# b4_symbol_value_template(VAL, SYMBOL-NUM, [TYPE]) +# ------------------------------------------------- +# Same as b4_symbol_value, but used in a template method. It makes +# a difference when using variants. Note that b4_value_type_setup_union +# overrides b4_symbol_value, so we must override it again. +m4_copy([b4_symbol_value], [b4_symbol_value_template]) +m4_append([b4_value_type_setup_union], +[m4_copy_force([b4_symbol_value_union], [b4_symbol_value_template])]) + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([yylhs.value], [$1], [$2])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[yylhs.location]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[yystack_@{b4_subtract($@)@}]) + + +# b4_rhs_state(RULE-LENGTH, POS) +# ------------------------------ +# The state corresponding to the symbol #POS, where the current +# rule has RULE-LENGTH symbols on RHS. +m4_define([b4_rhs_state], +[b4_rhs_data([$1], [$2]).state]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +m4_define([_b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).value], [$3], [$4])]) + +m4_define([b4_rhs_value], +[b4_percent_define_ifdef([api.value.automove], + [YY_MOVE (_b4_rhs_value($@))], + [_b4_rhs_value($@)])]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[b4_rhs_data([$1], [$2]).location]) + + +# b4_symbol_action(SYMBOL-NUM, KIND) +# ---------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[m4_pushdef([b4_symbol_value], m4_defn([b4_symbol_value_template]))[]dnl +b4_dollar_pushdef([yysym.value], + [$1], + [], + [yysym.location])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +m4_popdef([b4_symbol_value])[]dnl +b4_dollar_popdef[]dnl +])]) + + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_token_ctor_if( +[b4_function_call([yylex], + [symbol_type], m4_ifdef([b4_lex_param], b4_lex_param))], +[b4_function_call([yylex], [int], + [[value_type *], [&yyla.value]][]dnl +b4_locations_if([, [[location_type *], [&yyla.location]]])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param))])]) + + +m4_pushdef([b4_copyright_years], + [2002-2015, 2018-2021]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +b4_bison_locations_if([# Backward compatibility. + m4_define([b4_location_constructors]) + m4_include(b4_skeletonsdir/[location.cc])]) +m4_include(b4_skeletonsdir/[stack.hh]) +b4_variant_if([m4_include(b4_skeletonsdir/[variant.hh])]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[b4_percent_code_get([[requires]])[ +]b4_parse_assert_if([# include ])[ +# include // std::abort +# include +# include +# include +# include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +]b4_attribute_define[ +]b4_cast_define[ +]b4_null_define[ + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ +]b4_symbol_type_define[ + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + virtual ~]b4_parser_class[ (); + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + ]b4_parser_class[ (const ]b4_parser_class[&) = delete; + /// Non copyable. + ]b4_parser_class[& operator= (const ]b4_parser_class[&) = delete; +#endif + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + virtual int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const YY_ATTRIBUTE_PURE; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + typedef int debug_level_type; + /// The current debugging level. + debug_level_type debug_level () const YY_ATTRIBUTE_PURE; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + virtual void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + + /// Report a syntax error. + void error (const syntax_error& err); + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol);]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol); +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static std::string symbol_name (symbol_kind_type yysymbol);]])[ + +]b4_token_constructor_define[ +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + class context + { + public: + context (const ]b4_parser_class[& yyparser, const symbol_type& yyla); + const symbol_type& lookahead () const YY_NOEXCEPT { return yyla_; } + symbol_kind_type token () const YY_NOEXCEPT { return yyla_.kind (); }]b4_locations_if([[ + const location_type& location () const YY_NOEXCEPT { return yyla_.location; } +]])[ + /// Put in YYARG at most YYARGN of the expected tokens, and return the + /// number of tokens stored in YYARG. If YYARG is null, return the + /// number of expected tokens (guaranteed to be less than YYNTOKENS). + int expected_tokens (symbol_kind_type yyarg[], int yyargn) const; + + private: + const ]b4_parser_class[& yyparser_; + const symbol_type& yyla_; + }; +]])[ + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + ]b4_parser_class[ (const ]b4_parser_class[&); + /// Non copyable. + ]b4_parser_class[& operator= (const ]b4_parser_class[&); +#endif +]b4_lac_if([[ + /// Check the lookahead yytoken. + /// \returns true iff the token will be eventually shifted. + bool yy_lac_check_ (symbol_kind_type yytoken) const; + /// Establish the initial context if no initial context currently exists. + /// \returns true iff the token will be eventually shifted. + bool yy_lac_establish_ (symbol_kind_type yytoken); + /// Discard any previous initial lookahead context because of event. + /// \param event the event which caused the lookahead to be discarded. + /// Only used for debbuging output. + void yy_lac_discard_ (const char* event);]])[ + + /// Stored state numbers (used for stacks). + typedef ]b4_int_type(0, m4_eval(b4_states_number - 1))[ state_type; +]b4_parse_error_bmatch( +[custom], [[ + /// Report a syntax error + /// \param yyctx the context in which the error occurred. + void report_syntax_error (const context& yyctx) const;]], +[detailed\|verbose], [[ + /// The arguments of the error message. + int yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const; + + /// Generate an error message. + /// \param yyctx the context in which the error occurred. + virtual std::string yysyntax_error_ (const context& yyctx) const;]])[ + /// Compute post-reduction state. + /// \param yystate the current state + /// \param yysym the nonterminal to push on the stack + static state_type yy_lr_goto_state_ (state_type yystate, int yysym); + + /// Whether the given \c yypact_ value indicates a defaulted state. + /// \param yyvalue the value to check + static bool yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT; + + /// Whether the given \c yytable_ value indicates a syntax error. + /// \param yyvalue the value to check + static bool yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT; + + static const ]b4_int_type(b4_pact_ninf, b4_pact_ninf)[ yypact_ninf_; + static const ]b4_int_type(b4_table_ninf, b4_table_ninf)[ yytable_ninf_; + + /// Convert a scanner token kind \a t to a symbol kind. + /// In theory \a t should be a token_kind_type, but character literals + /// are valid, yet not members of the token_kind_type enum. + static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT; + +]b4_parse_error_bmatch( +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// For a symbol, its name in clear. + static const char* const yytname_[]; +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// Convert the symbol name \a n to a form suitable for a diagnostic. + static std::string yytnamerr_ (const char *yystr); + + /// For a symbol, its name in clear. + static const char* const yytname_[]; +]])[ + + // Tables. +]b4_parser_tables_declare[ + +#if ]b4_api_PREFIX[DEBUG +]b4_integral_parser_table_declare([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ + /// Report on the debug stream that the rule \a r is going to be reduced. + virtual void yy_reduce_print_ (int r) const; + /// Print the state stack on the debug stream. + virtual void yy_stack_print_ () const; + + /// Debugging level. + int yydebug_; + /// Debug stream. + std::ostream* yycdebug_; + + /// \brief Display a symbol kind, value and location. + /// \param yyo The output stream. + /// \param yysym The symbol. + template + void yy_print_ (std::ostream& yyo, const basic_symbol& yysym) const; +#endif + + /// \brief Reclaim the memory associated to a symbol. + /// \param yymsg Why this token is reclaimed. + /// If null, print nothing. + /// \param yysym The symbol. + template + void yy_destroy_ (const char* yymsg, basic_symbol& yysym) const; + + private: + /// Type access provider for state based symbols. + struct by_state + { + /// Default constructor. + by_state () YY_NOEXCEPT; + + /// The symbol kind as needed by the constructor. + typedef state_type kind_type; + + /// Constructor. + by_state (kind_type s) YY_NOEXCEPT; + + /// Copy constructor. + by_state (const by_state& that) YY_NOEXCEPT; + + /// Record that this symbol is empty. + void clear () YY_NOEXCEPT; + + /// Steal the symbol kind from \a that. + void move (by_state& that); + + /// The symbol kind (corresponding to \a state). + /// \a ]b4_symbol(empty, kind)[ when empty. + symbol_kind_type kind () const YY_NOEXCEPT; + + /// The state number used to denote an empty symbol. + /// We use the initial state, as it does not have a value. + enum { empty_state = 0 }; + + /// The state. + /// \a empty when empty. + state_type state; + }; + + /// "Internal" symbol: element of the stack. + struct stack_symbol_type : basic_symbol + { + /// Superclass. + typedef basic_symbol super_type; + /// Construct an empty symbol. + stack_symbol_type (); + /// Move or copy construction. + stack_symbol_type (YY_RVREF (stack_symbol_type) that); + /// Steal the contents from \a sym to build this. + stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) sym); +#if YY_CPLUSPLUS < 201103L + /// Assignment, needed by push_back by some old implementations. + /// Moves the contents of that. + stack_symbol_type& operator= (stack_symbol_type& that); + + /// Assignment, needed by push_back by other implementations. + /// Needed by some other old implementations. + stack_symbol_type& operator= (const stack_symbol_type& that); +#endif + }; + +]b4_stack_define[ + + /// Stack type. + typedef stack stack_type; + + /// The stack. + stack_type yystack_;]b4_lac_if([[ + /// The stack for LAC. + /// Logically, the yy_lac_stack's lifetime is confined to the function + /// yy_lac_check_. We just store it as a member of this class to hold + /// on to the memory and to avoid frequent reallocations. + /// Since yy_lac_check_ is const, this member must be mutable. + mutable std::vector yylac_stack_; + /// Whether an initial LAC context was established. + bool yy_lac_established_; +]])[ + + /// Push a new state on the stack. + /// \param m a debug message to display + /// if null, no trace is output. + /// \param sym the symbol + /// \warning the contents of \a s.value is stolen. + void yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym); + + /// Push a new look ahead token on the state on the stack. + /// \param m a debug message to display + /// if null, no trace is output. + /// \param s the state + /// \param sym the symbol (for its value and location). + /// \warning the contents of \a sym.value is stolen. + void yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym); + + /// Pop \a n symbols from the stack. + void yypop_ (int n = 1) YY_NOEXCEPT; + + /// Constants. + enum + { + yylast_ = ]b4_last[, ///< Last index in yytable_. + yynnts_ = ]b4_nterms_number[, ///< Number of nonterminal symbols. + yyfinal_ = ]b4_final_state_number[ ///< Termination state number. + }; + +]b4_parse_param_vars[ +]b4_percent_code_get([[yy_bison_internal_hook]])[ + }; + +]b4_token_ctor_if([b4_yytranslate_define([$1])[ +]b4_public_types_define([$1])])[ +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]])[ + + +## -------------- ## +## Output files. ## +## -------------- ## + +# ------------- # +# Header file. # +# ------------- # + +]b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Skeleton interface for Bison LALR(1) parsers in C++])[ + +/** + ** \file ]b4_spec_mapped_header_file[ + ** Define the ]b4_namespace_ref[::parser class. + */ + +// C++ LALR(1) parser skeleton written by Akim Demaille. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations(hh)[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end[ +]])[ + + +# --------------------- # +# Implementation file. # +# --------------------- # + +]b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison LALR(1) parsers in C++])[ +]b4_disclaimer[ +]b4_percent_code_get([[top]])[]dnl +m4_if(b4_prefix, [yy], [], +[ +// Take the name prefix into account. +[#]define yylex b4_prefix[]lex])[ + +]b4_user_pre_prologue[ + +]b4_header_if([[#include "@basename(]b4_spec_header_file[@)"]], + [b4_shared_declarations([cc])])[ + +]b4_user_post_prologue[ +]b4_percent_code_get[ + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include // FIXME: INFRINGES ON USER NAME SPACE. +# define YY_(msgid) dgettext ("bison-runtime", msgid) +# endif +# endif +# ifndef YY_ +# define YY_(msgid) msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +]b4_locations_if([dnl +[#define YYRHSLOC(Rhs, K) ((Rhs)[K].location) +]b4_yylloc_default_define])[ + +// Enable debugging if requested. +#if ]b4_api_PREFIX[DEBUG + +// A pseudo ostream that takes yydebug_ into account. +# define YYCDEBUG if (yydebug_) (*yycdebug_) + +# define YY_SYMBOL_PRINT(Title, Symbol) \ + do { \ + if (yydebug_) \ + { \ + *yycdebug_ << Title << ' '; \ + yy_print_ (*yycdebug_, Symbol); \ + *yycdebug_ << '\n'; \ + } \ + } while (false) + +# define YY_REDUCE_PRINT(Rule) \ + do { \ + if (yydebug_) \ + yy_reduce_print_ (Rule); \ + } while (false) + +# define YY_STACK_PRINT() \ + do { \ + if (yydebug_) \ + yy_stack_print_ (); \ + } while (false) + +#else // !]b4_api_PREFIX[DEBUG + +# define YYCDEBUG if (false) std::cerr +# define YY_SYMBOL_PRINT(Title, Symbol) YY_USE (Symbol) +# define YY_REDUCE_PRINT(Rule) static_cast (0) +# define YY_STACK_PRINT() static_cast (0) + +#endif // !]b4_api_PREFIX[DEBUG + +#define yyerrok (yyerrstatus_ = 0) +#define yyclearin (yyla.clear ()) + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab +#define YYRECOVERING() (!!yyerrstatus_) + +]b4_namespace_open[ + /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[) +#if ]b4_api_PREFIX[DEBUG + : yydebug_ (false), + yycdebug_ (&std::cerr)]b4_lac_if([,], [m4_ifset([b4_parse_param], [,])])[ +#else +]b4_lac_if([ :], [m4_ifset([b4_parse_param], [ :])])[ +#endif]b4_lac_if([[ + yy_lac_established_ (false)]m4_ifset([b4_parse_param], [,])])[]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + /*---------. + | symbol. | + `---------*/ + +]b4_token_ctor_if([], [b4_public_types_define([cc])])[ + + // by_state. + ]b4_parser_class[::by_state::by_state () YY_NOEXCEPT + : state (empty_state) + {} + + ]b4_parser_class[::by_state::by_state (const by_state& that) YY_NOEXCEPT + : state (that.state) + {} + + void + ]b4_parser_class[::by_state::clear () YY_NOEXCEPT + { + state = empty_state; + } + + void + ]b4_parser_class[::by_state::move (by_state& that) + { + state = that.state; + that.clear (); + } + + ]b4_parser_class[::by_state::by_state (state_type s) YY_NOEXCEPT + : state (s) + {} + + ]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_state::kind () const YY_NOEXCEPT + { + if (state == empty_state) + return ]b4_symbol(empty, kind)[; + else + return YY_CAST (symbol_kind_type, yystos_[+state]); + } + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type () + {} + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type (YY_RVREF (stack_symbol_type) that) + : super_type (YY_MOVE (that.state)]b4_variant_if([], [, YY_MOVE (that.value)])b4_locations_if([, YY_MOVE (that.location)])[) + {]b4_variant_if([ + b4_symbol_variant([that.kind ()], + [value], [YY_MOVE_OR_COPY], [YY_MOVE (that.value)])])[ +#if 201103L <= YY_CPLUSPLUS + // that is emptied. + that.state = empty_state; +#endif + } + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) that) + : super_type (s]b4_variant_if([], [, YY_MOVE (that.value)])[]b4_locations_if([, YY_MOVE (that.location)])[) + {]b4_variant_if([ + b4_symbol_variant([that.kind ()], + [value], [move], [YY_MOVE (that.value)])])[ + // that is emptied. + that.kind_ = ]b4_symbol(empty, kind)[; + } + +#if YY_CPLUSPLUS < 201103L + ]b4_parser_class[::stack_symbol_type& + ]b4_parser_class[::stack_symbol_type::operator= (const stack_symbol_type& that) + { + state = that.state; + ]b4_variant_if([b4_symbol_variant([that.kind ()], + [value], [copy], [that.value])], + [[value = that.value;]])[]b4_locations_if([ + location = that.location;])[ + return *this; + } + + ]b4_parser_class[::stack_symbol_type& + ]b4_parser_class[::stack_symbol_type::operator= (stack_symbol_type& that) + { + state = that.state; + ]b4_variant_if([b4_symbol_variant([that.kind ()], + [value], [move], [that.value])], + [[value = that.value;]])[]b4_locations_if([ + location = that.location;])[ + // that is emptied. + that.state = empty_state; + return *this; + } +#endif + + template + void + ]b4_parser_class[::yy_destroy_ (const char* yymsg, basic_symbol& yysym) const + { + if (yymsg) + YY_SYMBOL_PRINT (yymsg, yysym);]b4_variant_if([], [ + + // User destructor. + b4_symbol_actions([destructor], [yysym.kind ()])])[ + } + +#if ]b4_api_PREFIX[DEBUG + template + void + ]b4_parser_class[::yy_print_ (std::ostream& yyo, const basic_symbol& yysym) const + { + std::ostream& yyoutput = yyo; + YY_USE (yyoutput); + if (yysym.empty ()) + yyo << "empty symbol"; + else + { + symbol_kind_type yykind = yysym.kind (); + yyo << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << yysym.name () << " ("]b4_locations_if([ + << yysym.location << ": "])[; + ]b4_symbol_actions([printer])[ + yyo << ')'; + } + } +#endif + + void + ]b4_parser_class[::yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym) + { + if (m) + YY_SYMBOL_PRINT (m, sym); + yystack_.push (YY_MOVE (sym)); + } + + void + ]b4_parser_class[::yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym) + { +#if 201103L <= YY_CPLUSPLUS + yypush_ (m, stack_symbol_type (s, std::move (sym))); +#else + stack_symbol_type ss (s, sym); + yypush_ (m, ss); +#endif + } + + void + ]b4_parser_class[::yypop_ (int n) YY_NOEXCEPT + { + yystack_.pop (n); + } + +#if ]b4_api_PREFIX[DEBUG + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug_; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + yydebug_ = l; + } +#endif // ]b4_api_PREFIX[DEBUG + + ]b4_parser_class[::state_type + ]b4_parser_class[::yy_lr_goto_state_ (state_type yystate, int yysym) + { + int yyr = yypgoto_[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - YYNTOKENS]; + } + + bool + ]b4_parser_class[::yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT + { + return yyvalue == yypact_ninf_; + } + + bool + ]b4_parser_class[::yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT + { + return yyvalue == yytable_ninf_; + } + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + int yyn; + /// Length of the RHS of the rule being reduced. + int yylen = 0; + + // Error handling. + int yynerrs_ = 0; + int yyerrstatus_ = 0; + + /// The lookahead symbol. + symbol_type yyla;]b4_locations_if([[ + + /// The locations where the error started and ended. + stack_symbol_type yyerror_range[3];]])[ + + /// The return value of parse (). + int yyresult;]b4_lac_if([[ + + // Discard the LAC context in case there still is one left from a + // previous invocation. + yy_lac_discard_ ("init");]])[ + +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + { + YYCDEBUG << "Starting parse\n"; + +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yyla.value], [], [], [yyla.location])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl + + [ /* Initialize the stack. The initial state will be set in + yynewstate, since the latter expects the semantical and the + location values to have been already stored, initialize these + stacks with a primary value. */ + yystack_.clear (); + yypush_ (YY_NULLPTR, 0, YY_MOVE (yyla)); + + /*-----------------------------------------------. + | yynewstate -- push a new symbol on the stack. | + `-----------------------------------------------*/ + yynewstate: + YYCDEBUG << "Entering state " << int (yystack_[0].state) << '\n'; + YY_STACK_PRINT (); + + // Accept? + if (yystack_[0].state == yyfinal_) + YYACCEPT; + + goto yybackup; + + + /*-----------. + | yybackup. | + `-----------*/ + yybackup: + // Try to take a decision without lookahead. + yyn = yypact_[+yystack_[0].state]; + if (yy_pact_value_is_default_ (yyn)) + goto yydefault; + + // Read a lookahead token. + if (yyla.empty ()) + { + YYCDEBUG << "Reading a token\n"; +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + {]b4_token_ctor_if([[ + symbol_type yylookahead (]b4_yylex[); + yyla.move (yylookahead);]], [[ + yyla.kind_ = yytranslate_ (]b4_yylex[);]])[ + } +#if YY_EXCEPTIONS + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n'; + error (yyexc); + goto yyerrlab1; + } +#endif // YY_EXCEPTIONS + } + YY_SYMBOL_PRINT ("Next token is", yyla); + + if (yyla.kind () == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yyla.kind_ = ]b4_symbol(undef, kind)[; + goto yyerrlab1; + } + + /* If the proper action on seeing token YYLA.TYPE is to reduce or + to detect an error, take that action. */ + yyn += yyla.kind (); + if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yyla.kind ()) + {]b4_lac_if([[ + if (!yy_lac_establish_ (yyla.kind ())) + goto yyerrlab;]])[ + goto yydefault; + } + + // Reduce or error. + yyn = yytable_[yyn]; + if (yyn <= 0) + { + if (yy_table_value_is_error_ (yyn)) + goto yyerrlab;]b4_lac_if([[ + if (!yy_lac_establish_ (yyla.kind ())) + goto yyerrlab; +]])[ + yyn = -yyn; + goto yyreduce; + } + + // Count tokens shifted since error; after three, turn off error status. + if (yyerrstatus_) + --yyerrstatus_; + + // Shift the lookahead token. + yypush_ ("Shifting", state_type (yyn), YY_MOVE (yyla));]b4_lac_if([[ + yy_lac_discard_ ("shift");]])[ + goto yynewstate; + + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + yydefault: + yyn = yydefact_[+yystack_[0].state]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + + /*-----------------------------. + | yyreduce -- do a reduction. | + `-----------------------------*/ + yyreduce: + yylen = yyr2_[yyn]; + { + stack_symbol_type yylhs; + yylhs.state = yy_lr_goto_state_ (yystack_[yylen].state, yyr1_[yyn]);]b4_variant_if([[ + /* Variants are always initialized to an empty instance of the + correct type. The default '$$ = $1' action is NOT applied + when using variants. */ + ]b4_symbol_variant([[yyr1_@{yyn@}]], [yylhs.value], [emplace])], [[ + /* If YYLEN is nonzero, implement the default value of the + action: '$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYLHS.VALUE to garbage. + This behavior is undocumented and Bison users should not rely + upon it. */ + if (yylen) + yylhs.value = yystack_@{yylen - 1@}.value; + else + yylhs.value = yystack_@{0@}.value;]])[ +]b4_locations_if([dnl +[ + // Default location. + { + stack_type::slice range (yystack_, yylen); + YYLLOC_DEFAULT (yylhs.location, range, yylen); + yyerror_range[1].location = yylhs.location; + }]])[ + + // Perform the reduction. + YY_REDUCE_PRINT (yyn); +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + { + switch (yyn) + { +]b4_user_actions[ + default: + break; + } + } +#if YY_EXCEPTIONS + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n'; + error (yyexc); + YYERROR; + } +#endif // YY_EXCEPTIONS + YY_SYMBOL_PRINT ("-> $$ =", yylhs); + yypop_ (yylen); + yylen = 0; + + // Shift the result of the reduction. + yypush_ (YY_NULLPTR, YY_MOVE (yylhs)); + } + goto yynewstate; + + + /*--------------------------------------. + | yyerrlab -- here on detecting error. | + `--------------------------------------*/ + yyerrlab: + // If not already recovering from an error, report this error. + if (!yyerrstatus_) + { + ++yynerrs_;]b4_parse_error_case( + [simple], [[ + std::string msg = YY_("syntax error"); + error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]], + [custom], [[ + context yyctx (*this, yyla); + report_syntax_error (yyctx);]], + [[ + context yyctx (*this, yyla); + std::string msg = yysyntax_error_ (yyctx); + error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]])[ + } + +]b4_locations_if([[ + yyerror_range[1].location = yyla.location;]])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + // Return failure if at end of input. + if (yyla.kind () == ]b4_symbol(eof, kind)[) + YYABORT; + else if (!yyla.empty ()) + { + yy_destroy_ ("Error: discarding", yyla); + yyla.clear (); + } + } + + // Else will try to reuse lookahead token after shifting the error token. + goto yyerrlab1; + + + /*---------------------------------------------------. + | yyerrorlab -- error raised explicitly by YYERROR. | + `---------------------------------------------------*/ + yyerrorlab: + /* Pacify compilers when the user code never invokes YYERROR and + the label yyerrorlab therefore never appears in user code. */ + if (false) + YYERROR; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ + yypop_ (yylen); + yylen = 0; + YY_STACK_PRINT (); + goto yyerrlab1; + + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + yyerrlab1: + yyerrstatus_ = 3; // Each real token shifted decrements this. + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[+yystack_[0].state]; + if (!yy_pact_value_is_default_ (yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= yylast_ + && yycheck_[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + // Pop the current state because it cannot handle the error token. + if (yystack_.size () == 1) + YYABORT; +]b4_locations_if([[ + yyerror_range[1].location = yystack_[0].location;]])[ + yy_destroy_ ("Error: popping", yystack_[0]); + yypop_ (); + YY_STACK_PRINT (); + } + { + stack_symbol_type error_token; +]b4_locations_if([[ + yyerror_range[2].location = yyla.location; + YYLLOC_DEFAULT (error_token.location, yyerror_range, 2);]])[ + + // Shift the error token.]b4_lac_if([[ + yy_lac_discard_ ("error recovery");]])[ + error_token.state = state_type (yyn); + yypush_ ("Shifting", YY_MOVE (error_token)); + } + goto yynewstate; + + + /*-------------------------------------. + | yyacceptlab -- YYACCEPT comes here. | + `-------------------------------------*/ + yyacceptlab: + yyresult = 0; + goto yyreturn; + + + /*-----------------------------------. + | yyabortlab -- YYABORT comes here. | + `-----------------------------------*/ + yyabortlab: + yyresult = 1; + goto yyreturn; + + + /*-----------------------------------------------------. + | yyreturn -- parsing is finished, return the result. | + `-----------------------------------------------------*/ + yyreturn: + if (!yyla.empty ()) + yy_destroy_ ("Cleanup: discarding lookahead", yyla); + + /* Do not reclaim the symbols of the rule whose action triggered + this YYABORT or YYACCEPT. */ + yypop_ (yylen); + YY_STACK_PRINT (); + while (1 < yystack_.size ()) + { + yy_destroy_ ("Cleanup: popping", yystack_[0]); + yypop_ (); + } + + return yyresult; + } +#if YY_EXCEPTIONS + catch (...) + { + YYCDEBUG << "Exception caught: cleaning lookahead and stack\n"; + // Do not try to display the values of the reclaimed symbols, + // as their printers might throw an exception. + if (!yyla.empty ()) + yy_destroy_ (YY_NULLPTR, yyla); + + while (1 < yystack_.size ()) + { + yy_destroy_ (YY_NULLPTR, yystack_[0]); + yypop_ (); + } + throw; + } +#endif // YY_EXCEPTIONS + } + + void + ]b4_parser_class[::error (const syntax_error& yyexc) + { + error (]b4_join(b4_locations_if([yyexc.location]), + [[yyexc.what ()]])[); + } + +]b4_parse_error_bmatch([custom\|detailed], +[[ const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ + } +]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytname_[yysymbol]; + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + std::string + ]b4_parser_class[::yytnamerr_ (const char *yystr) + { + if (*yystr == '"') + { + std::string yyr; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + yyr += *yyp; + break; + + case '"': + return yyr; + } + do_not_strip_quotes: ; + } + + return yystr; + } + + std::string + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytnamerr_ (yytname_[yysymbol]); + } +]])[ + +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // ]b4_parser_class[::context. + ]b4_parser_class[::context::context (const ]b4_parser_class[& yyparser, const symbol_type& yyla) + : yyparser_ (yyparser) + , yyla_ (yyla) + {} + + int + ]b4_parser_class[::context::expected_tokens (symbol_kind_type yyarg[], int yyargn) const + { + // Actual number of expected tokens + int yycount = 0; +]b4_lac_if([[ +#if ]b4_api_PREFIX[DEBUG + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + if (!yyparser_.yy_lac_established_) + yyparser_.yy_lac_check_ (yyla_.kind ()); +#endif + + for (int yyx = 0; yyx < YYNTOKENS; ++yyx) + { + symbol_kind_type yysym = YY_CAST (symbol_kind_type, yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser_.yy_lac_check_ (yysym)) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + const int yyn = yypact_[+yyparser_.yystack_[0].state]; + if (!yy_pact_value_is_default_ (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + const int yyxbegin = yyn < 0 ? -yyn : 0; + // Stay within bounds of both yycheck and yytname. + const int yychecklim = yylast_ - yyn + 1; + const int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yy_table_value_is_error_ (yytable_[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (symbol_kind_type, yyx); + } + } +]])[ + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; + } + +]])[ + +]b4_lac_if([[ + bool + ]b4_parser_class[::yy_lac_check_ (symbol_kind_type yytoken) const + { + // Logically, the yylac_stack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + yylac_stack_.clear (); + // Reduce until we encounter a shift and thereby accept the token. +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << "LAC: checking lookahead " << symbol_name (yytoken) << ':'; +#endif + std::ptrdiff_t lac_top = 0; + while (true) + { + state_type top_state = (yylac_stack_.empty () + ? yystack_[lac_top].state + : yylac_stack_.back ()); + int yyrule = yypact_[+top_state]; + if (yy_pact_value_is_default_ (yyrule) + || (yyrule += yytoken) < 0 || yylast_ < yyrule + || yycheck_[yyrule] != yytoken) + { + // Use the default action. + yyrule = yydefact_[+top_state]; + if (yyrule == 0) + { + YYCDEBUG << " Err\n"; + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yy_table_value_is_error_ (yyrule)) + { + YYCDEBUG << " Err\n"; + return false; + } + if (0 < yyrule) + { + YYCDEBUG << " S" << yyrule << '\n'; + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. + YYCDEBUG << " R" << yyrule - 1; + // Pop the corresponding number of values from the stack. + { + std::ptrdiff_t yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + std::ptrdiff_t lac_size = std::ptrdiff_t (yylac_stack_.size ()); + if (yylen < lac_size) + { + yylac_stack_.resize (std::size_t (lac_size - yylen)); + yylen = 0; + } + else if (lac_size) + { + yylac_stack_.clear (); + yylen -= lac_size; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lac_top. + lac_top += yylen; + } + // Keep top_state in sync with the updated stack. + top_state = (yylac_stack_.empty () + ? yystack_[lac_top].state + : yylac_stack_.back ()); + // Push the resulting state of the reduction. + state_type state = yy_lr_goto_state_ (top_state, yyr1_[yyrule]); + YYCDEBUG << " G" << int (state); + yylac_stack_.push_back (state); + } + } + + // Establish the initial context if no initial context currently exists. + bool + ]b4_parser_class[::yy_lac_establish_ (symbol_kind_type yytoken) + { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yy_lac_establish_ should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yy_lac_establish_ is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yy_lac_established_) + return true; + else + { +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << "LAC: initial context established for " + << symbol_name (yytoken) << '\n'; +#endif + yy_lac_established_ = true; + return yy_lac_check_ (yytoken); + } + } + + // Discard any previous initial lookahead context. + void + ]b4_parser_class[::yy_lac_discard_ (const char* event) + { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yy_lac_established_) + { + YYCDEBUG << "LAC: initial context discarded due to " + << event << '\n'; + yy_lac_established_ = false; + } + }]])[ + +]b4_parse_error_bmatch([detailed\|verbose], [[ + int + ]b4_parser_class[::yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const + { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yyla) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is + a consistent state with a default action. There might have + been a previous inconsistent state, consistent state with a + non-default action, or user semantic action that manipulated + yyla. (However, yyla is currently not documented for users.)]b4_lac_if([[ + In the first two cases, it might appear that the current syntax + error should have been detected in the previous state when + yy_lac_check was invoked. However, at that time, there might + have been a different syntax error that discarded a different + initial context during error recovery, leaving behind the + current lookahead.]], [[ + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state.]])[ + */ + + if (!yyctx.lookahead ().empty ()) + { + if (yyarg) + yyarg[0] = yyctx.token (); + int yyn = yyctx.expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1); + return yyn + 1; + } + return 0; + } + + // Generate an error message. + std::string + ]b4_parser_class[::yysyntax_error_ (const context& yyctx) const + { + // Its maximum. + enum { YYARGS_MAX = 5 }; + // Arguments of yyformat. + symbol_kind_type yyarg[YYARGS_MAX]; + int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX); + + char const* yyformat = YY_NULLPTR; + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: // Avoid compiler warnings. + YYCASE_ (0, YY_("syntax error")); + YYCASE_ (1, YY_("syntax error, unexpected %s")); + YYCASE_ (2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_ (3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_ (4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_ (5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + std::string yyres; + // Argument number. + std::ptrdiff_t yyi = 0; + for (char const* yyp = yyformat; *yyp; ++yyp) + if (yyp[0] == '%' && yyp[1] == 's' && yyi < yycount) + { + yyres += symbol_name (yyarg[yyi++]); + ++yyp; + } + else + yyres += *yyp; + return yyres; + }]])[ + + + const ]b4_int_type(b4_pact_ninf, b4_pact_ninf) b4_parser_class::yypact_ninf_ = b4_pact_ninf[; + + const ]b4_int_type(b4_table_ninf, b4_table_ninf) b4_parser_class::yytable_ninf_ = b4_table_ninf[; + +]b4_parser_tables_define[ + +]b4_parse_error_bmatch([simple\|verbose], +[[#if ]b4_api_PREFIX[DEBUG]b4_tname_if([[ || 1]])[ + // YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + // First, the terminals, then, starting at \a YYNTOKENS, nonterminals. + const char* + const ]b4_parser_class[::yytname_[] = + { + ]b4_tname[ + }; +#endif +]])[ + +#if ]b4_api_PREFIX[DEBUG][ +]b4_integral_parser_table_define([rline], [b4_rline])[ + + void + ]b4_parser_class[::yy_stack_print_ () const + { + *yycdebug_ << "Stack now"; + for (stack_type::const_iterator + i = yystack_.begin (), + i_end = yystack_.end (); + i != i_end; ++i) + *yycdebug_ << ' ' << int (i->state); + *yycdebug_ << '\n'; + } + + void + ]b4_parser_class[::yy_reduce_print_ (int yyrule) const + { + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + // Print the symbols being reduced, and their result. + *yycdebug_ << "Reducing stack by rule " << yyrule - 1 + << " (line " << yylno << "):\n"; + // The symbols being reduced. + for (int yyi = 0; yyi < yynrhs; yyi++) + YY_SYMBOL_PRINT (" $" << yyi + 1 << " =", + ]b4_rhs_data(yynrhs, yyi + 1)[); + } +#endif // ]b4_api_PREFIX[DEBUG + +]b4_token_ctor_if([], [b4_yytranslate_define([cc])])[ +]b4_namespace_close[ +]b4_epilogue[]dnl +b4_output_end + + +m4_popdef([b4_copyright_years])dnl diff --git a/bison/MinSizeRel/data/skeletons/lalr1.d b/bison/MinSizeRel/data/skeletons/lalr1.d new file mode 100644 index 0000000..9730377 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/lalr1.d @@ -0,0 +1,1326 @@ +# D skeleton for Bison -*- autoconf -*- + +# Copyright (C) 2007-2012, 2019-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[d.m4]) + +b4_header_if([b4_complain([%header/%defines does not make sense in D])]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) + +# Define m4 conditional macros that encode the value +# of the api.push-pull flag. +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Define a macro to be true when api.push-pull has the value "both". +m4_define([b4_both_if],[b4_push_if([b4_pull_if([$1],[$2])],[$2])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + + +# Define a macro to encapsulate the parse state variables. This +# allows them to be defined either in parse() when doing pull parsing, +# or as class instance variable when doing push parsing. +b4_output_begin([b4_parser_file_name]) +b4_copyright([Skeleton implementation for Bison LALR(1) parsers in D], + [2007-2012, 2019-2021])[ +]b4_disclaimer[ +]b4_percent_define_ifdef([package], [module b4_percent_define_get([package]); +])[ +version(D_Version2) { +} else { + static assert(false, "need compiler for D Version 2"); +} + +]b4_user_pre_prologue[ +]b4_user_post_prologue[ +]b4_percent_code_get([[imports]])[ +import std.format; +import std.conv; + +/** + * Handle error message internationalisation. + */ +static if (!is(typeof(YY_))) { + version(YYENABLE_NLS) + { + version(ENABLE_NLS) + { + extern(C) char* dgettext(const char*, const char*); + string YY_(const char* s) + { + return to!string(dgettext("bison-runtime", s)); + } + } + } + static if (!is(typeof(YY_))) + { + pragma(inline, true) + string YY_(string msg) { return msg; } + } +} + +/** + * A Bison parser, automatically generated from ]m4_bpatsubst(b4_file_name, [^"\(.*\)"$], [\1])[. + * + * @@author LALR (1) parser skeleton written by Paolo Bonzini. + * Port to D language was done by Oliver Mangold. + */ + +/** + * Communication interface between the scanner and the Bison-generated + * parser ]b4_parser_class[. + */ +public interface Lexer +{ + /** + * Entry point for the scanner. Returns the token identifier corresponding + * to the next token and prepares to return the semantic value + * ]b4_locations_if([and beginning/ending positions ])[of the token. + * @@return the token identifier corresponding to the next token. */ + Symbol yylex (); + + /** + * Entry point for error reporting. Emits an error + * ]b4_locations_if([referring to the given location ])[in a user-defined way. + *]b4_locations_if([[ + * @@param loc The location of the element to which the + * error message is related]])[ + * @@param s The string for the error message. */ + void yyerror (]b4_locations_if([[const Location loc, ]])[string s); +]b4_parse_error_bmatch([custom], [[ + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + void reportSyntaxError(]b4_parser_class[.Context ctx); +]])[ +} + +]b4_public_types_declare[ + +]b4_locations_if([b4_position_type_if([[ +static assert(__traits(compiles, + (new Position[1])[0]=(new Position[1])[0]), + "struct/class Position must be default-constructible " + "and assignable"); +static assert(__traits(compiles, (new string[1])[0]=(new Position).toString()), + "error: struct/class Position must have toString method"); +]], [[ + /** + * A struct denoting a point in the input.*/ +public struct ]b4_position_type[ { + + /** The column index within the line of input. */ + public int column = 1; + /** The line number within an input file. */ + public int line = 1; + /** The name of the input file. */ + public string filename = null; + + /** + * A string representation of the position. */ + public string toString() const { + if (filename) + return format("%s:%d.%d", filename, line, column); + else + return format("%d.%d", line, column); + } +} +]])b4_location_type_if([[ +static assert(__traits(compiles, (new Location((new Position[1])[0]))) && + __traits(compiles, (new Location((new Position[1])[0], (new Position[1])[0]))), + "error: struct/class Location must have " + "default constructor and constructors this(Position) and this(Position, Position)."); +static assert(__traits(compiles, (new Location[1])[0].begin=(new Location[1])[0].begin) && + __traits(compiles, (new Location[1])[0].begin=(new Location[1])[0].end) && + __traits(compiles, (new Location[1])[0].end=(new Location[1])[0].begin) && + __traits(compiles, (new Location[1])[0].end=(new Location[1])[0].end), + "error: struct/class Location must have assignment-compatible " + "members/properties 'begin' and 'end'."); +static assert(__traits(compiles, (new string[1])[0]=(new Location[1])[0].toString()), + "error: struct/class Location must have toString method."); + +private immutable bool yy_location_is_class = !__traits(compiles, *(new Location((new Position[1])[0])));]], [[ +/** + * A struct defining a pair of positions. Positions, defined by the + * Position struct, denote a point in the input. + * Locations represent a part of the input through the beginning + * and ending positions. */ +public struct ]b4_location_type[ +{ + /** The first, inclusive, position in the range. */ + public Position begin; + + /** The first position beyond the range. */ + public Position end; + + /** + * Create a Location denoting an empty range located at + * a given point. + * @@param loc The position at which the range is anchored. */ + public this(Position loc) + { + this.begin = this.end = loc; + } + + /** + * Create a Location from the endpoints of the range. + * @@param begin The first position included in the range. + * @@param end The first position beyond the range. */ + public this(Position begin, Position end) + { + this.begin = begin; + this.end = end; + } + + /** + * Reset initial location to final location. + */ + public void step() + { + this.begin = this.end; + } + + /** + * A representation of the location. + */ + public string toString() const + { + auto end_col = 0 < end.column ? end.column - 1 : 0; + auto res = begin.toString (); + if (end.filename && begin.filename != end.filename) + res ~= "-" ~ format("%s:%d.%d", end.filename, end.line, end_col); + else if (begin.line < end.line) + res ~= "-" ~ format("%d.%d", end.line, end_col); + else if (begin.column < end_col) + res ~= "-" ~ format("%d", end_col); + return res; + } +} + +private immutable bool yy_location_is_class = false; + +]])])[]b4_value_type_setup[]m4_ifdef([b4_user_union_members], [private union YYSemanticType +{ +b4_user_union_members +};], +[m4_if(b4_tag_seen_flag, 0, +[[private alias int YYSemanticType;]])])[ +]b4_token_enums[ +]b4_parser_class_declaration[ +{ + ]b4_identification[ + +]b4_declare_symbol_enum[ + +]b4_locations_if([[ + private final Location yylloc_from_stack (ref YYStack rhs, int n) + { + static if (yy_location_is_class) { + if (n > 0) + return new Location (rhs.locationAt (n-1).begin, rhs.locationAt (0).end); + else + return new Location (rhs.locationAt (0).end); + } else { + if (n > 0) + return Location (rhs.locationAt (n-1).begin, rhs.locationAt (0).end); + else + return Location (rhs.locationAt (0).end); + } + }]])[ + +]b4_lexer_if([[ private class YYLexer implements Lexer { +]b4_percent_code_get([[lexer]])[ + } +]])[ + /** The object doing lexical analysis for us. */ + private Lexer yylexer; + +]b4_parse_param_vars[ + +]b4_lexer_if([[ + /** + * Instantiate the Bison-generated parser. + */ + public this] (b4_parse_param_decl([b4_lex_param_decl])[) { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new int[]; + this.yylacEstablished = false;]])[ + this (new YYLexer(]b4_lex_param_call[)); + } +]])[ + + /** + * Instantiate the Bison-generated parser. + * @@param yylexer The scanner that will supply tokens to the parser. + */ + ]b4_lexer_if([[protected]], [[public]]) [this (]b4_parse_param_decl([[Lexer yylexer]])[) { + this.yylexer = yylexer;]b4_parse_trace_if([[ + this.yyDebugStream = stderr;]])[ +]b4_parse_param_cons[ + } +]b4_parse_trace_if([[ + import std.stdio; + private File yyDebugStream; + + /** + * The File on which the debugging output is + * printed. + */ + public File getDebugStream () { return yyDebugStream; } + + /** + * Set the std.File on which the debug output is printed. + * @@param s The stream that is used for debugging output. + */ + public final void setDebugStream(File s) { yyDebugStream = s; } + + private int yydebug = 0; + + /** + * Answer the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + */ + public final int getDebugLevel() { return yydebug; } + + /** + * Set the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + * @@param level The verbosity level for debugging output. + */ + public final void setDebugLevel(int level) { yydebug = level; } + + protected final void yycdebug (string s) { + if (0 < yydebug) + yyDebugStream.write (s); + } + + protected final void yycdebugln (string s) { + if (0 < yydebug) + yyDebugStream.writeln (s); + } +]])[ + private final ]b4_parser_class[.Symbol yylex () { + return yylexer.yylex (); + } + + protected final void yyerror (]b4_locations_if([[const Location loc, ]])[string s) { + yylexer.yyerror (]b4_locations_if([loc, ])[s); + } + + /** + * The number of syntax errors so far. + */ + public int numberOfErrors() const { return yynerrs_; } + private int yynerrs_ = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return success (true). */ + public static immutable int YYACCEPT = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return failure (false). */ + public static immutable int YYABORT = 1; +]b4_push_if([ + /** + * Returned by a Bison action in order to request a new token. + */ + public static immutable int YYPUSH_MORE = 4;])[ + + /** + * Returned by a Bison action in order to start error recovery without + * printing an error message. */ + public static immutable int YYERROR = 2; + + // Internal return codes that are not supported for user semantic + // actions. + private static immutable int YYERRLAB = 3; + private static immutable int YYNEWSTATE = 4; + private static immutable int YYDEFAULT = 5; + private static immutable int YYREDUCE = 6; + private static immutable int YYERRLAB1 = 7; + private static immutable int YYRETURN = 8; +]b4_push_if([[ private static immutable int YYGETTOKEN = 9; /* Signify that a new token is expected when doing push-parsing. */]])[ + +]b4_locations_if([ + private static immutable YYSemanticType yy_semantic_null;])[ + private int yyerrstatus_ = 0; + + private void yyerrok() + { + yyerrstatus_ = 0; + } + + // Lookahead symbol kind. + SymbolKind yytoken = ]b4_symbol(empty, kind)[; + + /* State. */ + int yyn = 0; + int yylen = 0; + int yystate = 0; + + YYStack yystack; + + int label = YYNEWSTATE; + + /* Error handling. */ +]b4_locations_if([[ + /// The location where the error started. + Location yyerrloc; + + /// Location of the lookahead. + Location yylloc; + + /// @@$. + Location yyloc;]])[ + + /// Semantic value of the lookahead. + Value yylval; + + /** + * Whether error recovery is being done. In this state, the parser + * reads token until it reaches a known state, and then restarts normal + * operation. */ + public final bool recovering () + { + return yyerrstatus_ == 0; + } + + /** Compute post-reduction state. + * @@param yystate the current state + * @@param yysym the nonterminal to push on the stack + */ + private int yyLRGotoState(int yystate, int yysym) { + int yyr = yypgoto_[yysym - yyntokens_] + yystate; + if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - yyntokens_]; + } + + private int yyaction (int yyn, ref YYStack yystack, int yylen) + { + Value yyval;]b4_locations_if([[ + Location yyloc = yylloc_from_stack (yystack, yylen);]])[ + + /* If YYLEN is nonzero, implement the default value of the action: + `$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. */ + if (yylen > 0) + yyval = yystack.valueAt (yylen - 1); + else + yyval = yystack.valueAt (0); + +]b4_parse_trace_if([[ + yy_reduce_print (yyn, yystack);]])[ + + switch (yyn) + { +]b4_user_actions[ + default: break; + } + +]b4_parse_trace_if([[ + yy_symbol_print ("-> $$ =", to!SymbolKind (yyr1_[yyn]), yyval]b4_locations_if([, yyloc])[);]])[ + + yystack.pop (yylen); + yylen = 0; + + /* Shift the result of the reduction. */ + int yystate = yyLRGotoState(yystack.stateAt(0), yyr1_[yyn]); + yystack.push (yystate, yyval]b4_locations_if([, yyloc])[); + return YYNEWSTATE; + } + +]b4_parse_trace_if([[ + /*--------------------------------. + | Print this symbol on YYOUTPUT. | + `--------------------------------*/ + + private final void yy_symbol_print (string s, SymbolKind yykind, + ref Value yyval]b4_locations_if([, ref Location yyloc])[) + { + if (0 < yydebug) + { + File yyo = yyDebugStream; + yyo.write(s); + yyo.write(yykind < yyntokens_ ? " token " : " nterm "); + yyo.write(format("%s", yykind)); + yyo.write(" ("]b4_locations_if([ ~ yyloc.toString() ~ ": "])[); + ]b4_symbol_actions([printer])[ + yyo.write(")\n"); + } + } +]])[ +]b4_symbol_type_define[ +]b4_push_if([[ + /** + * Push Parse input from external lexer + * + * @@param yyla current Symbol + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int pushParse(Symbol yyla)]], [[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public bool parse()]])[ + {]b4_push_if([[ + if (!this.pushParseInitialized) + { + pushParseInitialize(); + yyerrstatus_ = 0; + } + else + label = YYGETTOKEN; + + bool push_token_consumed = true; +]], [[ bool yyresult;]b4_lac_if([[ + // Discard the LAC context in case there still is one left from a + // previous invocation. + yylacDiscard("init");]])[]b4_parse_trace_if([[ + + yycdebugln ("Starting parse");]])[ + yyerrstatus_ = 0; + +]m4_ifdef([b4_initial_action], [ +m4_pushdef([b4_at_dollar], [yylloc])dnl +m4_pushdef([b4_dollar_dollar], [yylval])dnl + /* User initialization code. */ + b4_user_initial_action +m4_popdef([b4_dollar_dollar])dnl +m4_popdef([b4_at_dollar])])dnl + + [ /* Initialize the stack. */ + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[); + + label = YYNEWSTATE;]])[ + for (;;) + final switch (label) + { + /* New state. Unlike in the C/C++ skeletons, the state is already + pushed when we come here. */ + case YYNEWSTATE:]b4_parse_trace_if([[ + yycdebugln (format("Entering state %d", yystate)); + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + + /* Accept? */ + if (yystate == yyfinal_)]b4_push_if([[ + { + label = YYACCEPT; + break; + }]], [[ + return true;]])[ + + /* Take a decision. First try without lookahead. */ + yyn = yypact_[yystate]; + if (yyPactValueIsDefault(yyn)) + { + label = YYDEFAULT; + break; + }]b4_push_if([[ + goto case; + + case YYGETTOKEN:]])[ + + /* Read a lookahead token. */ + if (yytoken == ]b4_symbol(empty, kind)[) + {]b4_push_if([[ + if (!push_token_consumed) + return YYPUSH_MORE;]])[]b4_parse_trace_if([[ + yycdebugln ("Reading a token");]])[]b4_push_if([[ + yytoken = yyla.token; + yylval = yyla.value;]b4_locations_if([[ + yylloc = yyla.location;]])[ + push_token_consumed = false;]], [[ + Symbol yysymbol = yylex(); + yytoken = yysymbol.token(); + yylval = yysymbol.value();]b4_locations_if([[ + yylloc = yysymbol.location();]])[]])[ + } + + /* Token already converted to internal form. */]b4_parse_trace_if([[ + yy_symbol_print ("Next token is", yytoken, yylval]b4_locations_if([, yylloc])[);]])[ + + if (yytoken == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yytoken = ]b4_symbol(undef, kind)[;]b4_locations_if([[ + yyerrloc = yylloc;]])[ + label = YYERRLAB1; + } + else + { + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yytoken) {]b4_lac_if([[ + if (!yylacEstablish(yystack, yytoken)) + label = YYERRLAB; + else]])[ + label = YYDEFAULT; + } + /* <= 0 means reduce or error. */ + else if ((yyn = yytable_[yyn]) <= 0) + { + if (yyTableValueIsError(yyn)) + label = YYERRLAB;]b4_lac_if([[ + else if (!yylacEstablish(yystack, yytoken)) + label = YYERRLAB;]])[ + else + { + yyn = -yyn; + label = YYREDUCE; + } + } + else + { + /* Shift the lookahead token. */]b4_parse_trace_if([[ + yy_symbol_print ("Shifting", yytoken, yylval]b4_locations_if([, yylloc])[);]])[ + + /* Discard the token being shifted. */ + yytoken = ]b4_symbol(empty, kind)[; + + /* Count tokens shifted since error; after three, turn off error + * status. */ + if (yyerrstatus_ > 0) + --yyerrstatus_; + + yystate = yyn; + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[);]b4_lac_if([[ + yylacDiscard("shift");]])[ + label = YYNEWSTATE; + } + } + break; + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + case YYDEFAULT: + yyn = yydefact_[yystate]; + if (yyn == 0) + label = YYERRLAB; + else + label = YYREDUCE; + break; + + /*-----------------------------. + | yyreduce -- Do a reduction. | + `-----------------------------*/ + case YYREDUCE: + yylen = yyr2_[yyn]; + label = yyaction (yyn, yystack, yylen); + yystate = yystack.stateAt (0); + break; + + /*--------------------------------------. + | yyerrlab -- here on detecting error. | + `--------------------------------------*/ + case YYERRLAB: + /* If not already recovering from an error, report this error. */ + if (yyerrstatus_ == 0) + { + ++yynerrs_; + yyreportSyntaxError(new Context(]b4_lac_if([[this, ]])[yystack, yytoken]b4_locations_if([[, yylloc]])[)); + } +]b4_locations_if([ + yyerrloc = yylloc;])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + * error, discard it. */ + + /* Return failure if at end of input. */ + if (yytoken == ]b4_symbol(eof, [kind])[)]b4_push_if([[ + { + label = YYABORT; + break; + }]], [[ + return false;]])[ + else + yytoken = ]b4_symbol(empty, kind)[; + } + + /* Else will try to reuse lookahead token after shifting the error + * token. */ + label = YYERRLAB1; + break; + + /*-------------------------------------------------. + | errorlab -- error raised explicitly by YYERROR. | + `-------------------------------------------------*/ + case YYERROR:]b4_locations_if([ + yyerrloc = yystack.locationAt (yylen - 1);])[ + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + yystack.pop (yylen); + yylen = 0; + yystate = yystack.stateAt (0); + label = YYERRLAB1; + break; + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + case YYERRLAB1: + yyerrstatus_ = 3; /* Each real token shifted decrements this. */ + + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[yystate]; + if (!yyPactValueIsDefault(yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yystack.height == 1)]b4_push_if([[ + { + label = YYABORT; + break; + }]],[[ + return false;]])[ + +]b4_locations_if([ yyerrloc = yystack.locationAt (0);])[ + yystack.pop (); + yystate = yystack.stateAt (0);]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + }]b4_push_if([[ + if (label == YYABORT) + /* Leave the switch. */ + break; +]])[ +]b4_locations_if([ + /* Muck with the stack to setup for yylloc. */ + yystack.push (0, yy_semantic_null, yylloc); + yystack.push (0, yy_semantic_null, yyerrloc); + yyloc = yylloc_from_stack (yystack, 2); + yystack.pop (2);])[ + + /* Shift the error token. */]b4_lac_if([[ + yylacDiscard("error recovery");]])[]b4_parse_trace_if([[ + yy_symbol_print ("Shifting", to!SymbolKind (yystos_[yyn]), yylval]b4_locations_if([, yyloc])[);]])[ + yystate = yyn; + yystack.push (yyn, yylval]b4_locations_if([, yyloc])[); + label = YYNEWSTATE; + break; + + /* Accept. */ + case YYACCEPT:]b4_push_if([[ + this.pushParseInitialized = false;]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return YYACCEPT;]], [[ + yyresult = true; + label = YYRETURN; + break;]])[ + + /* Abort. */ + case YYABORT:]b4_push_if([[ + this.pushParseInitialized = false;]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return YYABORT;]], [[ + yyresult = false; + label = YYRETURN; + break;]])[ +]b4_push_if([[]], [[ ][case YYRETURN:]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return yyresult;]])[ + } + assert(0); + } + +]b4_push_if([[ + bool pushParseInitialized = false; + + /** + * (Re-)Initialize the state of the push parser. + */ + public void pushParseInitialize() + { + + /* Lookahead and lookahead in internal form. */ + this.yytoken = ]b4_symbol(empty, kind)[; + + /* State. */ + this.yyn = 0; + this.yylen = 0; + this.yystate = 0; + destroy(this.yystack); + this.label = YYNEWSTATE; +]b4_lac_if([[ + destroy(this.yylacStack); + this.yylacEstablished = false;]])[ + + /* Error handling. */ + this.yynerrs_ = 0; +]b4_locations_if([ + /* The location where the error started. */ + this.yyerrloc = Location(Position(), Position()); + this.yylloc = Location(Position(), Position());])[ + + /* Semantic value of the lookahead. */ + //destroy(this.yylval); + + /* Initialize the stack. */ + yystack.push(this.yystate, this.yylval]b4_locations_if([, this.yylloc])[); + + this.pushParseInitialized = true; + }]])[]b4_both_if([[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * This version of parse() is defined only when api.push-push=both. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + bool parse() + { + int status = 0; + do { + status = this.pushParse(yylex()); + } while (status == YYPUSH_MORE); + return status == YYACCEPT; + }]])[ + + // Generate an error message. + private final void yyreportSyntaxError(Context yyctx) + {]b4_parse_error_bmatch( +[custom], [[ + yylexer.reportSyntaxError(yyctx);]], +[detailed], [[ + if (yyctx.getToken() != ]b4_symbol(empty, kind)[) + { + // FIXME: This method of building the message is not compatible + // with internationalization. + immutable int argmax = 5; + SymbolKind[] yyarg = new SymbolKind[argmax]; + int yycount = yysyntaxErrorArguments(yyctx, yyarg, argmax); + string res, yyformat; + switch (yycount) + { + case 1: + yyformat = YY_("syntax error, unexpected %s"); + res = format(yyformat, yyarg[0]); + break; + case 2: + yyformat = YY_("syntax error, unexpected %s, expecting %s"); + res = format(yyformat, yyarg[0], yyarg[1]); + break; + case 3: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2]); + break; + case 4: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2], yyarg[3]); + break; + case 5: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2], yyarg[3], yyarg[4]); + break; + default: + res = YY_("syntax error"); + break; + } + yyerror(]b4_locations_if([yyctx.getLocation(), ])[res); + }]], +[[simple]], [[ + yyerror(]b4_locations_if([yyctx.getLocation(), ])[YY_("syntax error"));]])[ + } + +]b4_parse_error_bmatch( +[detailed], [[ + private int yysyntaxErrorArguments(Context yyctx, SymbolKind[] yyarg, int yyargn) { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, + then the only way this function was invoked is if the + default action is an error action. In that case, don't + check for expected tokens because there are none. + - The only way there can be no lookahead present (in tok) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this + state is a consistent state with a default action. There + might have been a previous inconsistent state, consistent + state with a non-default action, or user semantic action + that manipulated yychar. (However, yychar is currently out + of scope during semantic actions.) + - Of course, the expected token list depends on states to + have correct lookahead information, and it depends on the + parser not to perform extra reductions after fetching a + lookahead from the scanner and before detecting a syntax + error. Thus, state merging (from LALR or IELR) and default + reductions corrupt the expected token list. However, the + list is correct for canonical LR with one exception: it + will still contain any token that will not be accepted due + to an error action in a later state. + */ + int yycount = 0; + if (yyctx.getToken() != ]b4_symbol(empty, kind)[) + { + if (yyarg !is null) + yyarg[yycount] = yyctx.getToken(); + yycount += 1; + yycount += yyctx.getExpectedTokens(yyarg, 1, yyargn); + } + return yycount; + } +]])[ + + + /** + * Information needed to get the list of expected tokens and to forge + * a syntax error diagnostic. + */ + public static final class Context + {]b4_lac_if([[ + private ]b4_parser_class[ yyparser;]])[ + private const(YYStack) yystack; + private SymbolKind yytoken;]b4_locations_if([[ + private const(Location) yylocation;]])[ + + this(]b4_lac_if([[]b4_parser_class[ parser, ]])[YYStack stack, SymbolKind kind]b4_locations_if([[, Location loc]])[) + {]b4_lac_if([[ + yyparser = parser;]])[ + yystack = stack; + yytoken = kind;]b4_locations_if([[ + yylocation = loc;]])[ + } + + final SymbolKind getToken() const + { + return yytoken; + }]b4_locations_if([[ + + final const(Location) getLocation() const + { + return yylocation; + }]])[ + /** + * Put in YYARG at most YYARGN of the expected tokens given the + * current YYCTX, and return the number of tokens stored in YYARG. If + * YYARG is null, return the number of expected tokens (guaranteed to + * be less than YYNTOKENS). + */ + int getExpectedTokens(SymbolKind[] yyarg, int yyargn)]b4_lac_if([[]], [[ const]])[ + { + return getExpectedTokens(yyarg, 0, yyargn); + } + + int getExpectedTokens(SymbolKind[] yyarg, int yyoffset, int yyargn)]b4_lac_if([[]], [[ const]])[ + { + int yycount = yyoffset;]b4_lac_if([b4_parse_trace_if([[ + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + + if (!yyparser.yylacEstablished) + yyparser.yylacCheck(yystack, yytoken); +]])[ + for (int yyx = 0; yyx < yyntokens_; ++yyx) + { + SymbolKind yysym = SymbolKind(yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser.yylacCheck(yystack, yysym)) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + int yyn = yypact_[this.yystack.stateAt(0)]; + if (!yyPactValueIsDefault(yyn)) + { + /* Start YYX at -YYN if negative to avoid negative + indexes in YYCHECK. In other words, skip the first + -YYN actions for this state because they are default + actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = yylast_ - yyn + 1; + int yyxend = yychecklim < yyntokens_ ? yychecklim : yyntokens_; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yyTableValueIsError(yytable_[yyx + yyn])) + { + if (yyarg is null) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = SymbolKind(yyx); + } + }]])[ + if (yyarg !is null && yycount == yyoffset && yyoffset < yyargn) + yyarg[yyoffset] = ]b4_symbol(empty, kind)[; + return yycount - yyoffset; + } + } + +]b4_lac_if([[ + /** Check the lookahead yytoken. + * \returns true iff the token will be eventually shifted. + */ + bool yylacCheck(const YYStack yystack, SymbolKind yytoken) + { + // Logically, the yylacStack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + destroy(yylacStack); + // Reduce until we encounter a shift and thereby accept the token. +]b4_parse_trace_if([[ + yycdebug("LAC: checking lookahead " ~ format("%s", yytoken) ~ ":");]])[ + int lacTop = 0; + while (true) + { + int topState = (yylacStack.length == 0 + ? yystack.stateAt(lacTop) + : yylacStack[$ - 1]); + int yyrule = yypact_[topState]; + if (yyPactValueIsDefault(yyrule) + || (yyrule += yytoken) < 0 || yylast_ < yyrule + || yycheck_[yyrule] != yytoken) + { + // Use the default action. + yyrule = yydefact_[+topState]; + if (yyrule == 0) + {]b4_parse_trace_if([[ + yycdebugln(" Err");]])[ + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yyTableValueIsError(yyrule)) + {]b4_parse_trace_if([[ + yycdebugln(" Err");]])[ + return false; + } + if (0 < yyrule) + {]b4_parse_trace_if([[ + yycdebugln(" S" ~ to!string(yyrule));]])[ + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. +]b4_parse_trace_if([[ + yycdebug(" R" ~ to!string(yyrule - 1));]])[ + // Pop the corresponding number of values from the stack. + { + int yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + int lacSize = cast (int) yylacStack.length; + if (yylen < lacSize) + { + yylacStack.length -= yylen; + yylen = 0; + } + else if (lacSize != 0) + { + destroy(yylacStack); + yylen -= lacSize; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lacTop. + lacTop += yylen; + } + // Keep topState in sync with the updated stack. + topState = (yylacStack.length == 0 + ? yystack.stateAt(lacTop) + : yylacStack[$ - 1]); + // Push the resulting state of the reduction. + int state = yyLRGotoState(topState, yyr1_[yyrule]);]b4_parse_trace_if([[ + yycdebug(" G" ~ to!string(state));]])[ + yylacStack.length++; + yylacStack[$ - 1] = state; + } + } + + /** Establish the initial context if no initial context currently exists. + * \returns true iff the token will be eventually shifted. + */ + bool yylacEstablish(YYStack yystack, SymbolKind yytoken) + { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yylacEstablish should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yylacEstablish is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yylacEstablished) + return true; + else + {]b4_parse_trace_if([[ + yycdebugln("LAC: initial context established for " ~ format("%s", yytoken));]])[ + yylacEstablished = true; + return yylacCheck(yystack, yytoken); + } + } + + /** Discard any previous initial lookahead context because of event. + * \param event the event which caused the lookahead to be discarded. + * Only used for debbuging output. */ + void yylacDiscard(string event) + { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yylacEstablished) + {]b4_parse_trace_if([[ + yycdebugln("LAC: initial context discarded due to " ~ event);]])[ + yylacEstablished = false; + } + } + + /** The stack for LAC. + * Logically, the yylacStack's lifetime is confined to the function + * yylacCheck. We just store it as a member of this class to hold + * on to the memory and to avoid frequent reallocations. + */ + int[] yylacStack; + /** Whether an initial LAC context was established. */ + bool yylacEstablished; +]])[ + + /** + * Whether the given yypact_ value indicates a defaulted state. + * @@param yyvalue the value to check + */ + private static bool yyPactValueIsDefault(int yyvalue) + { + return yyvalue == yypact_ninf_; + } + + /** + * Whether the given yytable_ value indicates a syntax error. + * @@param yyvalue the value to check + */ + private static bool yyTableValueIsError(int yyvalue) + { + return yyvalue == yytable_ninf_; + } + + /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ + private static immutable ]b4_int_type_for([b4_pact])[ yypact_ninf_ = ]b4_pact_ninf[; + + /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If + positive, shift that token. If negative, reduce the rule which + number is the opposite. If YYTABLE_NINF_, syntax error. */ + private static immutable ]b4_int_type_for([b4_table])[ yytable_ninf_ = ]b4_table_ninf[; + + ]b4_parser_tables_define[ + +]b4_parse_trace_if([[ + /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ + private static immutable ]b4_int_type_for([b4_rline])[[] yyrline_ = + @{ + ]b4_rline[ + @}; + + // Report on the debug stream that the rule yyrule is going to be reduced. + private final void yy_reduce_print (int yyrule, ref YYStack yystack) + { + if (yydebug == 0) + return; + + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + /* Print the symbols being reduced, and their result. */ + yycdebugln (format("Reducing stack by rule %d (line %d):", + yyrule - 1, yylno)); + + /* The symbols being reduced. */ + for (int yyi = 0; yyi < yynrhs; yyi++) + yy_symbol_print (format(" $%d =", yyi + 1), + to!SymbolKind (yystos_[yystack.stateAt(yynrhs - (yyi + 1))]), + ]b4_rhs_value(yynrhs, yyi + 1)b4_locations_if([, + b4_rhs_location(yynrhs, yyi + 1)])[); + } +]])[ + + private static auto yytranslate_ (int t) + { +]b4_api_token_raw_if( +[[ return SymbolKind(t);]], +[[ /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ + immutable ]b4_int_type_for([b4_translate])[[] translate_table = + @{ + ]b4_translate[ + @}; + + // Last valid token kind. + immutable int code_max = ]b4_code_max[; + + if (t <= 0) + return ]b4_symbol(eof, kind)[; + else if (t <= code_max) + return SymbolKind(translate_table[t]); + else + return ]b4_symbol(undef, kind)[;]])[ + } + + private static immutable int yylast_ = ]b4_last[; + private static immutable int yynnts_ = ]b4_nterms_number[; + private static immutable int yyfinal_ = ]b4_final_state_number[; + private static immutable int yyntokens_ = ]b4_tokens_number[; + + private final struct YYStackElement { + int state; + Value value;]b4_locations_if( + b4_location_type[[] location;])[ + } + + private final struct YYStack { + private YYStackElement[] stack = []; + + public final ulong height() + { + return stack.length; + } + + public final void push (int state, Value value]dnl + b4_locations_if([, ref Location loc])[) + { + stack ~= YYStackElement(state, value]b4_locations_if([, loc])[); + } + + public final void pop () + { + pop (1); + } + + public final void pop (int num) + { + stack.length -= num; + } + + public final int stateAt (int i) const + { + return stack[$-i-1].state; + } + +]b4_locations_if([[ + public final ref Location locationAt (int i) + { + return stack[$-i-1].location; + }]])[ + + public final ref Value valueAt (int i) + { + return stack[$-i-1].value; + } +]b4_parse_trace_if([[ + // Print the state stack on the debug stream. + public final void print (File stream) + { + stream.write ("Stack now"); + for (int i = 0; i < stack.length; i++) + stream.write (" ", stack[i].state); + stream.writeln (); + }]])[ + } +]b4_percent_code_get[ +} +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/MinSizeRel/data/skeletons/lalr1.java b/bison/MinSizeRel/data/skeletons/lalr1.java new file mode 100644 index 0000000..1bbecca --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/lalr1.java @@ -0,0 +1,1303 @@ +# Java skeleton for Bison -*- java -*- + +# Copyright (C) 2007-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[java.m4]) + +b4_header_if([b4_complain([%header/%defines does not make sense in Java])]) + +m4_define([b4_symbol_no_destructor_assert], +[b4_symbol_if([$1], [has_destructor], + [b4_complain_at(m4_unquote(b4_symbol([$1], [destructor_loc])), + [%destructor does not make sense in Java])])]) +b4_symbol_foreach([b4_symbol_no_destructor_assert]) + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) + +# Define m4 conditional macros that encode the value +# of the api.push-pull flag. +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Define a macro to be true when api.push-pull has the value "both". +m4_define([b4_both_if],[b4_push_if([b4_pull_if([$1],[$2])],[$2])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + +# Define a macro to encapsulate the parse state variables. This +# allows them to be defined either in parse() when doing pull parsing, +# or as class instance variable when doing push parsing. +m4_define([b4_define_state], +[[ + /* Lookahead token kind. */ + int yychar = YYEMPTY_; + /* Lookahead symbol kind. */ + SymbolKind yytoken = null; + + /* State. */ + int yyn = 0; + int yylen = 0; + int yystate = 0; + YYStack yystack = new YYStack (); + int label = YYNEWSTATE; + +]b4_locations_if([[ + /* The location where the error started. */ + ]b4_location_type[ yyerrloc = null; + + /* Location. */ + ]b4_location_type[ yylloc = new ]b4_location_type[ (null, null);]])[ + + /* Semantic value of the lookahead. */ + ]b4_yystype[ yylval = null; +]]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +## ------------- ## +## Parser File. ## +## ------------- ## + +b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison LALR(1) parsers in Java], + [2007-2015, 2018-2021])[ +]b4_disclaimer[ +]b4_percent_define_ifdef([api.package], [package b4_percent_define_get([api.package]);[ +]])[ +]b4_user_pre_prologue[ +]b4_user_post_prologue[ +import java.text.MessageFormat; +import java.util.ArrayList; +]b4_percent_code_get([[imports]])[ +/** + * A Bison parser, automatically generated from ]m4_bpatsubst(b4_file_name, [^"\(.*\)"$], [\1])[. + * + * @@author LALR (1) parser skeleton written by Paolo Bonzini. + */ +]b4_parser_class_declaration[ +{ +]b4_identification[ +][ +]b4_parse_error_bmatch( + [detailed\|verbose], [[ + /** + * True if verbose error messages are enabled. + */ + private boolean yyErrorVerbose = true; + + /** + * Whether verbose error messages are enabled. + */ + public final boolean getErrorVerbose() { return yyErrorVerbose; } + + /** + * Set the verbosity of error messages. + * @@param verbose True to request verbose error messages. + */ + public final void setErrorVerbose(boolean verbose) + { yyErrorVerbose = verbose; } +]])[ + +]b4_locations_if([[ + /** + * A class defining a pair of positions. Positions, defined by the + * ]b4_position_type[ class, denote a point in the input. + * Locations represent a part of the input through the beginning + * and ending positions. + */ + public static class ]b4_location_type[ { + /** + * The first, inclusive, position in the range. + */ + public ]b4_position_type[ begin; + + /** + * The first position beyond the range. + */ + public ]b4_position_type[ end; + + /** + * Create a ]b4_location_type[ denoting an empty range located at + * a given point. + * @@param loc The position at which the range is anchored. + */ + public ]b4_location_type[ (]b4_position_type[ loc) { + this.begin = this.end = loc; + } + + /** + * Create a ]b4_location_type[ from the endpoints of the range. + * @@param begin The first position included in the range. + * @@param end The first position beyond the range. + */ + public ]b4_location_type[ (]b4_position_type[ begin, ]b4_position_type[ end) { + this.begin = begin; + this.end = end; + } + + /** + * Print a representation of the location. For this to be correct, + * ]b4_position_type[ should override the equals + * method. + */ + public String toString() { + if (begin.equals (end)) + return begin.toString(); + else + return begin.toString() + "-" + end.toString(); + } + } + + private ]b4_location_type[ yylloc(YYStack rhs, int n) + { + if (0 < n) + return new ]b4_location_type[(rhs.locationAt(n-1).begin, rhs.locationAt(0).end); + else + return new ]b4_location_type[(rhs.locationAt(0).end); + }]])[ + +]b4_declare_symbol_enum[ + + /** + * Communication interface between the scanner and the Bison-generated + * parser ]b4_parser_class[. + */ + public interface Lexer { +]b4_token_enums[ + /** Deprecated, use ]b4_symbol(eof, id)[ instead. */ + public static final int EOF = ]b4_symbol(eof, id)[; +]b4_pull_if([b4_locations_if([[ + /** + * Method to retrieve the beginning position of the last scanned token. + * @@return the position at which the last scanned token starts. + */ + ]b4_position_type[ getStartPos(); + + /** + * Method to retrieve the ending position of the last scanned token. + * @@return the first position beyond the last scanned token. + */ + ]b4_position_type[ getEndPos();]])[ + + /** + * Method to retrieve the semantic value of the last scanned token. + * @@return the semantic value of the last scanned token. + */ + ]b4_yystype[ getLVal(); + + /** + * Entry point for the scanner. Returns the token identifier corresponding + * to the next token and prepares to return the semantic value + * ]b4_locations_if([and beginning/ending positions ])[of the token. + * @@return the token identifier corresponding to the next token. + */ + int yylex()]b4_maybe_throws([b4_lex_throws])[; +]])[ + /** + * Emit an error]b4_locations_if([ referring to the given location])[in a user-defined way. + * + *]b4_locations_if([[ @@param loc The location of the element to which the + * error message is related.]])[ + * @@param msg The string for the error message. + */ + void yyerror(]b4_locations_if([b4_location_type[ loc, ]])[String msg); + +]b4_parse_error_bmatch( + [custom], [[ + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + void reportSyntaxError(Context ctx); +]])[ + } + +]b4_lexer_if([[ + private class YYLexer implements Lexer { +]b4_percent_code_get([[lexer]])[ + } + +]])[ + /** + * The object doing lexical analysis for us. + */ + private Lexer yylexer; + +]b4_parse_param_vars[ + +]b4_lexer_if([[ + /** + * Instantiates the Bison-generated parser. + */ + public ]b4_parser_class[(]b4_parse_param_decl([b4_lex_param_decl])[)]b4_maybe_throws([b4_init_throws])[ + { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.yylexer = new YYLexer(]b4_lex_param_call[); +]b4_parse_param_cons[ + } +]])[ + + /** + * Instantiates the Bison-generated parser. + * @@param yylexer The scanner that will supply tokens to the parser. + */ + ]b4_lexer_if([[protected]], [[public]]) b4_parser_class[(]b4_parse_param_decl([[Lexer yylexer]])[)]b4_maybe_throws([b4_init_throws])[ + { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.yylexer = yylexer; +]b4_parse_param_cons[ + } + +]b4_parse_trace_if([[ + private java.io.PrintStream yyDebugStream = System.err; + + /** + * The PrintStream on which the debugging output is printed. + */ + public final java.io.PrintStream getDebugStream() { return yyDebugStream; } + + /** + * Set the PrintStream on which the debug output is printed. + * @@param s The stream that is used for debugging output. + */ + public final void setDebugStream(java.io.PrintStream s) { yyDebugStream = s; } + + private int yydebug = 0; + + /** + * Answer the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + */ + public final int getDebugLevel() { return yydebug; } + + /** + * Set the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + * @@param level The verbosity level for debugging output. + */ + public final void setDebugLevel(int level) { yydebug = level; } +]])[ + + private int yynerrs = 0; + + /** + * The number of syntax errors so far. + */ + public final int getNumberOfErrors() { return yynerrs; } + + /** + * Print an error message via the lexer. + *]b4_locations_if([[ Use a null location.]])[ + * @@param msg The error message. + */ + public final void yyerror(String msg) { + yylexer.yyerror(]b4_locations_if([[(]b4_location_type[)null, ]])[msg); + } +]b4_locations_if([[ + /** + * Print an error message via the lexer. + * @@param loc The location associated with the message. + * @@param msg The error message. + */ + public final void yyerror(]b4_location_type[ loc, String msg) { + yylexer.yyerror(loc, msg); + } + + /** + * Print an error message via the lexer. + * @@param pos The position associated with the message. + * @@param msg The error message. + */ + public final void yyerror(]b4_position_type[ pos, String msg) { + yylexer.yyerror(new ]b4_location_type[ (pos), msg); + }]])[ +]b4_parse_trace_if([[ + protected final void yycdebugNnl(String s) { + if (0 < yydebug) + yyDebugStream.print(s); + } + + protected final void yycdebug(String s) { + if (0 < yydebug) + yyDebugStream.println(s); + }]])[ + + private final class YYStack { + private int[] stateStack = new int[16];]b4_locations_if([[ + private ]b4_location_type[[] locStack = new ]b4_location_type[[16];]])[ + private ]b4_yystype[[] valueStack = new ]b4_yystype[[16]; + + public int size = 16; + public int height = -1; + + public final void push(int state, ]b4_yystype[ value]b4_locations_if([, ]b4_location_type[ loc])[) { + height++; + if (size == height) { + int[] newStateStack = new int[size * 2]; + System.arraycopy(stateStack, 0, newStateStack, 0, height); + stateStack = newStateStack;]b4_locations_if([[ + ]b4_location_type[[] newLocStack = new ]b4_location_type[[size * 2]; + System.arraycopy(locStack, 0, newLocStack, 0, height); + locStack = newLocStack;]]) + + b4_yystype[[] newValueStack = new ]b4_yystype[[size * 2]; + System.arraycopy(valueStack, 0, newValueStack, 0, height); + valueStack = newValueStack; + + size *= 2; + } + + stateStack[height] = state;]b4_locations_if([[ + locStack[height] = loc;]])[ + valueStack[height] = value; + } + + public final void pop() { + pop(1); + } + + public final void pop(int num) { + // Avoid memory leaks... garbage collection is a white lie! + if (0 < num) { + java.util.Arrays.fill(valueStack, height - num + 1, height + 1, null);]b4_locations_if([[ + java.util.Arrays.fill(locStack, height - num + 1, height + 1, null);]])[ + } + height -= num; + } + + public final int stateAt(int i) { + return stateStack[height - i]; + } +]b4_locations_if([[ + + public final ]b4_location_type[ locationAt(int i) { + return locStack[height - i]; + } +]])[ + public final ]b4_yystype[ valueAt(int i) { + return valueStack[height - i]; + } + + // Print the state stack on the debug stream. + public void print(java.io.PrintStream out) { + out.print ("Stack now"); + + for (int i = 0; i <= height; i++) { + out.print(' '); + out.print(stateStack[i]); + } + out.println(); + } + } + + /** + * Returned by a Bison action in order to stop the parsing process and + * return success (true). + */ + public static final int YYACCEPT = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return failure (false). + */ + public static final int YYABORT = 1; + +]b4_push_if([ + /** + * Returned by a Bison action in order to request a new token. + */ + public static final int YYPUSH_MORE = 4;])[ + + /** + * Returned by a Bison action in order to start error recovery without + * printing an error message. + */ + public static final int YYERROR = 2; + + /** + * Internal return codes that are not supported for user semantic + * actions. + */ + private static final int YYERRLAB = 3; + private static final int YYNEWSTATE = 4; + private static final int YYDEFAULT = 5; + private static final int YYREDUCE = 6; + private static final int YYERRLAB1 = 7; + private static final int YYRETURN = 8; +]b4_push_if([[ private static final int YYGETTOKEN = 9; /* Signify that a new token is expected when doing push-parsing. */]])[ + + private int yyerrstatus_ = 0; + +]b4_push_if([b4_define_state])[ + /** + * Whether error recovery is being done. In this state, the parser + * reads token until it reaches a known state, and then restarts normal + * operation. + */ + public final boolean recovering () + { + return yyerrstatus_ == 0; + } + + /** Compute post-reduction state. + * @@param yystate the current state + * @@param yysym the nonterminal to push on the stack + */ + private int yyLRGotoState(int yystate, int yysym) { + int yyr = yypgoto_[yysym - YYNTOKENS_] + yystate; + if (0 <= yyr && yyr <= YYLAST_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - YYNTOKENS_]; + } + + private int yyaction(int yyn, YYStack yystack, int yylen)]b4_maybe_throws([b4_throws])[ + { + /* If YYLEN is nonzero, implement the default value of the action: + '$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. */ + ]b4_yystype[ yyval = (0 < yylen) ? yystack.valueAt(yylen - 1) : yystack.valueAt(0);]b4_locations_if([[ + ]b4_location_type[ yyloc = yylloc(yystack, yylen);]])[]b4_parse_trace_if([[ + + yyReducePrint(yyn, yystack);]])[ + + switch (yyn) + { + ]b4_user_actions[ + default: break; + }]b4_parse_trace_if([[ + + yySymbolPrint("-> $$ =", SymbolKind.get(yyr1_[yyn]), yyval]b4_locations_if([, yyloc])[);]])[ + + yystack.pop(yylen); + yylen = 0; + /* Shift the result of the reduction. */ + int yystate = yyLRGotoState(yystack.stateAt(0), yyr1_[yyn]); + yystack.push(yystate, yyval]b4_locations_if([, yyloc])[); + return YYNEWSTATE; + } + +]b4_parse_trace_if([[ + /*--------------------------------. + | Print this symbol on YYOUTPUT. | + `--------------------------------*/ + + private void yySymbolPrint(String s, SymbolKind yykind, + ]b4_yystype[ yyvalue]b4_locations_if([, ]b4_location_type[ yylocation])[) { + if (0 < yydebug) { + yycdebug(s + + (yykind.getCode() < YYNTOKENS_ ? " token " : " nterm ") + + yykind.getName() + " ("]b4_locations_if([ + + yylocation + ": "])[ + + (yyvalue == null ? "(null)" : yyvalue.toString()) + ")"); + } + }]])[ + +]b4_push_if([],[[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public boolean parse()]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[]])[ +]b4_push_if([ + /** + * Push Parse input from external lexer + * + * @@param yylextoken current token + * @@param yylexval current lval]b4_locations_if([[ + * @@param yylexloc current position]])[ + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int push_parse(int yylextoken, b4_yystype yylexval[]b4_locations_if([, b4_location_type yylexloc]))b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])])[ + {]b4_locations_if([[ + /* @@$. */ + ]b4_location_type[ yyloc;]])[ +]b4_push_if([],[[ +]b4_define_state[ +]b4_lac_if([[ + // Discard the LAC context in case there still is one left from a + // previous invocation. + yylacDiscard("init");]])[ +]b4_parse_trace_if([[ + yycdebug ("Starting parse");]])[ + yyerrstatus_ = 0; + yynerrs = 0; + + /* Initialize the stack. */ + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef[]dnl +])[ +]])[ +]b4_push_if([[ + if (!this.push_parse_initialized) + { + push_parse_initialize (); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef[]dnl +])[]b4_parse_trace_if([[ + yycdebug ("Starting parse");]])[ + yyerrstatus_ = 0; + } else + label = YYGETTOKEN; + + boolean push_token_consumed = true; +]])[ + for (;;) + switch (label) + { + /* New state. Unlike in the C/C++ skeletons, the state is already + pushed when we come here. */ + case YYNEWSTATE:]b4_parse_trace_if([[ + yycdebug ("Entering state " + yystate); + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + + /* Accept? */ + if (yystate == YYFINAL_) + ]b4_push_if([{label = YYACCEPT; break;}], + [return true;])[ + + /* Take a decision. First try without lookahead. */ + yyn = yypact_[yystate]; + if (yyPactValueIsDefault (yyn)) + { + label = YYDEFAULT; + break; + } +]b4_push_if([ /* Fall Through */ + + case YYGETTOKEN:])[ + /* Read a lookahead token. */ + if (yychar == YYEMPTY_) + { +]b4_push_if([[ + if (!push_token_consumed) + return YYPUSH_MORE;]b4_parse_trace_if([[ + yycdebug ("Reading a token");]])[ + yychar = yylextoken; + yylval = yylexval;]b4_locations_if([ + yylloc = yylexloc;])[ + push_token_consumed = false;]], [b4_parse_trace_if([[ + yycdebug ("Reading a token");]])[ + yychar = yylexer.yylex (); + yylval = yylexer.getLVal();]b4_locations_if([[ + yylloc = new ]b4_location_type[(yylexer.getStartPos(), + yylexer.getEndPos());]])[ +]])[ + } + + /* Convert token to internal form. */ + yytoken = yytranslate_ (yychar);]b4_parse_trace_if([[ + yySymbolPrint("Next token is", yytoken, + yylval]b4_locations_if([, yylloc])[);]])[ + + if (yytoken == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yychar = Lexer.]b4_symbol(undef, id)[; + yytoken = ]b4_symbol(undef, kind)[;]b4_locations_if([[ + yyerrloc = yylloc;]])[ + label = YYERRLAB1; + } + else + { + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken.getCode(); + if (yyn < 0 || YYLAST_ < yyn || yycheck_[yyn] != yytoken.getCode()) {]b4_lac_if([[ + if (!yylacEstablish(yystack, yytoken)) { + label = YYERRLAB; + } else]])[ + label = YYDEFAULT; + } + + /* <= 0 means reduce or error. */ + else if ((yyn = yytable_[yyn]) <= 0) + { + if (yyTableValueIsError(yyn)) { + label = YYERRLAB; + }]b4_lac_if([[ else if (!yylacEstablish(yystack, yytoken)) { + label = YYERRLAB; + }]])[ else { + yyn = -yyn; + label = YYREDUCE; + } + } + + else + { + /* Shift the lookahead token. */]b4_parse_trace_if([[ + yySymbolPrint("Shifting", yytoken, + yylval]b4_locations_if([, yylloc])[); +]])[ + /* Discard the token being shifted. */ + yychar = YYEMPTY_; + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus_ > 0) + --yyerrstatus_; + + yystate = yyn; + yystack.push(yystate, yylval]b4_locations_if([, yylloc])[);]b4_lac_if([[ + yylacDiscard("shift");]])[ + label = YYNEWSTATE; + } + } + break; + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + case YYDEFAULT: + yyn = yydefact_[yystate]; + if (yyn == 0) + label = YYERRLAB; + else + label = YYREDUCE; + break; + + /*-----------------------------. + | yyreduce -- Do a reduction. | + `-----------------------------*/ + case YYREDUCE: + yylen = yyr2_[yyn]; + label = yyaction(yyn, yystack, yylen); + yystate = yystack.stateAt(0); + break; + + /*------------------------------------. + | yyerrlab -- here on detecting error | + `------------------------------------*/ + case YYERRLAB: + /* If not already recovering from an error, report this error. */ + if (yyerrstatus_ == 0) + { + ++yynerrs; + if (yychar == YYEMPTY_) + yytoken = null; + yyreportSyntaxError(new Context(this, yystack, yytoken]b4_locations_if([[, yylloc]])[)); + } +]b4_locations_if([[ + yyerrloc = yylloc;]])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= Lexer.]b4_symbol(eof, id)[) + { + /* Return failure if at end of input. */ + if (yychar == Lexer.]b4_symbol(eof, id)[) + ]b4_push_if([{label = YYABORT; break;}], [return false;])[ + } + else + yychar = YYEMPTY_; + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + label = YYERRLAB1; + break; + + /*-------------------------------------------------. + | errorlab -- error raised explicitly by YYERROR. | + `-------------------------------------------------*/ + case YYERROR:]b4_locations_if([[ + yyerrloc = yystack.locationAt (yylen - 1);]])[ + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + yystack.pop (yylen); + yylen = 0; + yystate = yystack.stateAt(0); + label = YYERRLAB1; + break; + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + case YYERRLAB1: + yyerrstatus_ = 3; /* Each real token shifted decrements this. */ + + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[yystate]; + if (!yyPactValueIsDefault (yyn)) + { + yyn += ]b4_symbol(error, kind)[.getCode(); + if (0 <= yyn && yyn <= YYLAST_ + && yycheck_[yyn] == ]b4_symbol(error, kind)[.getCode()) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the + * error token. */ + if (yystack.height == 0) + ]b4_push_if([{label = YYABORT; break;}],[return false;])[ + +]b4_locations_if([[ + yyerrloc = yystack.locationAt (0);]])[ + yystack.pop (); + yystate = yystack.stateAt(0);]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + } + + if (label == YYABORT) + /* Leave the switch. */ + break; + +]b4_locations_if([[ + /* Muck with the stack to setup for yylloc. */ + yystack.push (0, null, yylloc); + yystack.push (0, null, yyerrloc); + yyloc = yylloc (yystack, 2); + yystack.pop (2);]])[ + + /* Shift the error token. */]b4_lac_if([[ + yylacDiscard("error recovery");]])[]b4_parse_trace_if([[ + yySymbolPrint("Shifting", SymbolKind.get(yystos_[yyn]), + yylval]b4_locations_if([, yyloc])[);]])[ + + yystate = yyn; + yystack.push (yyn, yylval]b4_locations_if([, yyloc])[); + label = YYNEWSTATE; + break; + + /* Accept. */ + case YYACCEPT: + ]b4_push_if([this.push_parse_initialized = false; return YYACCEPT;], + [return true;])[ + + /* Abort. */ + case YYABORT: + ]b4_push_if([this.push_parse_initialized = false; return YYABORT;], + [return false;])[ + } +} +]b4_push_if([[ + boolean push_parse_initialized = false; + + /** + * (Re-)Initialize the state of the push parser. + */ + public void push_parse_initialize () + { + /* Lookahead and lookahead in internal form. */ + this.yychar = YYEMPTY_; + this.yytoken = null; + + /* State. */ + this.yyn = 0; + this.yylen = 0; + this.yystate = 0; + this.yystack = new YYStack();]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.label = YYNEWSTATE; + + /* Error handling. */ + this.yynerrs = 0;]b4_locations_if([[ + /* The location where the error started. */ + this.yyerrloc = null; + this.yylloc = new ]b4_location_type[ (null, null);]])[ + + /* Semantic value of the lookahead. */ + this.yylval = null; + + yystack.push (this.yystate, this.yylval]b4_locations_if([, this.yylloc])[); + + this.push_parse_initialized = true; + + } +]b4_locations_if([[ + /** + * Push parse given input from an external lexer. + * + * @@param yylextoken current token + * @@param yylexval current lval + * @@param yyylexpos current position + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int push_parse(int yylextoken, ]b4_yystype[ yylexval, ]b4_position_type[ yylexpos)]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[ { + return push_parse(yylextoken, yylexval, new ]b4_location_type[(yylexpos)); + } +]])])[ + +]b4_both_if([[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * This version of parse() is defined only when api.push-push=both. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public boolean parse()]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[ { + if (yylexer == null) + throw new NullPointerException("Null Lexer"); + int status; + do { + int token = yylexer.yylex(); + ]b4_yystype[ lval = yylexer.getLVal();]b4_locations_if([[ + ]b4_location_type[ yyloc = new ]b4_location_type[(yylexer.getStartPos(), yylexer.getEndPos()); + status = push_parse(token, lval, yyloc);]], [[ + status = push_parse(token, lval);]])[ + } while (status == YYPUSH_MORE); + return status == YYACCEPT; + } +]])[ + + /** + * Information needed to get the list of expected tokens and to forge + * a syntax error diagnostic. + */ + public static final class Context { + Context(]b4_parser_class[ parser, YYStack stack, SymbolKind token]b4_locations_if([[, ]b4_location_type[ loc]])[) { + yyparser = parser; + yystack = stack; + yytoken = token;]b4_locations_if([[ + yylocation = loc;]])[ + } + + private ]b4_parser_class[ yyparser; + private YYStack yystack; + + + /** + * The symbol kind of the lookahead token. + */ + public final SymbolKind getToken() { + return yytoken; + } + + private SymbolKind yytoken;]b4_locations_if([[ + + /** + * The location of the lookahead. + */ + public final ]b4_location_type[ getLocation() { + return yylocation; + } + + private ]b4_location_type[ yylocation;]])[ + static final int NTOKENS = ]b4_parser_class[.YYNTOKENS_; + + /** + * Put in YYARG at most YYARGN of the expected tokens given the + * current YYCTX, and return the number of tokens stored in YYARG. If + * YYARG is null, return the number of expected tokens (guaranteed to + * be less than YYNTOKENS). + */ + int getExpectedTokens(SymbolKind yyarg[], int yyargn) { + return getExpectedTokens (yyarg, 0, yyargn); + } + + int getExpectedTokens(SymbolKind yyarg[], int yyoffset, int yyargn) { + int yycount = yyoffset;]b4_lac_if([b4_parse_trace_if([[ + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + if (!yyparser.yylacEstablished) + yyparser.yylacCheck(yystack, yytoken); +]])[ + for (int yyx = 0; yyx < YYNTOKENS_; ++yyx) + { + SymbolKind yysym = SymbolKind.get(yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser.yylacCheck(yystack, yysym)) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + int yyn = yypact_[this.yystack.stateAt(0)]; + if (!yyPactValueIsDefault(yyn)) + { + /* Start YYX at -YYN if negative to avoid negative + indexes in YYCHECK. In other words, skip the first + -YYN actions for this state because they are default + actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST_ - yyn + 1; + int yyxend = yychecklim < NTOKENS ? yychecklim : NTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[.getCode() + && !yyTableValueIsError(yytable_[yyx + yyn])) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; // FIXME: this is incorrect. + else + yyarg[yycount++] = SymbolKind.get(yyx); + } + }]])[ + if (yyarg != null && yycount == yyoffset && yyoffset < yyargn) + yyarg[yycount] = null; + return yycount - yyoffset; + } + } + +]b4_lac_if([[ + /** Check the lookahead yytoken. + * \returns true iff the token will be eventually shifted. + */ + boolean yylacCheck(YYStack yystack, SymbolKind yytoken) + { + // Logically, the yylacStack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + yylacStack.clear(); + // Reduce until we encounter a shift and thereby accept the token. + yycdebugNnl("LAC: checking lookahead " + yytoken.getName() + ":"); + int lacTop = 0; + while (true) + { + int topState = (yylacStack.isEmpty() + ? yystack.stateAt(lacTop) + : yylacStack.get(yylacStack.size() - 1)); + int yyrule = yypact_[topState]; + if (yyPactValueIsDefault(yyrule) + || (yyrule += yytoken.getCode()) < 0 || YYLAST_ < yyrule + || yycheck_[yyrule] != yytoken.getCode()) + { + // Use the default action. + yyrule = yydefact_[+topState]; + if (yyrule == 0) { + yycdebug(" Err"); + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yyTableValueIsError(yyrule)) { + yycdebug(" Err"); + return false; + } + if (0 < yyrule) { + yycdebug(" S" + yyrule); + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. + yycdebugNnl(" R" + (yyrule - 1)); + // Pop the corresponding number of values from the stack. + { + int yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + int lacSize = yylacStack.size(); + if (yylen < lacSize) { + // yylacStack.setSize(lacSize - yylen); + for (/* Nothing */; 0 < yylen; yylen -= 1) { + yylacStack.remove(yylacStack.size() - 1); + } + yylen = 0; + } else if (lacSize != 0) { + yylacStack.clear(); + yylen -= lacSize; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lacTop. + lacTop += yylen; + } + // Keep topState in sync with the updated stack. + topState = (yylacStack.isEmpty() + ? yystack.stateAt(lacTop) + : yylacStack.get(yylacStack.size() - 1)); + // Push the resulting state of the reduction. + int state = yyLRGotoState(topState, yyr1_[yyrule]); + yycdebugNnl(" G" + state); + yylacStack.add(state); + } + } + + /** Establish the initial context if no initial context currently exists. + * \returns true iff the token will be eventually shifted. + */ + boolean yylacEstablish(YYStack yystack, SymbolKind yytoken) { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yylacEstablish should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yylacEstablish is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yylacEstablished) { + return true; + } else { + yycdebug("LAC: initial context established for " + yytoken.getName()); + yylacEstablished = true; + return yylacCheck(yystack, yytoken); + } + } + + /** Discard any previous initial lookahead context because of event. + * \param event the event which caused the lookahead to be discarded. + * Only used for debbuging output. */ + void yylacDiscard(String event) { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yylacEstablished) { + yycdebug("LAC: initial context discarded due to " + event); + yylacEstablished = false; + } + } + + /** The stack for LAC. + * Logically, the yylacStack's lifetime is confined to the function + * yylacCheck. We just store it as a member of this class to hold + * on to the memory and to avoid frequent reallocations. + */ + ArrayList yylacStack; + /** Whether an initial LAC context was established. */ + boolean yylacEstablished; +]])[ + +]b4_parse_error_bmatch( +[detailed\|verbose], [[ + private int yysyntaxErrorArguments(Context yyctx, SymbolKind[] yyarg, int yyargn) { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, + then the only way this function was invoked is if the + default action is an error action. In that case, don't + check for expected tokens because there are none. + - The only way there can be no lookahead present (in tok) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this + state is a consistent state with a default action. There + might have been a previous inconsistent state, consistent + state with a non-default action, or user semantic action + that manipulated yychar. (However, yychar is currently out + of scope during semantic actions.) + - Of course, the expected token list depends on states to + have correct lookahead information, and it depends on the + parser not to perform extra reductions after fetching a + lookahead from the scanner and before detecting a syntax + error. Thus, state merging (from LALR or IELR) and default + reductions corrupt the expected token list. However, the + list is correct for canonical LR with one exception: it + will still contain any token that will not be accepted due + to an error action in a later state. + */ + int yycount = 0; + if (yyctx.getToken() != null) + { + if (yyarg != null) + yyarg[yycount] = yyctx.getToken(); + yycount += 1; + yycount += yyctx.getExpectedTokens(yyarg, 1, yyargn); + } + return yycount; + } +]])[ + + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + private void yyreportSyntaxError(Context yyctx) {]b4_parse_error_bmatch( +[custom], [[ + yylexer.reportSyntaxError(yyctx);]], +[detailed\|verbose], [[ + if (yyErrorVerbose) { + final int argmax = 5; + SymbolKind[] yyarg = new SymbolKind[argmax]; + int yycount = yysyntaxErrorArguments(yyctx, yyarg, argmax); + String[] yystr = new String[yycount]; + for (int yyi = 0; yyi < yycount; ++yyi) { + yystr[yyi] = yyarg[yyi].getName(); + } + String yyformat; + switch (yycount) { + default: + case 0: yyformat = ]b4_trans(["syntax error"])[; break; + case 1: yyformat = ]b4_trans(["syntax error, unexpected {0}"])[; break; + case 2: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1}"])[; break; + case 3: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2}"])[; break; + case 4: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2} or {3}"])[; break; + case 5: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2} or {3} or {4}"])[; break; + } + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[new MessageFormat(yyformat).format(yystr)); + } else { + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[]b4_trans(["syntax error"])[); + }]], +[simple], [[ + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[]b4_trans(["syntax error"])[);]])[ + } + + /** + * Whether the given yypact_ value indicates a defaulted state. + * @@param yyvalue the value to check + */ + private static boolean yyPactValueIsDefault(int yyvalue) { + return yyvalue == yypact_ninf_; + } + + /** + * Whether the given yytable_ + * value indicates a syntax error. + * @@param yyvalue the value to check + */ + private static boolean yyTableValueIsError(int yyvalue) { + return yyvalue == yytable_ninf_; + } + + private static final ]b4_int_type_for([b4_pact])[ yypact_ninf_ = ]b4_pact_ninf[; + private static final ]b4_int_type_for([b4_table])[ yytable_ninf_ = ]b4_table_ninf[; + +]b4_parser_tables_define[ + +]b4_parse_trace_if([[ + ]b4_integral_parser_table_define([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ + + + // Report on the debug stream that the rule yyrule is going to be reduced. + private void yyReducePrint (int yyrule, YYStack yystack) + { + if (yydebug == 0) + return; + + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + /* Print the symbols being reduced, and their result. */ + yycdebug ("Reducing stack by rule " + (yyrule - 1) + + " (line " + yylno + "):"); + + /* The symbols being reduced. */ + for (int yyi = 0; yyi < yynrhs; yyi++) + yySymbolPrint(" $" + (yyi + 1) + " =", + SymbolKind.get(yystos_[yystack.stateAt(yynrhs - (yyi + 1))]), + ]b4_rhs_data(yynrhs, yyi + 1)b4_locations_if([, + b4_rhs_location(yynrhs, yyi + 1)])[); + }]])[ + + /* YYTRANSLATE_(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ + private static final SymbolKind yytranslate_(int t) +]b4_api_token_raw_if(dnl +[[ { + return SymbolKind.get(t); + } +]], +[[ { + // Last valid token kind. + int code_max = ]b4_code_max[; + if (t <= 0) + return ]b4_symbol(eof, kind)[; + else if (t <= code_max) + return SymbolKind.get(yytranslate_table_[t]); + else + return ]b4_symbol(undef, kind)[; + } + ]b4_integral_parser_table_define([translate_table], [b4_translate])[ +]])[ + + private static final int YYLAST_ = ]b4_last[; + private static final int YYEMPTY_ = -2; + private static final int YYFINAL_ = ]b4_final_state_number[; + private static final int YYNTOKENS_ = ]b4_tokens_number[; + +]b4_percent_code_get[ +} +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/MinSizeRel/data/skeletons/location.cc b/bison/MinSizeRel/data/skeletons/location.cc new file mode 100644 index 0000000..3870b2b --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/location.cc @@ -0,0 +1,380 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_pushdef([b4_copyright_years], + [2002-2015, 2018-2021]) + + +# b4_location_file +# ---------------- +# Name of the file containing the position/location class, +# if we want this file. +b4_percent_define_check_file([b4_location_file], + [[api.location.file]], + b4_header_if([[location.hh]])) + +# b4_location_include +# ------------------- +# If location.hh is to be generated, the name under which should it be +# included. +# +# b4_location_path +# ---------------- +# The path to use for the CPP guard. +m4_ifdef([b4_location_file], +[m4_define([b4_location_include], + [b4_percent_define_get([[api.location.include]], + ["b4_location_file"])]) + m4_define([b4_location_path], + b4_percent_define_get([[api.location.include]], + ["b4_mapped_dir_prefix[]b4_location_file"])) + m4_define([b4_location_path], + m4_substr(m4_defn([b4_location_path]), 1, m4_eval(m4_len(m4_defn([b4_location_path])) - 2))) + ]) + + +# b4_position_file +# ---------------- +# Name of the file containing the position class, if we want this file. +b4_header_if( + [b4_required_version_if( + [30200], [], + [m4_ifdef([b4_location_file], + [m4_define([b4_position_file], [position.hh])])])]) + + + +# b4_location_define +# ------------------ +# Define the position and location classes. +m4_define([b4_location_define], +[[ /// A point in a source file. + class position + { + public: + /// Type for file name. + typedef ]b4_percent_define_get([[api.filename.type]])[ filename_type; + /// Type for line and column numbers. + typedef int counter_type; +]m4_ifdef([b4_location_constructors], [[ + /// Construct a position. + explicit position (filename_type* f = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + : filename (f) + , line (l) + , column (c) + {} + +]])[ + /// Initialization. + void initialize (filename_type* fn = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + { + filename = fn; + line = l; + column = c; + } + + /** \name Line and Column related manipulators + ** \{ */ + /// (line related) Advance to the COUNT next lines. + void lines (counter_type count = 1) + { + if (count) + { + column = ]b4_location_initial_column[; + line = add_ (line, count, ]b4_location_initial_line[); + } + } + + /// (column related) Advance to the COUNT next columns. + void columns (counter_type count = 1) + { + column = add_ (column, count, ]b4_location_initial_column[); + } + /** \} */ + + /// File name to which this position refers. + filename_type* filename; + /// Current line number. + counter_type line; + /// Current column number. + counter_type column; + + private: + /// Compute max (min, lhs+rhs). + static counter_type add_ (counter_type lhs, counter_type rhs, counter_type min) + { + return lhs + rhs < min ? min : lhs + rhs; + } + }; + + /// Add \a width columns, in place. + inline position& + operator+= (position& res, position::counter_type width) + { + res.columns (width); + return res; + } + + /// Add \a width columns. + inline position + operator+ (position res, position::counter_type width) + { + return res += width; + } + + /// Subtract \a width columns, in place. + inline position& + operator-= (position& res, position::counter_type width) + { + return res += -width; + } + + /// Subtract \a width columns. + inline position + operator- (position res, position::counter_type width) + { + return res -= width; + } +]b4_percent_define_flag_if([[define_location_comparison]], [[ + /// Compare two position objects. + inline bool + operator== (const position& pos1, const position& pos2) + { + return (pos1.line == pos2.line + && pos1.column == pos2.column + && (pos1.filename == pos2.filename + || (pos1.filename && pos2.filename + && *pos1.filename == *pos2.filename))); + } + + /// Compare two position objects. + inline bool + operator!= (const position& pos1, const position& pos2) + { + return !(pos1 == pos2); + } +]])[ + /** \brief Intercept output stream redirection. + ** \param ostr the destination output stream + ** \param pos a reference to the position to redirect + */ + template + std::basic_ostream& + operator<< (std::basic_ostream& ostr, const position& pos) + { + if (pos.filename) + ostr << *pos.filename << ':'; + return ostr << pos.line << '.' << pos.column; + } + + /// Two points in a source file. + class location + { + public: + /// Type for file name. + typedef position::filename_type filename_type; + /// Type for line and column numbers. + typedef position::counter_type counter_type; +]m4_ifdef([b4_location_constructors], [ + /// Construct a location from \a b to \a e. + location (const position& b, const position& e) + : begin (b) + , end (e) + {} + + /// Construct a 0-width location in \a p. + explicit location (const position& p = position ()) + : begin (p) + , end (p) + {} + + /// Construct a 0-width location in \a f, \a l, \a c. + explicit location (filename_type* f, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + : begin (f, l, c) + , end (f, l, c) + {} + +])[ + /// Initialization. + void initialize (filename_type* f = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + { + begin.initialize (f, l, c); + end = begin; + } + + /** \name Line and Column related manipulators + ** \{ */ + public: + /// Reset initial location to final location. + void step () + { + begin = end; + } + + /// Extend the current location to the COUNT next columns. + void columns (counter_type count = 1) + { + end += count; + } + + /// Extend the current location to the COUNT next lines. + void lines (counter_type count = 1) + { + end.lines (count); + } + /** \} */ + + + public: + /// Beginning of the located region. + position begin; + /// End of the located region. + position end; + }; + + /// Join two locations, in place. + inline location& + operator+= (location& res, const location& end) + { + res.end = end.end; + return res; + } + + /// Join two locations. + inline location + operator+ (location res, const location& end) + { + return res += end; + } + + /// Add \a width columns to the end position, in place. + inline location& + operator+= (location& res, location::counter_type width) + { + res.columns (width); + return res; + } + + /// Add \a width columns to the end position. + inline location + operator+ (location res, location::counter_type width) + { + return res += width; + } + + /// Subtract \a width columns to the end position, in place. + inline location& + operator-= (location& res, location::counter_type width) + { + return res += -width; + } + + /// Subtract \a width columns to the end position. + inline location + operator- (location res, location::counter_type width) + { + return res -= width; + } +]b4_percent_define_flag_if([[define_location_comparison]], [[ + /// Compare two location objects. + inline bool + operator== (const location& loc1, const location& loc2) + { + return loc1.begin == loc2.begin && loc1.end == loc2.end; + } + + /// Compare two location objects. + inline bool + operator!= (const location& loc1, const location& loc2) + { + return !(loc1 == loc2); + } +]])[ + /** \brief Intercept output stream redirection. + ** \param ostr the destination output stream + ** \param loc a reference to the location to redirect + ** + ** Avoid duplicate information. + */ + template + std::basic_ostream& + operator<< (std::basic_ostream& ostr, const location& loc) + { + location::counter_type end_col + = 0 < loc.end.column ? loc.end.column - 1 : 0; + ostr << loc.begin; + if (loc.end.filename + && (!loc.begin.filename + || *loc.begin.filename != *loc.end.filename)) + ostr << '-' << loc.end.filename << ':' << loc.end.line << '.' << end_col; + else if (loc.begin.line < loc.end.line) + ostr << '-' << loc.end.line << '.' << end_col; + else if (loc.begin.column < end_col) + ostr << '-' << end_col; + return ostr; + } +]]) + + +m4_ifdef([b4_position_file], [[ +]b4_output_begin([b4_dir_prefix], [b4_position_file])[ +]b4_generated_by[ +// Starting with Bison 3.2, this file is useless: the structure it +// used to define is now defined in "]b4_location_file[". +// +// To get rid of this file: +// 1. add '%require "3.2"' (or newer) to your grammar file +// 2. remove references to this file from your build system +// 3. if you used to include it, include "]b4_location_file[" instead. + +#include ]b4_location_include[ +]b4_output_end[ +]]) + + +m4_ifdef([b4_location_file], [[ +]b4_output_begin([b4_dir_prefix], [b4_location_file])[ +]b4_copyright([Locations for Bison parsers in C++])[ +/** + ** \file ]b4_location_path[ + ** Define the ]b4_namespace_ref[::location class. + */ + +]b4_cpp_guard_open([b4_location_path])[ + +# include +# include + +]b4_null_define[ + +]b4_namespace_open[ +]b4_location_define[ +]b4_namespace_close[ +]b4_cpp_guard_close([b4_location_path])[ +]b4_output_end[ +]]) + + +m4_popdef([b4_copyright_years]) diff --git a/bison/MinSizeRel/data/skeletons/stack.hh b/bison/MinSizeRel/data/skeletons/stack.hh new file mode 100644 index 0000000..9891325 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/stack.hh @@ -0,0 +1,157 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# b4_stack_file +# ------------- +# Name of the file containing the stack class, if we want this file. +b4_header_if([b4_required_version_if([30200], [], + [m4_define([b4_stack_file], [stack.hh])])]) + + +# b4_stack_define +# --------------- +m4_define([b4_stack_define], +[[ /// A stack with random access from its top. + template > + class stack + { + public: + // Hide our reversed order. + typedef typename S::iterator iterator; + typedef typename S::const_iterator const_iterator; + typedef typename S::size_type size_type; + typedef typename std::ptrdiff_t index_type; + + stack (size_type n = 200) YY_NOEXCEPT + : seq_ (n) + {} + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + stack (const stack&) = delete; + /// Non copyable. + stack& operator= (const stack&) = delete; +#endif + + /// Random access. + /// + /// Index 0 returns the topmost element. + const T& + operator[] (index_type i) const + { + return seq_[size_type (size () - 1 - i)]; + } + + /// Random access. + /// + /// Index 0 returns the topmost element. + T& + operator[] (index_type i) + { + return seq_[size_type (size () - 1 - i)]; + } + + /// Steal the contents of \a t. + /// + /// Close to move-semantics. + void + push (YY_MOVE_REF (T) t) + { + seq_.push_back (T ()); + operator[] (0).move (t); + } + + /// Pop elements from the stack. + void + pop (std::ptrdiff_t n = 1) YY_NOEXCEPT + { + for (; 0 < n; --n) + seq_.pop_back (); + } + + /// Pop all elements from the stack. + void + clear () YY_NOEXCEPT + { + seq_.clear (); + } + + /// Number of elements on the stack. + index_type + size () const YY_NOEXCEPT + { + return index_type (seq_.size ()); + } + + /// Iterator on top of the stack (going downwards). + const_iterator + begin () const YY_NOEXCEPT + { + return seq_.begin (); + } + + /// Bottom of the stack. + const_iterator + end () const YY_NOEXCEPT + { + return seq_.end (); + } + + /// Present a slice of the top of a stack. + class slice + { + public: + slice (const stack& stack, index_type range) YY_NOEXCEPT + : stack_ (stack) + , range_ (range) + {} + + const T& + operator[] (index_type i) const + { + return stack_[range_ - i]; + } + + private: + const stack& stack_; + index_type range_; + }; + + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + stack (const stack&); + /// Non copyable. + stack& operator= (const stack&); +#endif + /// The wrapped container. + S seq_; + }; +]]) + +m4_ifdef([b4_stack_file], +[b4_output_begin([b4_dir_prefix], [b4_stack_file])[ +]b4_generated_by[ +// Starting with Bison 3.2, this file is useless: the structure it +// used to define is now defined with the parser itself. +// +// To get rid of this file: +// 1. add '%require "3.2"' (or newer) to your grammar file +// 2. remove references to this file from your build system. +]b4_output_end[ +]]) diff --git a/bison/MinSizeRel/data/skeletons/traceon.m4 b/bison/MinSizeRel/data/skeletons/traceon.m4 new file mode 100644 index 0000000..344d7d1 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/traceon.m4 @@ -0,0 +1,2 @@ +dnl GNU M4 treats -dV in a position-independent manner. +m4_debugmode(V)m4_traceon()dnl diff --git a/bison/MinSizeRel/data/skeletons/variant.hh b/bison/MinSizeRel/data/skeletons/variant.hh new file mode 100644 index 0000000..2a490e8 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/variant.hh @@ -0,0 +1,525 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +## --------- ## +## variant. ## +## --------- ## + +# b4_assert +# --------- +# The name of YY_ASSERT. +m4_define([b4_assert], + [b4_api_PREFIX[]_ASSERT]) + + +# b4_symbol_variant(YYTYPE, YYVAL, ACTION, [ARGS]) +# ------------------------------------------------ +# Run some ACTION ("build", or "destroy") on YYVAL of symbol type +# YYTYPE. +m4_define([b4_symbol_variant], +[m4_pushdef([b4_dollar_dollar], + [$2.$3< $][3 > (m4_shift3($@))])dnl +switch ($1) + { +b4_type_foreach([_b4_type_action])[]dnl + default: + break; + } +m4_popdef([b4_dollar_dollar])dnl +]) + + +# _b4_char_sizeof_counter +# ----------------------- +# A counter used by _b4_char_sizeof_dummy to create fresh symbols. +m4_define([_b4_char_sizeof_counter], +[0]) + +# _b4_char_sizeof_dummy +# --------------------- +# At each call return a new C++ identifier. +m4_define([_b4_char_sizeof_dummy], +[m4_define([_b4_char_sizeof_counter], m4_incr(_b4_char_sizeof_counter))dnl +dummy[]_b4_char_sizeof_counter]) + + +# b4_char_sizeof(SYMBOL-NUMS) +# --------------------------- +# To be mapped on the list of type names to produce: +# +# char dummy1[sizeof (type_name_1)]; +# char dummy2[sizeof (type_name_2)]; +# +# for defined type names. +m4_define([b4_char_sizeof], +[b4_symbol_if([$1], [has_type], +[ +m4_map([ b4_symbol_tag_comment], [$@])dnl + char _b4_char_sizeof_dummy@{sizeof (b4_symbol([$1], [type]))@}; +])]) + + +# b4_variant_includes +# ------------------- +# The needed includes for variants support. +m4_define([b4_variant_includes], +[b4_parse_assert_if([[#include +#ifndef ]b4_assert[ +# include +# define ]b4_assert[ assert +#endif +]])]) + + + +## -------------------------- ## +## Adjustments for variants. ## +## -------------------------- ## + + +# b4_value_type_declare +# --------------------- +# Define value_type. +m4_define([b4_value_type_declare], +[[ /// A buffer to store and retrieve objects. + /// + /// Sort of a variant, but does not keep track of the nature + /// of the stored data, since that knowledge is available + /// via the current parser state. + class value_type + { + public: + /// Type of *this. + typedef value_type self_type; + + /// Empty construction. + value_type () YY_NOEXCEPT + : yyraw_ ()]b4_parse_assert_if([ + , yytypeid_ (YY_NULLPTR)])[ + {} + + /// Construct and fill. + template + value_type (YY_RVREF (T) t)]b4_parse_assert_if([ + : yytypeid_ (&typeid (T))])[ + {]b4_parse_assert_if([[ + ]b4_assert[ (sizeof (T) <= size);]])[ + new (yyas_ ()) T (YY_MOVE (t)); + } + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + value_type (const self_type&) = delete; + /// Non copyable. + self_type& operator= (const self_type&) = delete; +#endif + + /// Destruction, allowed only if empty. + ~value_type () YY_NOEXCEPT + {]b4_parse_assert_if([ + ]b4_assert[ (!yytypeid_); + ])[} + +# if 201103L <= YY_CPLUSPLUS + /// Instantiate a \a T in here from \a t. + template + T& + emplace (U&&... u) + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (std::forward (u)...); + } +# else + /// Instantiate an empty \a T in here. + template + T& + emplace () + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (); + } + + /// Instantiate a \a T in here from \a t. + template + T& + emplace (const T& t) + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (t); + } +# endif + + /// Instantiate an empty \a T in here. + /// Obsolete, use emplace. + template + T& + build () + { + return emplace (); + } + + /// Instantiate a \a T in here from \a t. + /// Obsolete, use emplace. + template + T& + build (const T& t) + { + return emplace (t); + } + + /// Accessor to a built \a T. + template + T& + as () YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == typeid (T)); + ]b4_assert[ (sizeof (T) <= size);]])[ + return *yyas_ (); + } + + /// Const accessor to a built \a T (for %printer). + template + const T& + as () const YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == typeid (T)); + ]b4_assert[ (sizeof (T) <= size);]])[ + return *yyas_ (); + } + + /// Swap the content with \a that, of same type. + /// + /// Both variants must be built beforehand, because swapping the actual + /// data requires reading it (with as()), and this is not possible on + /// unconstructed variants: it would require some dynamic testing, which + /// should not be the variant's responsibility. + /// Swapping between built and (possibly) non-built is done with + /// self_type::move (). + template + void + swap (self_type& that) YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == *that.yytypeid_);]])[ + std::swap (as (), that.as ()); + } + + /// Move the content of \a that to this. + /// + /// Destroys \a that. + template + void + move (self_type& that) + { +# if 201103L <= YY_CPLUSPLUS + emplace (std::move (that.as ())); +# else + emplace (); + swap (that); +# endif + that.destroy (); + } + +# if 201103L <= YY_CPLUSPLUS + /// Move the content of \a that to this. + template + void + move (self_type&& that) + { + emplace (std::move (that.as ())); + that.destroy (); + } +#endif + + /// Copy the content of \a that to this. + template + void + copy (const self_type& that) + { + emplace (that.as ()); + } + + /// Destroy the stored \a T. + template + void + destroy () + { + as ().~T ();]b4_parse_assert_if([ + yytypeid_ = YY_NULLPTR;])[ + } + + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + value_type (const self_type&); + /// Non copyable. + self_type& operator= (const self_type&); +#endif + + /// Accessor to raw memory as \a T. + template + T* + yyas_ () YY_NOEXCEPT + { + void *yyp = yyraw_; + return static_cast (yyp); + } + + /// Const accessor to raw memory as \a T. + template + const T* + yyas_ () const YY_NOEXCEPT + { + const void *yyp = yyraw_; + return static_cast (yyp); + } + + /// An auxiliary type to compute the largest semantic type. + union union_type + {]b4_type_foreach([b4_char_sizeof])[ }; + + /// The size of the largest semantic type. + enum { size = sizeof (union_type) }; + + /// A buffer to store semantic values. + union + { + /// Strongest alignment constraints. + long double yyalign_me_; + /// A buffer large enough to store any of the semantic values. + char yyraw_[size]; + };]b4_parse_assert_if([ + + /// Whether the content is built: if defined, the name of the stored type. + const std::type_info *yytypeid_;])[ + }; +]]) + + +# How the semantic value is extracted when using variants. + +# b4_symbol_value(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [$1.as< $3 > ()], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [$1.as < b4_symbol([$2], [type]) > ()], + [$1])], + [$1])])]) + +# b4_symbol_value_template(VAL, SYMBOL-NUM, [TYPE]) +# ------------------------------------------------- +# Same as b4_symbol_value, but used in a template method. +m4_define([b4_symbol_value_template], +[m4_ifval([$3], + [$1.template as< $3 > ()], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [$1.template as < b4_symbol([$2], [type]) > ()], + [$1])], + [$1])])]) + + + +## ------------- ## +## make_SYMBOL. ## +## ------------- ## + + +# _b4_includes_tokens(SYMBOL-NUM...) +# ---------------------------------- +# Expands to non-empty iff one of the SYMBOL-NUM denotes +# a token. +m4_define([_b4_is_token], + [b4_symbol_if([$1], [is_token], [1])]) +m4_define([_b4_includes_tokens], + [m4_map([_b4_is_token], [$@])]) + + +# _b4_token_maker_define(SYMBOL-NUM) +# ---------------------------------- +# Declare make_SYMBOL for SYMBOL-NUM. Use at class-level. +m4_define([_b4_token_maker_define], +[b4_token_visible_if([$1], +[#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_[]_b4_symbol([$1], [id]) (b4_join( + b4_symbol_if([$1], [has_type], + [b4_symbol([$1], [type]) v]), + b4_locations_if([location_type l]))) + { + return symbol_type (b4_join([token::b4_symbol([$1], [id])], + b4_symbol_if([$1], [has_type], [std::move (v)]), + b4_locations_if([std::move (l)]))); + } +#else + static + symbol_type + make_[]_b4_symbol([$1], [id]) (b4_join( + b4_symbol_if([$1], [has_type], + [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))) + { + return symbol_type (b4_join([token::b4_symbol([$1], [id])], + b4_symbol_if([$1], [has_type], [v]), + b4_locations_if([l]))); + } +#endif +])]) + + +# b4_token_kind(SYMBOL-NUM) +# ------------------------- +# Some tokens don't have an ID. +m4_define([b4_token_kind], +[b4_symbol_if([$1], [has_id], + [token::b4_symbol([$1], [id])], + [b4_symbol([$1], [code])])]) + + +# _b4_tok_in(SYMBOL-NUM, ...) +# --------------------------- +# See b4_tok_in below. The SYMBOL-NUMs... are tokens only. +# +# We iterate over the tokens to group them by "range" of token numbers (not +# symbols numbers!). +# +# b4_fst is the start of that range. +# b4_prev is the previous value. +# b4_val is the current value. +# If b4_val is the successor of b4_prev in token numbers, update the latter, +# otherwise emit the code for range b4_fst .. b4_prev. +# $1 is also used as a terminator in the foreach, but it will not be printed. +# +m4_define([_b4_tok_in], +[m4_pushdef([b4_prev], [$1])dnl +m4_pushdef([b4_fst], [$1])dnl +m4_pushdef([b4_sep], [])dnl +m4_foreach([b4_val], m4_dquote(m4_shift($@, $1)), + [m4_if(b4_symbol(b4_val, [code]), m4_eval(b4_symbol(b4_prev, [code]) + 1), [], + [b4_sep[]m4_if(b4_fst, b4_prev, + [tok == b4_token_kind(b4_fst)], + [(b4_token_kind(b4_fst) <= tok && tok <= b4_token_kind(b4_prev))])[]dnl +m4_define([b4_fst], b4_val)dnl +m4_define([b4_sep], [ + || ])])dnl +m4_define([b4_prev], b4_val)])dnl +m4_popdef([b4_sep])dnl +m4_popdef([b4_fst])dnl +m4_popdef([b4_prev])dnl +]) + + +# _b4_filter_tokens(SYMBOL-NUM, ...) +# ---------------------------------- +# Expand as the list of tokens amongst SYMBOL-NUM. +m4_define([_b4_filter_tokens], +[m4_pushdef([b4_sep])dnl +m4_foreach([b4_val], [$@], + [b4_symbol_if(b4_val, [is_token], [b4_sep[]b4_val[]m4_define([b4_sep], [,])])])dnl +m4_popdef([b4_sep])dnl +]) + + +# b4_tok_in(SYMBOL-NUM, ...) +# --------------------------- +# A C++ conditional that checks that `tok` is a member of this list of symbol +# numbers. +m4_define([b4_tok_in], + [_$0(_b4_filter_tokens($@))]) + + + + +# _b4_symbol_constructor_define(SYMBOL-NUM...) +# -------------------------------------------- +# Define a symbol_type constructor common to all the SYMBOL-NUM (they +# have the same type). Use at class-level. +m4_define([_b4_symbol_constructor_define], +[m4_ifval(_b4_includes_tokens($@), +[[#if 201103L <= YY_CPLUSPLUS + symbol_type (]b4_join( + [int tok], + b4_symbol_if([$1], [has_type], + [b4_symbol([$1], [type]) v]), + b4_locations_if([location_type l]))[) + : super_type (]b4_join([token_kind_type (tok)], + b4_symbol_if([$1], [has_type], [std::move (v)]), + b4_locations_if([std::move (l)]))[) +#else + symbol_type (]b4_join( + [int tok], + b4_symbol_if([$1], [has_type], + [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))[) + : super_type (]b4_join([token_kind_type (tok)], + b4_symbol_if([$1], [has_type], [v]), + b4_locations_if([l]))[) +#endif + {]b4_parse_assert_if([[ +#if !defined _MSC_VER || defined __clang__ + ]b4_assert[ (]b4_tok_in($@)[); +#endif + ]])[} +]])]) + + +# b4_basic_symbol_constructor_define(SYMBOL-NUM) +# ---------------------------------------------- +# Generate a constructor for basic_symbol from given type. +m4_define([b4_basic_symbol_constructor_define], +[[#if 201103L <= YY_CPLUSPLUS + basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_symbol_if([$1], [has_type], [b4_symbol([$1], [type])&& v]), + b4_locations_if([location_type&& l]))[) + : Base (t)]b4_symbol_if([$1], [has_type], [ + , value (std::move (v))])[]b4_locations_if([ + , location (std::move (l))])[ + {} +#else + basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_symbol_if([$1], [has_type], [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))[) + : Base (t)]b4_symbol_if([$1], [has_type], [ + , value (v)])[]b4_locations_if([ + , location (l)])[ + {} +#endif +]]) + + +# b4_token_constructor_define +# --------------------------- +# Define the overloaded versions of make_FOO for all the token kinds. +m4_define([b4_token_constructor_define], +[ // Implementation of make_symbol for each token kind. +b4_symbol_foreach([_b4_token_maker_define])]) diff --git a/bison/MinSizeRel/data/skeletons/yacc.c b/bison/MinSizeRel/data/skeletons/yacc.c new file mode 100644 index 0000000..64b9ac6 --- /dev/null +++ b/bison/MinSizeRel/data/skeletons/yacc.c @@ -0,0 +1,2209 @@ +# -*- C -*- +# Yacc compatible skeleton for Bison + +# Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software +# Foundation, Inc. + +m4_pushdef([b4_copyright_years], + [1984, 1989-1990, 2000-2015, 2018-2021]) + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c.m4]) + + +## ---------- ## +## api.pure. ## +## ---------- ## + +b4_percent_define_default([[api.pure]], [[false]]) +b4_percent_define_check_values([[[[api.pure]], + [[false]], [[true]], [[]], [[full]]]]) + +m4_define([b4_pure_flag], [[0]]) +m4_case(b4_percent_define_get([[api.pure]]), + [false], [m4_define([b4_pure_flag], [[0]])], + [true], [m4_define([b4_pure_flag], [[1]])], + [], [m4_define([b4_pure_flag], [[1]])], + [full], [m4_define([b4_pure_flag], [[2]])]) + +m4_define([b4_pure_if], +[m4_case(b4_pure_flag, + [0], [$2], + [1], [$1], + [2], [$1])]) + [m4_fatal([invalid api.pure value: ]$1)])]) + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +# b4_pull_if, b4_push_if +# ---------------------- +# Whether the pull/push APIs are needed. Both can be enabled. + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + +## ----------- ## +## parse.lac. ## +## ----------- ## + +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_default([[parse.lac.es-capacity-initial]], [[20]]) +b4_percent_define_default([[parse.lac.memory-trace]], [[failures]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]], + [[[[parse.lac.memory-trace]], + [[failures]], [[full]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + + +# b4_yyerror_arg_loc_if(ARG) +# -------------------------- +# Expand ARG iff yyerror is to be given a location as argument. +m4_define([b4_yyerror_arg_loc_if], +[b4_locations_if([m4_case(b4_pure_flag, + [1], [m4_ifset([b4_parse_param], [$1])], + [2], [$1])])]) + +# b4_yyerror_formals +# ------------------ +m4_define([b4_yyerror_formals], +[b4_pure_if([b4_locations_if([, [[const ]b4_api_PREFIX[LTYPE *yyllocp], [&yylloc]]])[]dnl +m4_ifdef([b4_parse_param], [, b4_parse_param])[]dnl +,])dnl +[[const char *msg], [msg]]]) + + + +# b4_yyerror_args +# --------------- +# Arguments passed to yyerror: user args plus yylloc. +m4_define([b4_yyerror_args], +[b4_yyerror_arg_loc_if([&yylloc, ])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_accept([SYMBOL-NUM]) +# ----------------------- +# Used in actions of the rules of accept, the initial symbol, to call +# YYACCEPT. If SYMBOL-NUM is specified, run "yyvalue->SLOT = $2;" +# before, using the slot of SYMBOL-NUM. +m4_define([b4_accept], +[m4_ifval([$1], + [b4_symbol_value(yyimpl->yyvalue, [$1]) = b4_rhs_value(2, 1, [$1]); ]) YYACCEPT]) + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value(yyval, [$1], [$2])]) + + +# b4_rhs_value(RULE-LENGTH, POS, [SYMBOL-NUM], [TYPE]) +# ---------------------------------------------------- +# See README. +m4_define([b4_rhs_value], +[b4_symbol_value([yyvsp@{b4_subtract([$2], [$1])@}], [$3], [$4])]) + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +# Overparenthetized to avoid obscure problems with "foo$$bar = foo$1bar". +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +# Overparenthetized to avoid obscure problems with "foo$$bar = foo$1bar". +m4_define([b4_rhs_location], +[(yylsp@{b4_subtract([$2], [$1])@})]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + +# _b4_declare_sub_yyparse(START-SYMBOL-NUM, SWITCHING-TOKEN-SYMBOL-NUM) +# --------------------------------------------------------------------- +# Define the return type of the parsing function for SYMBOL-NUM, and +# declare its parsing function. +m4_define([_b4_declare_sub_yyparse], +[[ +// Return type when parsing one ]_b4_symbol($1, tag)[. +typedef struct +{]b4_symbol_if([$1], [has_type], [[ + ]_b4_symbol($1, type)[ yyvalue;]])[ + int yystatus; + int yynerrs; +} ]b4_prefix[parse_]_b4_symbol($1, id)[_t; + +// Parse one ]_b4_symbol($1, tag)[. +]b4_prefix[parse_]_b4_symbol($1, id)[_t ]b4_prefix[parse_]_b4_symbol($1, id)[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]]) + + +# _b4_first_switching_token +# ------------------------- +m4_define([b4_first], [$1]) +m4_define([b4_second], [$2]) +m4_define([_b4_first_switching_token], +[b4_second(b4_first(b4_start_symbols))]) + + +# _b4_define_sub_yyparse(START-SYMBOL-NUM, SWITCHING-TOKEN-SYMBOL-NUM) +# -------------------------------------------------------------------- +# Define the parsing function for START-SYMBOL-NUM. +m4_define([_b4_define_sub_yyparse], +[[ +]b4_prefix[parse_]_b4_symbol($1, id)[_t +]b4_prefix[parse_]_b4_symbol($1, id)[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + ]b4_prefix[parse_]_b4_symbol($1, id)[_t yyres; + yy_parse_impl_t yyimpl; + yyres.yystatus = yy_parse_impl (]b4_symbol($2, id)[, &yyimpl]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[);]b4_symbol_if([$1], [has_type], [[ + yyres.yyvalue = yyimpl.yyvalue.]b4_symbol($1, slot)[;]])[ + yyres.yynerrs = yyimpl.yynerrs; + return yyres; +} +]]) + + +# b4_declare_scanner_communication_variables +# ------------------------------------------ +# Declare the variables that are global, or local to YYPARSE if +# pure-parser. +m4_define([b4_declare_scanner_communication_variables], [[ +]m4_ifdef([b4_start_symbols], [], +[[/* Lookahead token kind. */ +int yychar; +]])[ +]b4_pure_if([[ +/* The semantic value of the lookahead symbol. */ +/* Default value used for initialization, for pacifying older GCCs + or non-GCC compilers. */ +YY_INITIAL_VALUE (static YYSTYPE yyval_default;) +YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);]b4_locations_if([[ + +/* Location data for the lookahead symbol. */ +static YYLTYPE yyloc_default]b4_yyloc_default[; +YYLTYPE yylloc = yyloc_default;]])], +[[/* The semantic value of the lookahead symbol. */ +YYSTYPE yylval;]b4_locations_if([[ +/* Location data for the lookahead symbol. */ +YYLTYPE yylloc]b4_yyloc_default[;]])[ +/* Number of syntax errors so far. */ +int yynerrs;]])]) + + +# b4_declare_parser_state_variables([INIT]) +# ----------------------------------------- +# Declare all the variables that are needed to maintain the parser state +# between calls to yypush_parse. +# If INIT is non-null, initialize these variables. +m4_define([b4_declare_parser_state_variables], +[b4_pure_if([[ + /* Number of syntax errors so far. */ + int yynerrs]m4_ifval([$1], [ = 0])[; +]])[ + yy_state_fast_t yystate]m4_ifval([$1], [ = 0])[; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus]m4_ifval([$1], [ = 0])[; + + /* Refer to the stacks through separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* Their size. */ + YYPTRDIFF_T yystacksize]m4_ifval([$1], [ = YYINITDEPTH])[; + + /* The state stack: array, bottom, top. */ + yy_state_t yyssa[YYINITDEPTH]; + yy_state_t *yyss]m4_ifval([$1], [ = yyssa])[; + yy_state_t *yyssp]m4_ifval([$1], [ = yyss])[; + + /* The semantic value stack: array, bottom, top. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs]m4_ifval([$1], [ = yyvsa])[; + YYSTYPE *yyvsp]m4_ifval([$1], [ = yyvs])[;]b4_locations_if([[ + + /* The location stack: array, bottom, top. */ + YYLTYPE yylsa[YYINITDEPTH]; + YYLTYPE *yyls]m4_ifval([$1], [ = yylsa])[; + YYLTYPE *yylsp]m4_ifval([$1], [ = yyls])[;]])[]b4_lac_if([[ + + yy_state_t yyesa@{]b4_percent_define_get([[parse.lac.es-capacity-initial]])[@}; + yy_state_t *yyes]m4_ifval([$1], [ = yyesa])[; + YYPTRDIFF_T yyes_capacity][]m4_ifval([$1], + [m4_do([ = b4_percent_define_get([[parse.lac.es-capacity-initial]]) < YYMAXDEPTH], + [ ? b4_percent_define_get([[parse.lac.es-capacity-initial]])], + [ : YYMAXDEPTH])])[;]])]) + + +m4_define([b4_macro_define], +[[#]define $1 $2]) + +m4_define([b4_macro_undef], +[[#]undef $1]) + +m4_define([b4_pstate_macro_define], +[b4_macro_define([$1], [yyps->$1])]) + +# b4_parse_state_variable_macros(b4_macro_define|b4_macro_undef) +# -------------------------------------------------------------- +m4_define([b4_parse_state_variable_macros], +[b4_pure_if([$1([b4_prefix[]nerrs])]) +$1([yystate]) +$1([yyerrstatus]) +$1([yyssa]) +$1([yyss]) +$1([yyssp]) +$1([yyvsa]) +$1([yyvs]) +$1([yyvsp])[]b4_locations_if([ +$1([yylsa]) +$1([yyls]) +$1([yylsp])]) +$1([yystacksize])[]b4_lac_if([ +$1([yyesa]) +$1([yyes]) +$1([yyes_capacity])])]) + + + + +# _b4_declare_yyparse_push +# ------------------------ +# Declaration of yyparse (and dependencies) when using the push parser +# (including in pull mode). +m4_define([_b4_declare_yyparse_push], +[[#ifndef YYPUSH_MORE_DEFINED +# define YYPUSH_MORE_DEFINED +enum { YYPUSH_MORE = 4 }; +#endif + +typedef struct ]b4_prefix[pstate ]b4_prefix[pstate; + +]b4_pull_if([[ +int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[);]])[ +int ]b4_prefix[push_parse (]b4_prefix[pstate *ps]b4_pure_if([[, + int pushed_char, ]b4_api_PREFIX[STYPE const *pushed_val]b4_locations_if([[, ]b4_api_PREFIX[LTYPE *pushed_loc]])])b4_user_formals[); +]b4_pull_if([[int ]b4_prefix[pull_parse (]b4_prefix[pstate *ps]b4_user_formals[);]])[ +]b4_prefix[pstate *]b4_prefix[pstate_new (void); +void ]b4_prefix[pstate_delete (]b4_prefix[pstate *ps); +]]) + + +# _b4_declare_yyparse +# ------------------- +# When not the push parser. +m4_define([_b4_declare_yyparse], +[[int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]m4_ifdef([b4_start_symbols], + [m4_map([_b4_declare_sub_yyparse], m4_defn([b4_start_symbols]))])]) + + +# b4_declare_yyparse +# ------------------ +m4_define([b4_declare_yyparse], +[b4_push_if([_b4_declare_yyparse_push], + [_b4_declare_yyparse])[]dnl +]) + + +# b4_declare_yyerror_and_yylex +# ---------------------------- +# Comply with POSIX Yacc. +# +m4_define([b4_declare_yyerror_and_yylex], +[b4_posix_if([[#if !defined ]b4_prefix[error && !defined ]b4_api_PREFIX[ERROR_IS_DECLARED +]b4_function_declare([b4_prefix[error]], void, b4_yyerror_formals)[ +#endif +#if !defined ]b4_prefix[lex && !defined ]b4_api_PREFIX[LEX_IS_DECLARED +]b4_function_declare([b4_prefix[lex]], int, b4_yylex_formals)[ +#endif +]])dnl +]) + + +# b4_shared_declarations +# ---------------------- +# Declarations that might either go into the header (if --header) +# or into the implementation file. +m4_define([b4_shared_declarations], +[b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_declare_yydebug[ +]b4_percent_code_get([[requires]])[ +]b4_token_enums_defines[ +]b4_declare_yylstype[ +]b4_declare_yyerror_and_yylex[ +]b4_declare_yyparse[ +]b4_percent_code_get([[provides]])[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[]dnl +]) + + +# b4_header_include_if(IF-TRUE, IF-FALSE) +# --------------------------------------- +# Run IF-TRUE if we generate an output file and api.header.include +# is defined. +m4_define([b4_header_include_if], +[m4_ifval(m4_quote(b4_spec_header_file), + [b4_percent_define_ifdef([[api.header.include]], + [$1], + [$2])], + [$2])]) + +m4_if(b4_spec_header_file, [y.tab.h], [], + [b4_percent_define_default([[api.header.include]], + [["@basename(]b4_spec_header_file[@)"]])]) + + + + +## -------------- ## +## Output files. ## +## -------------- ## + + +b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Bison interface for Yacc-like parsers in C])[ +]b4_disclaimer[ +]b4_shared_declarations[ +]b4_output_end[ +]])# b4_header_if + +b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Bison implementation for Yacc-like parsers in C])[ +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ + +]b4_disclaimer[ +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ + +]b4_identification[ +]b4_percent_code_get([[top]])[]dnl +m4_if(b4_api_prefix, [yy], [], +[[/* Substitute the type names. */ +#define YYSTYPE ]b4_api_PREFIX[STYPE]b4_locations_if([[ +#define YYLTYPE ]b4_api_PREFIX[LTYPE]])])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */]b4_pull_if([[ +#define yyparse ]b4_prefix[parse]])b4_push_if([[ +#define yypush_parse ]b4_prefix[push_parse]b4_pull_if([[ +#define yypull_parse ]b4_prefix[pull_parse]])[ +#define yypstate_new ]b4_prefix[pstate_new +#define yypstate_clear ]b4_prefix[pstate_clear +#define yypstate_delete ]b4_prefix[pstate_delete +#define yypstate ]b4_prefix[pstate]])[ +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug +#define yynerrs ]b4_prefix[nerrs]]b4_pure_if([], [[ +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])]))[ + +]b4_user_pre_prologue[ +]b4_cast_define[ +]b4_null_define[ + +]b4_header_include_if([[#include ]b4_percent_define_get([[api.header.include]])], + [m4_ifval(m4_quote(b4_spec_header_file), + [/* Use api.header.include to #include this header + instead of duplicating it here. */ +])b4_shared_declarations])[ +]b4_declare_symbol_enum[ + +]b4_user_post_prologue[ +]b4_percent_code_get[ +]b4_c99_int_type_define[ + +]b4_sizes_types_define[ + +/* Stored state numbers (used for stacks). */ +typedef ]b4_int_type(0, m4_eval(b4_states_number - 1))[ yy_state_t; + +/* State numbers in computations. */ +typedef int yy_state_fast_t; + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +]b4_attribute_define[ + +]b4_parse_assert_if([[#ifdef NDEBUG +# define YY_ASSERT(E) ((void) (0 && (E))) +#else +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_ASSERT(E) assert (E) +#endif +]], +[[#define YY_ASSERT(E) ((void) (0 && (E)))]])[ + +#if ]b4_lac_if([[1]], [b4_parse_error_case([simple], [[!defined yyoverflow]], [[1]])])[ + +/* The parser invokes alloca or malloc; define the necessary symbols. */]dnl +b4_push_if([], [b4_lac_if([], [[ + +# ifdef YYSTACK_USE_ALLOCA +# if YYSTACK_USE_ALLOCA +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca +# else +# define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS +# include /* INFRINGES ON USER NAME SPACE */ + /* Use EXIT_SUCCESS as a witness for stdlib.h. */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# endif +# endif +# endif]])])[ + +# ifdef YYSTACK_ALLOC + /* Pacify GCC's 'empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +# endif +# else +# define YYSTACK_ALLOC YYMALLOC +# define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) +# include /* INFRINGES ON USER NAME SPACE */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined EXIT_SUCCESS +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined EXIT_SUCCESS +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# endif]b4_lac_if([[ +# define YYCOPY_NEEDED 1]])[ +#endif /* ]b4_lac_if([[1]], [b4_parse_error_case([simple], [[!defined yyoverflow]], [[1]])])[ */ + +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (]b4_locations_if([[defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL \ + && ]])[defined ]b4_api_PREFIX[STYPE_IS_TRIVIAL && ]b4_api_PREFIX[STYPE_IS_TRIVIAL))) + +/* A type that is properly aligned for any stack member. */ +union yyalloc +{ + yy_state_t yyss_alloc; + YYSTYPE yyvs_alloc;]b4_locations_if([ + YYLTYPE yyls_alloc;])[ +}; + +/* The size of the maximum gap between one aligned stack and the next. */ +# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1) + +/* The size of an array large to enough to hold all stacks, each with + N elements. */ +]b4_locations_if( +[# define YYSTACK_BYTES(N) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE) \ + + YYSIZEOF (YYLTYPE)) \ + + 2 * YYSTACK_GAP_MAXIMUM)], +[# define YYSTACK_BYTES(N) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \ + + YYSTACK_GAP_MAXIMUM)])[ + +# define YYCOPY_NEEDED 1 + +/* Relocate STACK from its old location to the new one. The + local variables YYSIZE and YYSTACKSIZE give the old and new number of + elements in the stack, and YYPTR gives the new location of the + stack. Advance YYPTR to a properly aligned location for the next + stack. */ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ + do \ + { \ + YYPTRDIFF_T yynewbytes; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ + yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / YYSIZEOF (*yyptr); \ + } \ + while (0) + +#endif + +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from SRC to DST. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(Dst, Src, Count) \ + __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src))) +# else +# define YYCOPY(Dst, Src, Count) \ + do \ + { \ + YYPTRDIFF_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (Dst)[yyi] = (Src)[yyi]; \ + } \ + while (0) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ + +/* YYMAXUTOK -- Last valid token kind. */ +#define YYMAXUTOK ]b4_code_max[ + + +/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ +]b4_api_token_raw_if(dnl +[[#define YYTRANSLATE(YYX) YY_CAST (yysymbol_kind_t, YYX)]], +[[#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK \ + ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \ + : ]b4_symbol_prefix[YYUNDEF) + +/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM + as returned by yylex. */ +static const ]b4_int_type_for([b4_translate])[ yytranslate[] = +{ + ]b4_translate[ +};]])[ + +#if ]b4_api_PREFIX[DEBUG +]b4_integral_parser_table_define([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ +#endif + +/** Accessing symbol of state STATE. */ +#define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State]) + +#if ]b4_parse_error_case([simple], [b4_api_PREFIX[DEBUG || ]b4_token_table_flag], [[1]])[ +/* The user-facing name of the symbol whose (internal) number is + YYSYMBOL. No bounds checking. */ +static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED; + +]b4_parse_error_bmatch([simple\|verbose], +[[/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + ]b4_tname[ +}; + +static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + return yytname[yysymbol]; +}]], +[[static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ +}]])[ +#endif + +#define YYPACT_NINF (]b4_pact_ninf[) + +#define yypact_value_is_default(Yyn) \ + ]b4_table_value_equals([[pact]], [[Yyn]], [b4_pact_ninf], [YYPACT_NINF])[ + +#define YYTABLE_NINF (]b4_table_ninf[) + +#define yytable_value_is_error(Yyn) \ + ]b4_table_value_equals([[table]], [[Yyn]], [b4_table_ninf], [YYTABLE_NINF])[ + +]b4_parser_tables_define[ + +enum { YYENOMEM = -2 }; + +#define yyerrok (yyerrstatus = 0) +#define yyclearin (yychar = ]b4_symbol(empty, id)[) + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab +#define YYNOMEM goto yyexhaustedlab + + +#define YYRECOVERING() (!!yyerrstatus) + +#define YYBACKUP(Token, Value) \ + do \ + if (yychar == ]b4_symbol(empty, id)[) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (yylen); \ + yystate = *yyssp; \]b4_lac_if([[ + YY_LAC_DISCARD ("YYBACKUP"); \]])[ + goto yybackup; \ + } \ + else \ + { \ + yyerror (]b4_yyerror_args[YY_("syntax error: cannot back up")); \ + YYERROR; \ + } \ + while (0) + +/* Backward compatibility with an undocumented macro. + Use ]b4_symbol(error, id)[ or ]b4_symbol(undef, id)[. */ +#define YYERRCODE ]b4_symbol(undef, id)[ +]b4_locations_if([[ +]b4_yylloc_default_define[ +#define YYRHSLOC(Rhs, K) ((Rhs)[K]) +]])[ + +/* Enable debugging if requested. */ +#if ]b4_api_PREFIX[DEBUG + +# ifndef YYFPRINTF +# include /* INFRINGES ON USER NAME SPACE */ +# define YYFPRINTF fprintf +# endif + +# define YYDPRINTF(Args) \ +do { \ + if (yydebug) \ + YYFPRINTF Args; \ +} while (0) + +]b4_yylocation_print_define[ + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Kind, Value]b4_locations_if([, Location])[]b4_user_args[); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (0) + +]b4_yy_symbol_print_define[ + +/*------------------------------------------------------------------. +| yy_stack_print -- Print the state stack from its BOTTOM up to its | +| TOP (included). | +`------------------------------------------------------------------*/ + +static void +yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop) +{ + YYFPRINTF (stderr, "Stack now"); + for (; yybottom <= yytop; yybottom++) + { + int yybot = *yybottom; + YYFPRINTF (stderr, " %d", yybot); + } + YYFPRINTF (stderr, "\n"); +} + +# define YY_STACK_PRINT(Bottom, Top) \ +do { \ + if (yydebug) \ + yy_stack_print ((Bottom), (Top)); \ +} while (0) + + +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ + +static void +yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp,]b4_locations_if([[ YYLTYPE *yylsp,]])[ + int yyrule]b4_user_formals[) +{ + int yylno = yyrline[yyrule]; + int yynrhs = yyr2[yyrule]; + int yyi; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YYFPRINTF (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, + YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]), + &]b4_rhs_value(yynrhs, yyi + 1)[]b4_locations_if([, + &]b4_rhs_location(yynrhs, yyi + 1))[]b4_user_args[); + YYFPRINTF (stderr, "\n"); + } +} + +# define YY_REDUCE_PRINT(Rule) \ +do { \ + if (yydebug) \ + yy_reduce_print (yyssp, yyvsp, ]b4_locations_if([yylsp, ])[Rule]b4_user_args[); \ +} while (0) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; +#else /* !]b4_api_PREFIX[DEBUG */ +# define YYDPRINTF(Args) ((void) 0) +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) +# define YY_STACK_PRINT(Bottom, Top) +# define YY_REDUCE_PRINT(Rule) +#endif /* !]b4_api_PREFIX[DEBUG */ + + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif]b4_push_if([[ +/* Parser data structure. */ +struct yypstate + {]b4_declare_parser_state_variables[ + /* Whether this instance has not started parsing yet. + * If 2, it corresponds to a finished parsing. */ + int yynew; + };]b4_pure_if([], [[ + +/* Whether the only allowed instance of yypstate is allocated. */ +static char yypstate_allocated = 0;]])])[ +]b4_lac_if([[ + +/* Given a state stack such that *YYBOTTOM is its bottom, such that + *YYTOP is either its top or is YYTOP_EMPTY to indicate an empty + stack, and such that *YYCAPACITY is the maximum number of elements it + can hold without a reallocation, make sure there is enough room to + store YYADD more elements. If not, allocate a new stack using + YYSTACK_ALLOC, copy the existing elements, and adjust *YYBOTTOM, + *YYTOP, and *YYCAPACITY to reflect the new capacity and memory + location. If *YYBOTTOM != YYBOTTOM_NO_FREE, then free the old stack + using YYSTACK_FREE. Return 0 if successful or if no reallocation is + required. Return YYENOMEM if memory is exhausted. */ +static int +yy_lac_stack_realloc (YYPTRDIFF_T *yycapacity, YYPTRDIFF_T yyadd, +#if ]b4_api_PREFIX[DEBUG + char const *yydebug_prefix, + char const *yydebug_suffix, +#endif + yy_state_t **yybottom, + yy_state_t *yybottom_no_free, + yy_state_t **yytop, yy_state_t *yytop_empty) +{ + YYPTRDIFF_T yysize_old = + *yytop == yytop_empty ? 0 : *yytop - *yybottom + 1; + YYPTRDIFF_T yysize_new = yysize_old + yyadd; + if (*yycapacity < yysize_new) + { + YYPTRDIFF_T yyalloc = 2 * yysize_new; + yy_state_t *yybottom_new; + /* Use YYMAXDEPTH for maximum stack size given that the stack + should never need to grow larger than the main state stack + needs to grow without LAC. */ + if (YYMAXDEPTH < yysize_new) + { + YYDPRINTF ((stderr, "%smax size exceeded%s", yydebug_prefix, + yydebug_suffix)); + return YYENOMEM; + } + if (YYMAXDEPTH < yyalloc) + yyalloc = YYMAXDEPTH; + yybottom_new = + YY_CAST (yy_state_t *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, + yyalloc * YYSIZEOF (*yybottom_new)))); + if (!yybottom_new) + { + YYDPRINTF ((stderr, "%srealloc failed%s", yydebug_prefix, + yydebug_suffix)); + return YYENOMEM; + } + if (*yytop != yytop_empty) + { + YYCOPY (yybottom_new, *yybottom, yysize_old); + *yytop = yybottom_new + (yysize_old - 1); + } + if (*yybottom != yybottom_no_free) + YYSTACK_FREE (*yybottom); + *yybottom = yybottom_new; + *yycapacity = yyalloc;]m4_if(b4_percent_define_get([[parse.lac.memory-trace]]), + [full], [[ + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "%srealloc to %ld%s", yydebug_prefix, + YY_CAST (long, yyalloc), yydebug_suffix)); + YY_IGNORE_USELESS_CAST_END]])[ + } + return 0; +} + +/* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + YY_LAC_ESTABLISH should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). Iff there is a + lookahead token, it should also be invoked before reporting a syntax + error. This latter case is for the sake of the debugging output. + + For parse.lac=full, the implementation of YY_LAC_ESTABLISH is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. + Report a syntax error if it cannot. */ +#define YY_LAC_ESTABLISH \ +do { \ + if (!yy_lac_established) \ + { \ + YYDPRINTF ((stderr, \ + "LAC: initial context established for %s\n", \ + yysymbol_name (yytoken))); \ + yy_lac_established = 1; \ + switch (yy_lac (yyesa, &yyes, &yyes_capacity, yyssp, yytoken)) \ + { \ + case YYENOMEM: \ + YYNOMEM; \ + case 1: \ + goto yyerrlab; \ + } \ + } \ +} while (0) + +/* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ +#if ]b4_api_PREFIX[DEBUG +# define YY_LAC_DISCARD(Event) \ +do { \ + if (yy_lac_established) \ + { \ + YYDPRINTF ((stderr, "LAC: initial context discarded due to " \ + Event "\n")); \ + yy_lac_established = 0; \ + } \ +} while (0) +#else +# define YY_LAC_DISCARD(Event) yy_lac_established = 0 +#endif + +/* Given the stack whose top is *YYSSP, return 0 iff YYTOKEN can + eventually (after perhaps some reductions) be shifted, return 1 if + not, or return YYENOMEM if memory is exhausted. As preconditions and + postconditions: *YYES_CAPACITY is the allocated size of the array to + which *YYES points, and either *YYES = YYESA or *YYES points to an + array allocated with YYSTACK_ALLOC. yy_lac may overwrite the + contents of either array, alter *YYES and *YYES_CAPACITY, and free + any old *YYES other than YYESA. */ +static int +yy_lac (yy_state_t *yyesa, yy_state_t **yyes, + YYPTRDIFF_T *yyes_capacity, yy_state_t *yyssp, yysymbol_kind_t yytoken) +{ + yy_state_t *yyes_prev = yyssp; + yy_state_t *yyesp = yyes_prev; + /* Reduce until we encounter a shift and thereby accept the token. */ + YYDPRINTF ((stderr, "LAC: checking lookahead %s:", yysymbol_name (yytoken))); + if (yytoken == ]b4_symbol_prefix[YYUNDEF) + { + YYDPRINTF ((stderr, " Always Err\n")); + return 1; + } + while (1) + { + int yyrule = yypact[+*yyesp]; + if (yypact_value_is_default (yyrule) + || (yyrule += yytoken) < 0 || YYLAST < yyrule + || yycheck[yyrule] != yytoken) + { + /* Use the default action. */ + yyrule = yydefact[+*yyesp]; + if (yyrule == 0) + { + YYDPRINTF ((stderr, " Err\n")); + return 1; + } + } + else + { + /* Use the action from yytable. */ + yyrule = yytable[yyrule]; + if (yytable_value_is_error (yyrule)) + { + YYDPRINTF ((stderr, " Err\n")); + return 1; + } + if (0 < yyrule) + { + YYDPRINTF ((stderr, " S%d\n", yyrule)); + return 0; + } + yyrule = -yyrule; + } + /* By now we know we have to simulate a reduce. */ + YYDPRINTF ((stderr, " R%d", yyrule - 1)); + { + /* Pop the corresponding number of values from the stack. */ + YYPTRDIFF_T yylen = yyr2[yyrule]; + /* First pop from the LAC stack as many tokens as possible. */ + if (yyesp != yyes_prev) + { + YYPTRDIFF_T yysize = yyesp - *yyes + 1; + if (yylen < yysize) + { + yyesp -= yylen; + yylen = 0; + } + else + { + yyesp = yyes_prev; + yylen -= yysize; + } + } + /* Only afterwards look at the main stack. */ + if (yylen) + yyesp = yyes_prev -= yylen; + } + /* Push the resulting state of the reduction. */ + { + yy_state_fast_t yystate; + { + const int yylhs = yyr1[yyrule] - YYNTOKENS; + const int yyi = yypgoto[yylhs] + *yyesp; + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyesp + ? yytable[yyi] + : yydefgoto[yylhs]); + } + if (yyesp == yyes_prev) + { + yyesp = *yyes; + YY_IGNORE_USELESS_CAST_BEGIN + *yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + } + else + { + if (yy_lac_stack_realloc (yyes_capacity, 1, +#if ]b4_api_PREFIX[DEBUG + " (", ")", +#endif + yyes, yyesa, &yyesp, yyes_prev)) + { + YYDPRINTF ((stderr, "\n")); + return YYENOMEM; + } + YY_IGNORE_USELESS_CAST_BEGIN + *++yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + } + YYDPRINTF ((stderr, " G%d", yystate)); + } + } +}]])[ + +]b4_parse_error_case([simple], [], +[[/* Context of a parse error. */ +typedef struct +{]b4_push_if([[ + yypstate* yyps;]], [[ + yy_state_t *yyssp;]b4_lac_if([[ + yy_state_t *yyesa; + yy_state_t **yyes; + YYPTRDIFF_T *yyes_capacity;]])])[ + yysymbol_kind_t yytoken;]b4_locations_if([[ + YYLTYPE *yylloc;]])[ +} yypcontext_t; + +/* Put in YYARG at most YYARGN of the expected tokens given the + current YYCTX, and return the number of tokens stored in YYARG. If + YYARG is null, return the number of expected tokens (guaranteed to + be less than YYNTOKENS). Return YYENOMEM on memory exhaustion. + Return 0 if there are more than YYARGN expected tokens, yet fill + YYARG up to YYARGN. */]b4_push_if([[ +static int +yypstate_expected_tokens (yypstate *yyps, + yysymbol_kind_t yyarg[], int yyargn)]], [[ +static int +yypcontext_expected_tokens (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn)]])[ +{ + /* Actual size of YYARG. */ + int yycount = 0; +]b4_lac_if([[ + int yyx; + for (yyx = 0; yyx < YYNTOKENS; ++yyx) + { + yysymbol_kind_t yysym = YY_CAST (yysymbol_kind_t, yyx); + if (yysym != ]b4_symbol(error, kind)[ && yysym != ]b4_symbol_prefix[YYUNDEF) + switch (yy_lac (]b4_push_if([[yyps->yyesa, &yyps->yyes, &yyps->yyes_capacity, yyps->yyssp, yysym]], + [[yyctx->yyesa, yyctx->yyes, yyctx->yyes_capacity, yyctx->yyssp, yysym]])[)) + { + case YYENOMEM: + return YYENOMEM; + case 1: + continue; + default: + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], +[[ int yyn = yypact@{+*]b4_push_if([yyps], [yyctx])[->yyssp@}; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (yysymbol_kind_t, yyx); + } + }]])[ + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; +} + +]b4_push_if([[ +/* Similar to the previous function. */ +static int +yypcontext_expected_tokens (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn) +{ + return yypstate_expected_tokens (yyctx->yyps, yyarg, yyargn); +}]])[ +]])[ + +]b4_parse_error_bmatch( + [custom], +[[/* The kind of the lookahead of this context. */ +static yysymbol_kind_t +yypcontext_token (const yypcontext_t *yyctx) YY_ATTRIBUTE_UNUSED; + +static yysymbol_kind_t +yypcontext_token (const yypcontext_t *yyctx) +{ + return yyctx->yytoken; +} + +]b4_locations_if([[/* The location of the lookahead of this context. */ +static YYLTYPE * +yypcontext_location (const yypcontext_t *yyctx) YY_ATTRIBUTE_UNUSED; + +static YYLTYPE * +yypcontext_location (const yypcontext_t *yyctx) +{ + return yyctx->yylloc; +}]])[ + +/* User defined function to report a syntax error. */ +static int +yyreport_syntax_error (const yypcontext_t *yyctx]b4_user_formals[);]], + [detailed\|verbose], +[[#ifndef yystrlen +# if defined __GLIBC__ && defined _STRING_H +# define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S))) +# else +/* Return the length of YYSTR. */ +static YYPTRDIFF_T +yystrlen (const char *yystr) +{ + YYPTRDIFF_T yylen; + for (yylen = 0; yystr[yylen]; yylen++) + continue; + return yylen; +} +# endif +#endif + +#ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +static char * +yystpcpy (char *yydest, const char *yysrc) +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +#endif + +]b4_parse_error_case( + [verbose], +[[#ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYPTRDIFF_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYPTRDIFF_T yyn = 0; + char const *yyp = yystr; + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else + return yystrlen (yystr); +} +#endif +]])[ + +static int +yy_syntax_error_arguments (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn) +{ + /* Actual size of YYARG. */ + int yycount = 0; + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar.]b4_lac_if([[ + In the first two cases, it might appear that the current syntax + error should have been detected in the previous state when yy_lac + was invoked. However, at that time, there might have been a + different syntax error that discarded a different initial context + during error recovery, leaving behind the current lookahead.]], [[ + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state.]])[ + */ + if (yyctx->yytoken != ]b4_symbol(empty, kind)[) + { + int yyn;]b4_lac_if([[ + YYDPRINTF ((stderr, "Constructing syntax error message\n"));]])[ + if (yyarg) + yyarg[yycount] = yyctx->yytoken; + ++yycount; + yyn = yypcontext_expected_tokens (yyctx, + yyarg ? yyarg + 1 : yyarg, yyargn - 1); + if (yyn == YYENOMEM) + return YYENOMEM;]b4_lac_if([[ + else if (yyn == 0) + YYDPRINTF ((stderr, "No expected tokens.\n"));]])[ + else + yycount += yyn; + } + return yycount; +} + +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP.]b4_lac_if([[ In order to see if a particular token T is a + valid looakhead, invoke yy_lac (YYESA, YYES, YYES_CAPACITY, YYSSP, T).]])[ + + Return 0 if *YYMSG was successfully written. Return -1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return YYENOMEM if the + required number of bytes is too large to store]b4_lac_if([[ or if + yy_lac returned YYENOMEM]])[. */ +static int +yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg, + const yypcontext_t *yyctx) +{ + enum { YYARGS_MAX = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULLPTR; + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ + yysymbol_kind_t yyarg[YYARGS_MAX]; + /* Cumulated lengths of YYARG. */ + YYPTRDIFF_T yysize = 0; + + /* Actual size of YYARG. */ + int yycount = yy_syntax_error_arguments (yyctx, yyarg, YYARGS_MAX); + if (yycount == YYENOMEM) + return YYENOMEM; + + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: /* Avoid compiler warnings. */ + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + /* Compute error message size. Don't count the "%s"s, but reserve + room for the terminator. */ + yysize = yystrlen (yyformat) - 2 * yycount + 1; + { + int yyi; + for (yyi = 0; yyi < yycount; ++yyi) + { + YYPTRDIFF_T yysize1 + = yysize + ]b4_parse_error_case( + [verbose], [[yytnamerr (YY_NULLPTR, yytname[yyarg[yyi]])]], + [[yystrlen (yysymbol_name (yyarg[yyi]))]]);[ + if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) + yysize = yysize1; + else + return YYENOMEM; + } + } + + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return -1; + } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + {]b4_parse_error_case([verbose], [[ + yyp += yytnamerr (yyp, yytname[yyarg[yyi++]]);]], [[ + yyp = yystpcpy (yyp, yysymbol_name (yyarg[yyi++]));]])[ + yyformat += 2; + } + else + { + ++yyp; + ++yyformat; + } + } + return 0; +} +]])[ + +]b4_yydestruct_define[ + +]b4_pure_if([], [b4_declare_scanner_communication_variables])[ + +]b4_push_if([b4_pull_if([[ + +int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + yypstate *yyps = yypstate_new (); + if (!yyps) + {]b4_pure_if([b4_locations_if([[ + static YYLTYPE yyloc_default][]b4_yyloc_default[; + YYLTYPE yylloc = yyloc_default;]])[ + yyerror (]b4_yyerror_args[YY_("memory exhausted"));]], [[ + if (!yypstate_allocated) + yyerror (]b4_yyerror_args[YY_("memory exhausted"));]])[ + return 2; + } + int yystatus = yypull_parse (yyps]b4_user_args[); + yypstate_delete (yyps); + return yystatus; +} + +int +yypull_parse (yypstate *yyps]b4_user_formals[) +{ + YY_ASSERT (yyps);]b4_pure_if([b4_locations_if([[ + static YYLTYPE yyloc_default][]b4_yyloc_default[; + YYLTYPE yylloc = yyloc_default;]])])[ + int yystatus; + do { +]b4_pure_if([[ YYSTYPE yylval; + int ]])[yychar = ]b4_yylex[; + yystatus = yypush_parse (yyps]b4_pure_if([[, yychar, &yylval]b4_locations_if([[, &yylloc]])])m4_ifset([b4_parse_param], [, b4_args(b4_parse_param)])[); + } while (yystatus == YYPUSH_MORE); + return yystatus; +}]])[ + +]b4_parse_state_variable_macros([b4_pstate_macro_define])[ + +/* Initialize the parser data structure. */ +static void +yypstate_clear (yypstate *yyps) +{ + yynerrs = 0; + yystate = 0; + yyerrstatus = 0; + + yyssp = yyss; + yyvsp = yyvs;]b4_locations_if([[ + yylsp = yyls;]])[ + + /* Initialize the state stack, in case yypcontext_expected_tokens is + called before the first call to yyparse. */ + *yyssp = 0; + yyps->yynew = 1; +} + +/* Initialize the parser data structure. */ +yypstate * +yypstate_new (void) +{ + yypstate *yyps;]b4_pure_if([], [[ + if (yypstate_allocated) + return YY_NULLPTR;]])[ + yyps = YY_CAST (yypstate *, YYMALLOC (sizeof *yyps)); + if (!yyps) + return YY_NULLPTR;]b4_pure_if([], [[ + yypstate_allocated = 1;]])[ + yystacksize = YYINITDEPTH; + yyss = yyssa; + yyvs = yyvsa;]b4_locations_if([[ + yyls = yylsa;]])[]b4_lac_if([[ + yyes = yyesa; + yyes_capacity = ]b4_percent_define_get([[parse.lac.es-capacity-initial]])[; + if (YYMAXDEPTH < yyes_capacity) + yyes_capacity = YYMAXDEPTH;]])[ + yypstate_clear (yyps); + return yyps; +} + +void +yypstate_delete (yypstate *yyps) +{ + if (yyps) + { +#ifndef yyoverflow + /* If the stack was reallocated but the parse did not complete, then the + stack still needs to be freed. */ + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif]b4_lac_if([[ + if (yyes != yyesa) + YYSTACK_FREE (yyes);]])[ + YYFREE (yyps);]b4_pure_if([], [[ + yypstate_allocated = 0;]])[ + } +} +]])[ + +]b4_push_if([[ +/*---------------. +| yypush_parse. | +`---------------*/ + +int +yypush_parse (yypstate *yyps]b4_pure_if([[, + int yypushed_char, YYSTYPE const *yypushed_val]b4_locations_if([[, YYLTYPE *yypushed_loc]])])b4_user_formals[)]], +[[ +/*----------. +| yyparse. | +`----------*/ + +]m4_ifdef([b4_start_symbols], +[[// Extract data from the parser. +typedef struct +{ + YYSTYPE yyvalue; + int yynerrs; +} yy_parse_impl_t; + +// Run a full parse, using YYCHAR as switching token. +static int +yy_parse_impl (int yychar, yy_parse_impl_t *yyimpl]m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])[); + +]m4_map([_b4_define_sub_yyparse], m4_defn([b4_start_symbols]))[ + +int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + return yy_parse_impl (]b4_symbol(_b4_first_switching_token, id)[, YY_NULLPTR]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[); +} + +static int +yy_parse_impl (int yychar, yy_parse_impl_t *yyimpl]m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])[)]], +[[int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[)]])])[ +{]b4_pure_if([b4_declare_scanner_communication_variables +])b4_push_if([b4_pure_if([], [[ + int yypushed_char = yychar; + YYSTYPE yypushed_val = yylval;]b4_locations_if([[ + YYLTYPE yypushed_loc = yylloc;]]) +])], + [b4_declare_parser_state_variables([init]) +])b4_lac_if([[ + /* Whether LAC context is established. A Boolean. */ + int yy_lac_established = 0;]])[ + int yyn; + /* The return value of yyparse. */ + int yyresult; + /* Lookahead symbol kind. */ + yysymbol_kind_t yytoken = ]b4_symbol(empty, kind)[; + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc; + + /* The locations where the error started and ended. */ + YYLTYPE yyerror_range[3];]])[ + +]b4_parse_error_bmatch([detailed\|verbose], +[[ /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;]])[ + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)]b4_locations_if([, yylsp -= (N)])[) + + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0;]b4_push_if([[ + + switch (yyps->yynew) + { + case 0: + yyn = yypact[yystate]; + goto yyread_pushed_token; + + case 2: + yypstate_clear (yyps); + break; + + default: + break; + }]])[ + + YYDPRINTF ((stderr, "Starting parse\n")); + +]m4_ifdef([b4_start_symbols], [], +[[ yychar = ]b4_symbol(empty, id)[; /* Cause a token to be read. */ +]])[ +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([m4_define([b4_dollar_dollar_used])yylval], [], [], + [b4_push_if([b4_pure_if([*])yypushed_loc], [yylloc])])dnl +b4_user_initial_action +b4_dollar_popdef[]dnl +m4_ifdef([b4_dollar_dollar_used],[[ yyvsp[0] = yylval; +]])])dnl +b4_locations_if([[ yylsp[0] = ]b4_push_if([b4_pure_if([*])yypushed_loc], [yylloc])[; +]])dnl +[ goto yysetstate; + + +/*------------------------------------------------------------. +| yynewstate -- push a new state, which is found in yystate. | +`------------------------------------------------------------*/ +yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. So pushing a state here evens the stacks. */ + yyssp++; + + +/*--------------------------------------------------------------------. +| yysetstate -- set current state (the top of the stack) to yystate. | +`--------------------------------------------------------------------*/ +yysetstate: + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + YY_ASSERT (0 <= yystate && yystate < YYNSTATES); + YY_IGNORE_USELESS_CAST_BEGIN + *yyssp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + YY_STACK_PRINT (yyss, yyssp); + + if (yyss + yystacksize - 1 <= yyssp) +#if !defined yyoverflow && !defined YYSTACK_RELOCATE + YYNOMEM; +#else + { + /* Get the current used size of the three stacks, in elements. */ + YYPTRDIFF_T yysize = yyssp - yyss + 1; + +# if defined yyoverflow + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into + memory. */ + yy_state_t *yyss1 = yyss; + YYSTYPE *yyvs1 = yyvs;]b4_locations_if([ + YYLTYPE *yyls1 = yyls;])[ + + /* Each stack pointer address is followed by the size of the + data in use in that stack, in bytes. This used to be a + conditional around just the two extra args, but that might + be undefined if yyoverflow is a macro. */ + yyoverflow (YY_("memory exhausted"), + &yyss1, yysize * YYSIZEOF (*yyssp), + &yyvs1, yysize * YYSIZEOF (*yyvsp),]b4_locations_if([ + &yyls1, yysize * YYSIZEOF (*yylsp),])[ + &yystacksize); + yyss = yyss1; + yyvs = yyvs1;]b4_locations_if([ + yyls = yyls1;])[ + } +# else /* defined YYSTACK_RELOCATE */ + /* Extend the stack our own way. */ + if (YYMAXDEPTH <= yystacksize) + YYNOMEM; + yystacksize *= 2; + if (YYMAXDEPTH < yystacksize) + yystacksize = YYMAXDEPTH; + + { + yy_state_t *yyss1 = yyss; + union yyalloc *yyptr = + YY_CAST (union yyalloc *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize)))); + if (! yyptr) + YYNOMEM; + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs);]b4_locations_if([ + YYSTACK_RELOCATE (yyls_alloc, yyls);])[ +# undef YYSTACK_RELOCATE + if (yyss1 != yyssa) + YYSTACK_FREE (yyss1); + } +# endif + + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1;]b4_locations_if([ + yylsp = yyls + yysize - 1;])[ + + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "Stack size increased to %ld\n", + YY_CAST (long, yystacksize))); + YY_IGNORE_USELESS_CAST_END + + if (yyss + yystacksize - 1 <= yyssp) + YYABORT; + } +#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */ + +]m4_ifdef([b4_start_symbols], [], [[ + if (yystate == YYFINAL) + YYACCEPT;]])[ + + goto yybackup; + + +/*-----------. +| yybackup. | +`-----------*/ +yybackup: + /* Do appropriate processing given the current state. Read a + lookahead token if we need one and don't already have one. */ + + /* First try to decide what to do without reference to lookahead token. */ + yyn = yypact[yystate]; + if (yypact_value_is_default (yyn)) + goto yydefault; + + /* Not known => get a lookahead token if don't already have one. */ + + /* YYCHAR is either empty, or end-of-input, or a valid lookahead. */ + if (yychar == ]b4_symbol(empty, id)[) + {]b4_push_if([[ + if (!yyps->yynew) + {]b4_use_push_for_pull_if([], [[ + YYDPRINTF ((stderr, "Return for a new token:\n"));]])[ + yyresult = YYPUSH_MORE; + goto yypushreturn; + } + yyps->yynew = 0;]b4_pure_if([], [[ + /* Restoring the pushed token is only necessary for the first + yypush_parse invocation since subsequent invocations don't overwrite + it before jumping to yyread_pushed_token. */ + yychar = yypushed_char; + yylval = yypushed_val;]b4_locations_if([[ + yylloc = yypushed_loc;]])])[ +yyread_pushed_token:]])[ + YYDPRINTF ((stderr, "Reading a token\n"));]b4_push_if([b4_pure_if([[ + yychar = yypushed_char; + if (yypushed_val) + yylval = *yypushed_val;]b4_locations_if([[ + if (yypushed_loc) + yylloc = *yypushed_loc;]])])], [[ + yychar = ]b4_yylex[;]])[ + } + + if (yychar <= ]b4_symbol(eof, [id])[) + { + yychar = ]b4_symbol(eof, [id])[; + yytoken = ]b4_symbol(eof, [kind])[; + YYDPRINTF ((stderr, "Now at end of input.\n")); + } + else if (yychar == ]b4_symbol(error, [id])[) + { + /* The scanner already issued an error message, process directly + to error recovery. But do not keep the error token as + lookahead, it is too special and may lead us to an endless + loop in error recovery. */ + yychar = ]b4_symbol(undef, [id])[; + yytoken = ]b4_symbol(error, [kind])[;]b4_locations_if([[ + yyerror_range[1] = yylloc;]])[ + goto yyerrlab1; + } + else + { + yytoken = YYTRANSLATE (yychar); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)]b4_lac_if([[ + { + YY_LAC_ESTABLISH; + goto yydefault; + }]], [[ + goto yydefault;]])[ + yyn = yytable[yyn]; + if (yyn <= 0) + { + if (yytable_value_is_error (yyn)) + goto yyerrlab; + yyn = -yyn;]b4_lac_if([[ + YY_LAC_ESTABLISH;]])[ + goto yyreduce; + } + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; + + /* Shift the lookahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + yystate = yyn; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END]b4_locations_if([ + *++yylsp = yylloc;])[ + + /* Discard the shifted token. */ + yychar = ]b4_symbol(empty, id)[;]b4_lac_if([[ + YY_LAC_DISCARD ("shift");]])[ + goto yynewstate; + + +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + +/*-----------------------------. +| yyreduce -- do a reduction. | +`-----------------------------*/ +yyreduce: + /* yyn is the number of a rule to reduce with. */ + yylen = yyr2[yyn]; + + /* If YYLEN is nonzero, implement the default value of the action: + '$$ = $1'. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. Assigning to YYVAL + unconditionally makes the parser a bit smaller, and it avoids a + GCC warning that YYVAL may be used uninitialized. */ + yyval = yyvsp[1-yylen]; + +]b4_locations_if( +[[ /* Default location. */ + YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); + yyerror_range[1] = yyloc;]])[ + YY_REDUCE_PRINT (yyn);]b4_lac_if([[ + { + int yychar_backup = yychar; + switch (yyn) + { +]b4_user_actions[ + default: break; + } + if (yychar_backup != yychar) + YY_LAC_DISCARD ("yychar change"); + }]], [[ + switch (yyn) + { +]b4_user_actions[ + default: break; + }]])[ + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ + YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc); + + YYPOPSTACK (yylen); + yylen = 0; + + *++yyvsp = yyval;]b4_locations_if([ + *++yylsp = yyloc;])[ + + /* Now 'shift' the result of the reduction. Determine what state + that goes to, based on the state we popped back to and the rule + number reduced by. */ + { + const int yylhs = yyr1[yyn] - YYNTOKENS; + const int yyi = yypgoto[yylhs] + *yyssp; + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp + ? yytable[yyi] + : yydefgoto[yylhs]); + } + + goto yynewstate; + + +/*--------------------------------------. +| yyerrlab -- here on detecting error. | +`--------------------------------------*/ +yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + /* If not already recovering from an error, report this error. */ + if (!yyerrstatus) + { + ++yynerrs; +]b4_parse_error_case( + [custom], +[[ { + yypcontext_t yyctx + = {]b4_push_if([[yyps]], [[yyssp]b4_lac_if([[, yyesa, &yyes, &yyes_capacity]])])[, yytoken]b4_locations_if([[, &yylloc]])[};]b4_lac_if([[ + if (yychar != ]b4_symbol(empty, id)[) + YY_LAC_ESTABLISH;]])[ + if (yyreport_syntax_error (&yyctx]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[) == 2) + YYNOMEM; + }]], + [simple], +[[ yyerror (]b4_yyerror_args[YY_("syntax error"));]], +[[ { + yypcontext_t yyctx + = {]b4_push_if([[yyps]], [[yyssp]b4_lac_if([[, yyesa, &yyes, &yyes_capacity]])])[, yytoken]b4_locations_if([[, &yylloc]])[}; + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status;]b4_lac_if([[ + if (yychar != ]b4_symbol(empty, id)[) + YY_LAC_ESTABLISH;]])[ + yysyntax_error_status = yysyntax_error (&yymsg_alloc, &yymsg, &yyctx); + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == -1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = YY_CAST (char *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc))); + if (yymsg) + { + yysyntax_error_status + = yysyntax_error (&yymsg_alloc, &yymsg, &yyctx); + yymsgp = yymsg; + } + else + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = YYENOMEM; + } + } + yyerror (]b4_yyerror_args[yymsgp); + if (yysyntax_error_status == YYENOMEM) + YYNOMEM; + }]])[ + } +]b4_locations_if([[ + yyerror_range[1] = yylloc;]])[ + if (yyerrstatus == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= ]b4_symbol(eof, [id])[) + { + /* Return failure if at end of input. */ + if (yychar == ]b4_symbol(eof, [id])[) + YYABORT; + } + else + { + yydestruct ("Error: discarding", + yytoken, &yylval]b4_locations_if([, &yylloc])[]b4_user_args[); + yychar = ]b4_symbol(empty, id)[; + } + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + goto yyerrlab1; + + +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: + /* Pacify compilers when the user code never invokes YYERROR and the + label yyerrorlab therefore never appears in user code. */ + if (0) + YYERROR; + ++yynerrs; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + yystate = *yyssp; + goto yyerrlab1; + + +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ + + /* Pop stack until we find a state that shifts the error token. */ + for (;;) + { + yyn = yypact[yystate]; + if (!yypact_value_is_default (yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; + +]b4_locations_if([[ yyerror_range[1] = *yylsp;]])[ + yydestruct ("Error: popping", + YY_ACCESSING_SYMBOL (yystate), yyvsp]b4_locations_if([, yylsp])[]b4_user_args[); + YYPOPSTACK (1); + yystate = *yyssp; + YY_STACK_PRINT (yyss, yyssp); + }]b4_lac_if([[ + + /* If the stack popping above didn't lose the initial context for the + current lookahead token, the shift below will for sure. */ + YY_LAC_DISCARD ("error recovery");]])[ + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END +]b4_locations_if([[ + yyerror_range[2] = yylloc; + ++yylsp; + YYLLOC_DEFAULT (*yylsp, yyerror_range, 2);]])[ + + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp); + + yystate = yyn; + goto yynewstate; + + +/*-------------------------------------. +| yyacceptlab -- YYACCEPT comes here. | +`-------------------------------------*/ +yyacceptlab: + yyresult = 0; + goto yyreturnlab; + + +/*-----------------------------------. +| yyabortlab -- YYABORT comes here. | +`-----------------------------------*/ +yyabortlab: + yyresult = 1; + goto yyreturnlab; + + +/*-----------------------------------------------------------. +| yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here. | +`-----------------------------------------------------------*/ +yyexhaustedlab: + yyerror (]b4_yyerror_args[YY_("memory exhausted")); + yyresult = 2; + goto yyreturnlab; + + +/*----------------------------------------------------------. +| yyreturnlab -- parsing is finished, clean up and return. | +`----------------------------------------------------------*/ +yyreturnlab: + if (yychar != ]b4_symbol(empty, id)[) + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval]b4_locations_if([, &yylloc])[]b4_user_args[); + } + /* Do not reclaim the symbols of the rule whose action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + YY_ACCESSING_SYMBOL (+*yyssp), yyvsp]b4_locations_if([, yylsp])[]b4_user_args[); + YYPOPSTACK (1); + }]b4_push_if([[ + yyps->yynew = 2; + goto yypushreturn; + + +/*-------------------------. +| yypushreturn -- return. | +`-------------------------*/ +yypushreturn:]], [[ +#ifndef yyoverflow + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif]b4_lac_if([[ + if (yyes != yyesa) + YYSTACK_FREE (yyes);]])])[ +]b4_parse_error_bmatch([detailed\|verbose], +[[ if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg);]])[]m4_ifdef([b4_start_symbols], [[ + if (yyimpl) + yyimpl->yynerrs = yynerrs;]])[ + return yyresult; +} +]b4_push_if([b4_parse_state_variable_macros([b4_macro_undef])])[ +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/MinSizeRel/data/xslt/bison.xsl b/bison/MinSizeRel/data/xslt/bison.xsl new file mode 100644 index 0000000..989a343 --- /dev/null +++ b/bison/MinSizeRel/data/xslt/bison.xsl @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + s + + + r + + + + + + , + + + + + 0 + + + + + + + + + + + diff --git a/bison/MinSizeRel/data/xslt/xml2dot.xsl b/bison/MinSizeRel/data/xslt/xml2dot.xsl new file mode 100644 index 0000000..7715d1a --- /dev/null +++ b/bison/MinSizeRel/data/xslt/xml2dot.xsl @@ -0,0 +1,401 @@ + + + + + + + + + + + + + + + // Generated by GNU Bison + + . + // Report bugs to < + + >. + // Home page: < + + >. + + + + + + + + digraph " + + + + " { + node [fontname = courier, shape = box, colorscheme = paired6] + edge [fontname = courier] + + + + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + label="[ + + + + + + , + + + ]", + + + + style=solid] + + + + + + + + + 3 + + + 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + : + + + + . + + + + + + + . + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + -> " + + R + + + d + + " [ + + + + + + + + " + + R + + + d + + " [label=" + + + Acc", fillcolor=1 + + + R + + ", fillcolor= + + + + , shape=diamond, style=filled] + + + + + + + + + + dotted + + + solid + + + dashed + + + + + + + + + + + + + + + + + [label=" + State + + \n + + + + \l"] + + + + + + + + + + -> + + [style= + + + label=" + + + + " + + ] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/bison/MinSizeRel/data/xslt/xml2text.xsl b/bison/MinSizeRel/data/xslt/xml2text.xsl new file mode 100644 index 0000000..1fc5731 --- /dev/null +++ b/bison/MinSizeRel/data/xslt/xml2text.xsl @@ -0,0 +1,572 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Nonterminals useless in grammar + + + + + + + + + + + + Terminals unused in grammar + + + + + + + + + + + + + + Rules useless in grammar + + + + + + + + + + + Rules useless in parser due to conflicts + + + + + + + + + Grammar + + + + + + + + + + + + + + + + + + + + + + + + + Terminals, with rules where they appear + + + + + + Nonterminals, with rules where they appear + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + on@left: + + + + + + + + + on@right: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + State + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + : + + + + + + + + + + + + + + + + + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + + + shift, and go to state + + + + go to state + + + + + + + + + + + + + + error + ( + + ) + + + + + + + + + + + + [ + + + + accept + + + reduce using rule + + ( + + ) + + + + ] + + + + + + + + + + + + + Conflict between rule + + and token + + resolved as + + an + + + ( + + ). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/bison/MinSizeRel/data/xslt/xml2xhtml.xsl b/bison/MinSizeRel/data/xslt/xml2xhtml.xsl new file mode 100644 index 0000000..aaa5dba --- /dev/null +++ b/bison/MinSizeRel/data/xslt/xml2xhtml.xsl @@ -0,0 +1,765 @@ + + + + + + + + + + + + + + + + <xsl:value-of select="bison-xml-report/filename"/> + <xsl:text> - GNU Bison XML Automaton Report</xsl:text> + + + + + + + + + + + + +

      GNU Bison XML Automaton Report

      +

      + input grammar: +

      + + +

      Table of Contents

      + + + + + + +
      + + +

      + + Reductions +

      + + + +
      + + +

      + + Nonterminals useless in grammar +

      + + +

      + + + + + + +

      +
      + + + +

      + + Terminals unused in grammar +

      + + +

      + + + + + + + +

      +
      + + + +

      + + Rules useless in grammar +

      + + + +

      + + + + +

      +
      + + + + + +

      + + Rules useless in parser due to conflicts +

      + +

      + + + +

      + + + + + +

      + + Grammar +

      + +

      + + + + +

      + + + + + + + + + + + + + + + + + + + + + + + +

      + + Conflicts +

      + + + + + +

      + + +

      +
      + + + + + + + + + +
      + + + + + + conflicts: + + + + + + + + + + + + + + +

      + + Terminals, with rules where they appear +

      + +
        + + +
      + +
      + + +

      + + Nonterminals, with rules where they appear +

      + +
        + + +
      + + + + +
    1. + + + + + + + + +
    2. + +
      + + + +
    3. + + + + + + +
        + + + +
      • + on left: + + + +
      • + +
        + + +
      • + on right: + + + +
      • + +
        + +
      + +
    4. + +
      + + + +
      + + + + + + + + +

      + + Automaton +

      + + + +
      + + + + +

      + + + + + + State + +

      + +

      + + + + + + + + + + + + +

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + error + ( + + ) + + + + + + + + + + + + [ + + + + accept + + + + + + + + + ( + + ) + + + + ] + + + + + + + + + + + + + Conflict between + + + + + + + and token + + resolved as + + an + + + ( + + ). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + + + + + + diff --git a/bison/MinSizeRel/win_bison.exe b/bison/MinSizeRel/win_bison.exe new file mode 100644 index 0000000000000000000000000000000000000000..3c7e13524b23ebd672dcde7c7a556e15586e98ce GIT binary patch literal 510976 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

      ~pA@O!cP#lYRC)Z7bIE^_dNz}L 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 literal 0 HcmV?d00001 diff --git a/bison/RelWithDebInfo/data/README.md b/bison/RelWithDebInfo/data/README.md new file mode 100644 index 0000000..09886ea --- /dev/null +++ b/bison/RelWithDebInfo/data/README.md @@ -0,0 +1,227 @@ +This directory contains data needed by Bison. + +# Directory Content +## Skeletons +Bison skeletons: the general shapes of the different parser kinds, that are +specialized for specific grammars by the bison program. + +Currently, the supported skeletons are: + +- yacc.c + It used to be named bison.simple: it corresponds to C Yacc + compatible LALR(1) parsers. + +- lalr1.cc + Produces a C++ parser class. + +- lalr1.java + Produces a Java parser class. + +- glr.c + A Generalized LR C parser based on Bison's LALR(1) tables. + +- glr.cc + A Generalized LR C++ parser. Actually a C++ wrapper around glr.c. + +These skeletons are the only ones supported by the Bison team. Because the +interface between skeletons and the bison program is not finished, *we are +not bound to it*. In particular, Bison is not mature enough for us to +consider that "foreign skeletons" are supported. + +## m4sugar +This directory contains M4sugar, sort of an extended library for M4, which +is used by Bison to instantiate the skeletons. + +## xslt +This directory contains XSLT programs that transform Bison's XML output into +various formats. + +- bison.xsl + A library of routines used by the other XSLT programs. + +- xml2dot.xsl + Conversion into GraphViz's dot format. + +- xml2text.xsl + Conversion into text. + +- xml2xhtml.xsl + Conversion into XHTML. + +# Implementation Notes About the Skeletons + +"Skeleton" in Bison parlance means "backend": a skeleton is fed by the bison +executable with LR tables, facts about the symbols, etc. and they generate +the output (say parser.cc, parser.hh, location.hh, etc.). They are only in +charge of generating the parser and its auxiliary files, they do not +generate the XML output, the parser.output reports, nor the graphical +rendering. + +The bits of information passing from bison to the backend is named +"muscles". Muscles are passed to M4 via its standard input: it's a set of +m4 definitions. To see them, use `--trace=muscles`. + +Except for muscles, whose names are generated by bison, the skeletons have +no constraint at all on the macro names: there is no technical/theoretical +limitation, as long as you generate the output, you can do what you want. +However, of course, that would be a bad idea if, say, the C and C++ +skeletons used different approaches and had completely different +implementations. That would be a maintenance nightmare. + +Below, we document some of the macros that we use in several of the +skeletons. If you are to write a new skeleton, please, implement them for +your language. Overall, be sure to follow the same patterns as the existing +skeletons. + +## Vocabulary + +We use "formal arguments", or "formals" for short, to denote the declared +parameters of a function (e.g., `int argc, const char **argv`). Yes, this +is somewhat contradictory with `param` in the `%param` directives. + +We use "effective arguments", or "args" for short, to denote the values +passed in function calls (e.g., `argc, argv`). + +## Symbols + +### `b4_symbol(NUM, FIELD)` +In order to unify the handling of the various aspects of symbols (tag, type +name, whether terminal, etc.), bison.exe defines one macro per (token, +field), where field can `has_id`, `id`, etc.: see +`prepare_symbol_definitions()` in `src/output.c`. + +NUM can be: +- `empty` to denote the "empty" pseudo-symbol when it exists, +- `eof`, `error`, or `undef` +- a symbol number. + +FIELD can be: + +- `has_id`: 0 or 1 + Whether the symbol has an `id`. + +- `id`: string (e.g., `exp`, `NUM`, or `TOK_NUM` with api.token.prefix) + If `has_id`, the name of the token kind (prefixed by api.token.prefix if + defined), otherwise empty. Guaranteed to be usable as a C identifier. + This is used to define the token kind (i.e., the enum used by the return + value of yylex). Should be named `token_kind`. + +- `tag`: string + A human readable representation of the symbol. Can be `'foo'`, + `'foo.id'`, `'"foo"'` etc. + +- `code`: integer + The token code associated to the token kind `id`. + The external number as used by yylex. Can be ASCII code when a character, + some number chosen by bison, or some user number in the case of `%token + FOO `. Corresponds to `yychar` in `yacc.c`. + +- `is_token`: 0 or 1 + Whether this is a terminal symbol. + +- `kind_base`: string (e.g., `YYSYMBOL_exp`, `YYSYMBOL_NUM`) + The base of the symbol kind, i.e., the enumerator of this symbol (token or + nonterminal) which is mapped to its `number`. + +- `kind`: string + Same as `kind_base`, but possibly with a prefix in some languages. E.g., + EOF's `kind_base` and `kind` are `YYSYMBOL_YYEOF` in C, but are + `S_YYEMPTY` and `symbol_kind::S_YYEMPTY` in C++. + +- `number`: integer + The code associated to the `kind`. + The internal number (computed from the external number by yytranslate). + Corresponds to yytoken in yacc.c. This is the same number that serves as + key in b4_symbol(NUM, FIELD). + + In bison, symbols are first assigned increasing numbers in order of + appearance (but tokens first, then nterms). After grammar reduction, + unused nterms are then renumbered to appear last (i.e., first tokens, then + used nterms and finally unused nterms). This final number NUM is the one + contained in this field, and it is the one used as key in `b4_symbol(NUM, + FIELD)`. + + The code of the rule actions, however, is emitted before we know what + symbols are unused, so they use the original numbers. To avoid confusion, + they actually use "orig NUM" instead of just "NUM". bison also emits + definitions for `b4_symbol(orig NUM, number)` that map from original + numbers to the new ones. `b4_symbol` actually resolves `orig NUM` in the + other case, i.e., `b4_symbol(orig 42, tag)` would return the tag of the + symbols whose original number was 42. + +- `has_type`: 0, 1 + Whether has a semantic value. + +- `type_tag`: string + When api.value.type=union, the generated name for the union member. + yytype_INT etc. for symbols that has_id, otherwise yytype_1 etc. + +- `type`: string + If it has a semantic value, its type tag, or, if variant are used, + its type. + In the case of api.value.type=union, type is the real type (e.g. int). + +- `slot`: string + If it has a semantic value, the name of the union member (i.e., bounces to + either `type_tag` or `type`). It would be better to fix our mess and + always use `type` for the true type of the member, and `type_tag` for the + name of the union member. + +- `has_printer`: 0, 1 +- `printer`: string +- `printer_file`: string +- `printer_line`: integer +- `printer_loc`: location + If the symbol has a printer, everything about it. + +- `has_destructor`, `destructor`, `destructor_file`, `destructor_line`, `destructor_loc` + Likewise. + +### `b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG])` +Expansion of $$, $1, $3, etc. + +The semantic value from a given VAL. +- `VAL`: some semantic value storage (typically a union). e.g., `yylval` +- `SYMBOL-NUM`: the symbol number from which we extract the type tag. +- `TYPE-TAG`, the user forced the ``. + +The result can be used safely, it is put in parens to avoid nasty precedence +issues. + +### `b4_lhs_value(SYMBOL-NUM, [TYPE])` +Expansion of `$$` or `$$`, for symbol `SYMBOL-NUM`. + +### `b4_rhs_data(RULE-LENGTH, POS)` +The data corresponding to the symbol `#POS`, where the current rule has +`RULE-LENGTH` symbols on RHS. + +### `b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE])` +Expansion of `$POS`, where the current rule has `RULE-LENGTH` symbols +on RHS. + + diff --git a/bison/RelWithDebInfo/data/bison-default.css b/bison/RelWithDebInfo/data/bison-default.css new file mode 100644 index 0000000..aadaba1 --- /dev/null +++ b/bison/RelWithDebInfo/data/bison-default.css @@ -0,0 +1,61 @@ +/* Default styling rules for Bison when doing terminal output. + Copyright (C) 2019-2021 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* This is an experimental feature. The class names may change in the + future. */ + +/* Diagnostics. */ +.warning { color: purple; } +.error { color: red; } +.note { color: cyan; } + +.fixit-insert { color: green; } + +/* Semantic values in Bison's own parser traces. */ +.value { color: green; } + +/* "Sections" in traces (--trace). */ +.trace0 { color: green; } + +/* Syntax error messages. */ +.expected { color: green; } +.unexpected { color: red; } + + +/* Counterexamples. */ + +/* Cex: point in rule. */ +.cex-dot { color: red; } + +/* Cex: coloring various rules. */ +.cex-0 { color: yellow; } +.cex-1 { color: green; } +.cex-2 { color: blue; } +.cex-3 { color: purple; } +.cex-4 { color: violet; } +.cex-5 { color: orange; } +.cex-6 { color: brown; } +.cex-7 { color: mauve; } +.cex-8 { color: #013220; } /* Dark green. */ +.cex-9 { color: #e75480; } /* Dark pink. */ +.cex-10 { color: cyan; } +.cex-11 { color: orange; } + +/* Cex: derivation rewriting steps. */ +.cex-step { font-style: italic; } + +/* Cex: leaves of a derivation. */ +.cex-leaf { font-weight: 600; } diff --git a/bison/RelWithDebInfo/data/local.mk b/bison/RelWithDebInfo/data/local.mk new file mode 100644 index 0000000..c51d287 --- /dev/null +++ b/bison/RelWithDebInfo/data/local.mk @@ -0,0 +1,58 @@ +## Copyright (C) 2002, 2005-2015, 2018-2021 Free Software Foundation, +## Inc. + +## This program is free software: you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program. If not, see . + +dist_pkgdata_DATA = \ + data/README.md \ + data/bison-default.css + +skeletonsdir = $(pkgdatadir)/skeletons +dist_skeletons_DATA = \ + data/skeletons/bison.m4 \ + data/skeletons/c++-skel.m4 \ + data/skeletons/c++.m4 \ + data/skeletons/c-like.m4 \ + data/skeletons/c-skel.m4 \ + data/skeletons/c.m4 \ + data/skeletons/glr.c \ + data/skeletons/glr.cc \ + data/skeletons/glr2.cc \ + data/skeletons/java-skel.m4 \ + data/skeletons/java.m4 \ + data/skeletons/lalr1.cc \ + data/skeletons/lalr1.java \ + data/skeletons/location.cc \ + data/skeletons/stack.hh \ + data/skeletons/traceon.m4 \ + data/skeletons/variant.hh \ + data/skeletons/yacc.c + +# Experimental support for the D language. +dist_skeletons_DATA += \ + data/skeletons/d-skel.m4 \ + data/skeletons/d.m4 \ + data/skeletons/lalr1.d + +m4sugardir = $(pkgdatadir)/m4sugar +dist_m4sugar_DATA = \ + data/m4sugar/foreach.m4 \ + data/m4sugar/m4sugar.m4 + +xsltdir = $(pkgdatadir)/xslt +dist_xslt_DATA = \ + data/xslt/bison.xsl \ + data/xslt/xml2dot.xsl \ + data/xslt/xml2text.xsl \ + data/xslt/xml2xhtml.xsl diff --git a/bison/RelWithDebInfo/data/m4sugar/foreach.m4 b/bison/RelWithDebInfo/data/m4sugar/foreach.m4 new file mode 100644 index 0000000..2052d44 --- /dev/null +++ b/bison/RelWithDebInfo/data/m4sugar/foreach.m4 @@ -0,0 +1,362 @@ +# -*- Autoconf -*- +# This file is part of Autoconf. +# foreach-based replacements for recursive functions. +# Speeds up GNU M4 1.4.x by avoiding quadratic $@ recursion, but penalizes +# GNU M4 1.6 by requiring more memory and macro expansions. +# +# Copyright (C) 2008-2017, 2020 Free Software Foundation, Inc. + +# This file is part of Autoconf. This program is free +# software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# Under Section 7 of GPL version 3, you are granted additional +# permissions described in the Autoconf Configure Script Exception, +# version 3.0, as published by the Free Software Foundation. +# +# You should have received a copy of the GNU General Public License +# and a copy of the Autoconf Configure Script Exception along with +# this program; see the files COPYINGv3 and COPYING.EXCEPTION +# respectively. If not, see . + +# Written by Eric Blake. + +# In M4 1.4.x, every byte of $@ is rescanned. This means that an +# algorithm on n arguments that recurses with one less argument each +# iteration will scan n * (n + 1) / 2 arguments, for O(n^2) time. In +# M4 1.6, this was fixed so that $@ is only scanned once, then +# back-references are made to information stored about the scan. +# Thus, n iterations need only scan n arguments, for O(n) time. +# Additionally, in M4 1.4.x, recursive algorithms did not clean up +# memory very well, requiring O(n^2) memory rather than O(n) for n +# iterations. +# +# This file is designed to overcome the quadratic nature of $@ +# recursion by writing a variant of m4_foreach that uses m4_for rather +# than $@ recursion to operate on the list. This involves more macro +# expansions, but avoids the need to rescan a quadratic number of +# arguments, making these replacements very attractive for M4 1.4.x. +# On the other hand, in any version of M4, expanding additional macros +# costs additional time; therefore, in M4 1.6, where $@ recursion uses +# fewer macros, these replacements actually pessimize performance. +# Additionally, the use of $10 to mean the tenth argument violates +# POSIX; although all versions of m4 1.4.x support this meaning, a +# future m4 version may switch to take it as the first argument +# concatenated with a literal 0, so the implementations in this file +# are not future-proof. Thus, this file is conditionally included as +# part of m4_init(), only when it is detected that M4 probably has +# quadratic behavior (ie. it lacks the macro __m4_version__). +# +# Please keep this file in sync with m4sugar.m4. + +# _m4_foreach(PRE, POST, IGNORED, ARG...) +# --------------------------------------- +# Form the common basis of the m4_foreach and m4_map macros. For each +# ARG, expand PRE[ARG]POST[]. The IGNORED argument makes recursion +# easier, and must be supplied rather than implicit. +# +# This version minimizes the number of times that $@ is evaluated by +# using m4_for to generate a boilerplate into _m4_f then passing $@ to +# that temporary macro. Thus, the recursion is done in m4_for without +# reparsing any user input, and is not quadratic. For an idea of how +# this works, note that m4_foreach(i,[1,2],[i]) calls +# _m4_foreach([m4_define([i],],[)i],[],[1],[2]) +# which defines _m4_f: +# $1[$4]$2[]$1[$5]$2[]_m4_popdef([_m4_f]) +# then calls _m4_f([m4_define([i],],[)i],[],[1],[2]) for a net result: +# m4_define([i],[1])i[]m4_define([i],[2])i[]_m4_popdef([_m4_f]). +m4_define([_m4_foreach], +[m4_if([$#], [3], [], + [m4_pushdef([_m4_f], _m4_for([4], [$#], [1], + [$0_([1], [2],], [)])[_m4_popdef([_m4_f])])_m4_f($@)])]) + +m4_define([_m4_foreach_], +[[$$1[$$3]$$2[]]]) + +# m4_case(SWITCH, VAL1, IF-VAL1, VAL2, IF-VAL2, ..., DEFAULT) +# ----------------------------------------------------------- +# Find the first VAL that SWITCH matches, and expand the corresponding +# IF-VAL. If there are no matches, expand DEFAULT. +# +# Use m4_for to create a temporary macro in terms of a boilerplate +# m4_if with final cleanup. If $# is even, we have DEFAULT; if it is +# odd, then rounding the last $# up in the temporary macro is +# harmless. For example, both m4_case(1,2,3,4,5) and +# m4_case(1,2,3,4,5,6) result in the intermediate _m4_case being +# m4_if([$1],[$2],[$3],[$1],[$4],[$5],_m4_popdef([_m4_case])[$6]) +m4_define([m4_case], +[m4_if(m4_eval([$# <= 2]), [1], [$2], +[m4_pushdef([_$0], [m4_if(]_m4_for([2], m4_eval([($# - 1) / 2 * 2]), [2], + [_$0_(], [)])[_m4_popdef( + [_$0])]m4_dquote($m4_eval([($# + 1) & ~1]))[)])_$0($@)])]) + +m4_define([_m4_case_], +[$0_([1], [$1], m4_incr([$1]))]) + +m4_define([_m4_case__], +[[[$$1],[$$2],[$$3],]]) + +# m4_bmatch(SWITCH, RE1, VAL1, RE2, VAL2, ..., DEFAULT) +# ----------------------------------------------------- +# m4 equivalent of +# +# if (SWITCH =~ RE1) +# VAL1; +# elif (SWITCH =~ RE2) +# VAL2; +# elif ... +# ... +# else +# DEFAULT +# +# We build the temporary macro _m4_b: +# m4_define([_m4_b], _m4_defn([_m4_bmatch]))_m4_b([$1], [$2], [$3])... +# _m4_b([$1], [$m-1], [$m])_m4_b([], [], [$m+1]_m4_popdef([_m4_b])) +# then invoke m4_unquote(_m4_b($@)), for concatenation with later text. +m4_define([m4_bmatch], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [$2], + [m4_pushdef([_m4_b], [m4_define([_m4_b], + _m4_defn([_$0]))]_m4_for([3], m4_eval([($# + 1) / 2 * 2 - 1]), + [2], [_$0_(], [)])[_m4_b([], [],]m4_dquote([$]m4_eval( + [($# + 1) / 2 * 2]))[_m4_popdef([_m4_b]))])m4_unquote(_m4_b($@))])]) + +m4_define([_m4_bmatch], +[m4_if(m4_bregexp([$1], [$2]), [-1], [], [[$3]m4_define([$0])])]) + +m4_define([_m4_bmatch_], +[$0_([1], m4_decr([$1]), [$1])]) + +m4_define([_m4_bmatch__], +[[_m4_b([$$1], [$$2], [$$3])]]) + + +# m4_cond(TEST1, VAL1, IF-VAL1, TEST2, VAL2, IF-VAL2, ..., [DEFAULT]) +# ------------------------------------------------------------------- +# Similar to m4_if, except that each TEST is expanded when encountered. +# If the expansion of TESTn matches the string VALn, the result is IF-VALn. +# The result is DEFAULT if no tests passed. This macro allows +# short-circuiting of expensive tests, where it pays to arrange quick +# filter tests to run first. +# +# m4_cond already guarantees either 3*n or 3*n + 1 arguments, 1 <= n. +# We only have to speed up _m4_cond, by building the temporary _m4_c: +# m4_define([_m4_c], _m4_defn([m4_unquote]))_m4_c([m4_if(($1), [($2)], +# [[$3]m4_define([_m4_c])])])_m4_c([m4_if(($4), [($5)], +# [[$6]m4_define([_m4_c])])])..._m4_c([m4_if(($m-2), [($m-1)], +# [[$m]m4_define([_m4_c])])])_m4_c([[$m+1]]_m4_popdef([_m4_c])) +# We invoke m4_unquote(_m4_c($@)), for concatenation with later text. +m4_define([_m4_cond], +[m4_pushdef([_m4_c], [m4_define([_m4_c], + _m4_defn([m4_unquote]))]_m4_for([2], m4_eval([$# / 3 * 3 - 1]), [3], + [$0_(], [)])[_m4_c(]m4_dquote(m4_dquote( + [$]m4_eval([$# / 3 * 3 + 1])))[_m4_popdef([_m4_c]))])m4_unquote(_m4_c($@))]) + +m4_define([_m4_cond_], +[$0_(m4_decr([$1]), [$1], m4_incr([$1]))]) + +m4_define([_m4_cond__], +[[_m4_c([m4_if(($$1), [($$2)], [[$$3]m4_define([_m4_c])])])]]) + +# m4_bpatsubsts(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# m4_bpatsubsts already validated an odd number of arguments; we only +# need to speed up _m4_bpatsubsts. To avoid nesting, we build the +# temporary _m4_p: +# m4_define([_m4_p], [$1])m4_define([_m4_p], +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$2], [$3]))m4_define([_m4_p], +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$4], [$5]))m4_define([_m4_p],... +# m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$m-1], [$m]))m4_unquote( +# _m4_defn([_m4_p])_m4_popdef([_m4_p])) +m4_define([_m4_bpatsubsts], +[m4_pushdef([_m4_p], [m4_define([_m4_p], + ]m4_dquote([$]1)[)]_m4_for([3], [$#], [2], [$0_(], + [)])[m4_unquote(_m4_defn([_m4_p])_m4_popdef([_m4_p]))])_m4_p($@)]) + +m4_define([_m4_bpatsubsts_], +[$0_(m4_decr([$1]), [$1])]) + +m4_define([_m4_bpatsubsts__], +[[m4_define([_m4_p], +m4_bpatsubst(m4_dquote(_m4_defn([_m4_p])), [$$1], [$$2]))]]) + +# m4_shiftn(N, ...) +# ----------------- +# Returns ... shifted N times. Useful for recursive "varargs" constructs. +# +# m4_shiftn already validated arguments; we only need to speed up +# _m4_shiftn. If N is 3, then we build the temporary _m4_s, defined as +# ,[$5],[$6],...,[$m]_m4_popdef([_m4_s]) +# before calling m4_shift(_m4_s($@)). +m4_define([_m4_shiftn], +[m4_if(m4_incr([$1]), [$#], [], [m4_pushdef([_m4_s], + _m4_for(m4_eval([$1 + 2]), [$#], [1], + [[,]m4_dquote($], [)])[_m4_popdef([_m4_s])])m4_shift(_m4_s($@))])]) + +# m4_do(STRING, ...) +# ------------------ +# This macro invokes all its arguments (in sequence, of course). It is +# useful for making your macros more structured and readable by dropping +# unnecessary dnl's and have the macros indented properly. +# +# Here, we use the temporary macro _m4_do, defined as +# $1[]$2[]...[]$n[]_m4_popdef([_m4_do]) +m4_define([m4_do], +[m4_if([$#], [0], [], + [m4_pushdef([_$0], _m4_for([1], [$#], [1], + [$], [[[]]])[_m4_popdef([_$0])])_$0($@)])]) + +# m4_dquote_elt(ARGS) +# ------------------- +# Return ARGS as an unquoted list of double-quoted arguments. +# +# _m4_foreach to the rescue. +m4_define([m4_dquote_elt], +[m4_if([$#], [0], [], [[[$1]]_m4_foreach([,m4_dquote(], [)], $@)])]) + +# m4_reverse(ARGS) +# ---------------- +# Output ARGS in reverse order. +# +# Invoke _m4_r($@) with the temporary _m4_r built as +# [$m], [$m-1], ..., [$2], [$1]_m4_popdef([_m4_r]) +m4_define([m4_reverse], +[m4_if([$#], [0], [], [$#], [1], [[$1]], +[m4_pushdef([_m4_r], [[$$#]]_m4_for(m4_decr([$#]), [1], [-1], + [[, ]m4_dquote($], [)])[_m4_popdef([_m4_r])])_m4_r($@)])]) + + +# m4_map_args_pair(EXPRESSION, [END-EXPR = EXPRESSION], ARG...) +# ------------------------------------------------------------- +# Perform a pairwise grouping of consecutive ARGs, by expanding +# EXPRESSION([ARG1], [ARG2]). If there are an odd number of ARGs, the +# final argument is expanded with END-EXPR([ARGn]). +# +# Build the temporary macro _m4_map_args_pair, with the $2([$m+1]) +# only output if $# is odd: +# $1([$3], [$4])[]$1([$5], [$6])[]...$1([$m-1], +# [$m])[]m4_default([$2], [$1])([$m+1])[]_m4_popdef([_m4_map_args_pair]) +m4_define([m4_map_args_pair], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [m4_fatal([$0: too few arguments: $#: $1])], + [$#], [2], [], + [$#], [3], [m4_default([$2], [$1])([$3])[]], + [m4_pushdef([_$0], _m4_for([3], + m4_eval([$# / 2 * 2 - 1]), [2], [_$0_(], [)])_$0_end( + [1], [2], [$#])[_m4_popdef([_$0])])_$0($@)])]) + +m4_define([_m4_map_args_pair_], +[$0_([1], [$1], m4_incr([$1]))]) + +m4_define([_m4_map_args_pair__], +[[$$1([$$2], [$$3])[]]]) + +m4_define([_m4_map_args_pair_end], +[m4_if(m4_eval([$3 & 1]), [1], [[m4_default([$$2], [$$1])([$$3])[]]])]) + +# m4_join(SEP, ARG1, ARG2...) +# --------------------------- +# Produce ARG1SEPARG2...SEPARGn. Avoid back-to-back SEP when a given ARG +# is the empty string. No expansion is performed on SEP or ARGs. +# +# Use a self-modifying separator, since we don't know how many +# arguments might be skipped before a separator is first printed, but +# be careful if the separator contains $. _m4_foreach to the rescue. +m4_define([m4_join], +[m4_pushdef([_m4_sep], [m4_define([_m4_sep], _m4_defn([m4_echo]))])]dnl +[_m4_foreach([_$0([$1],], [)], $@)_m4_popdef([_m4_sep])]) + +m4_define([_m4_join], +[m4_if([$2], [], [], [_m4_sep([$1])[$2]])]) + +# m4_joinall(SEP, ARG1, ARG2...) +# ------------------------------ +# Produce ARG1SEPARG2...SEPARGn. An empty ARG results in back-to-back SEP. +# No expansion is performed on SEP or ARGs. +# +# A bit easier than m4_join. _m4_foreach to the rescue. +m4_define([m4_joinall], +[[$2]m4_if(m4_eval([$# <= 2]), [1], [], + [_m4_foreach([$1], [], m4_shift($@))])]) + +# m4_list_cmp(A, B) +# ----------------- +# Compare the two lists of integer expressions A and B. +# +# m4_list_cmp takes care of any side effects; we only override +# _m4_list_cmp_raw, where we can safely expand lists multiple times. +# First, insert padding so that both lists are the same length; the +# trailing +0 is necessary to handle a missing list. Next, create a +# temporary macro to perform pairwise comparisons until an inequality +# is found. For example, m4_list_cmp([1], [1,2]) creates _m4_cmp as +# m4_if(m4_eval([($1) != ($3)]), [1], [m4_cmp([$1], [$3])], +# m4_eval([($2) != ($4)]), [1], [m4_cmp([$2], [$4])], +# [0]_m4_popdef([_m4_cmp])) +# then calls _m4_cmp([1+0], [0*2], [1], [2+0]) +m4_define([_m4_list_cmp_raw], +[m4_if([$1], [$2], 0, + [_m4_list_cmp($1+0_m4_list_pad(m4_count($1), m4_count($2)), + $2+0_m4_list_pad(m4_count($2), m4_count($1)))])]) + +m4_define([_m4_list_pad], +[m4_if(m4_eval($1 < $2), [1], + [_m4_for(m4_incr([$1]), [$2], [1], [,0*])])]) + +m4_define([_m4_list_cmp], +[m4_pushdef([_m4_cmp], [m4_if(]_m4_for( + [1], m4_eval([$# >> 1]), [1], [$0_(], [,]m4_eval([$# >> 1])[)])[ + [0]_m4_popdef([_m4_cmp]))])_m4_cmp($@)]) + +m4_define([_m4_list_cmp_], +[$0_([$1], m4_eval([$1 + $2]))]) + +m4_define([_m4_list_cmp__], +[[m4_eval([($$1) != ($$2)]), [1], [m4_cmp([$$1], [$$2])], +]]) + +# m4_max(EXPR, ...) +# m4_min(EXPR, ...) +# ----------------- +# Return the decimal value of the maximum (or minimum) in a series of +# integer expressions. +# +# _m4_foreach to the rescue; we only need to replace _m4_minmax. Here, +# we need a temporary macro to track the best answer so far, so that +# the foreach expression is tractable. +m4_define([_m4_minmax], +[m4_pushdef([_m4_best], m4_eval([$2]))_m4_foreach( + [m4_define([_m4_best], $1(_m4_best,], [))], m4_shift($@))]dnl +[_m4_best[]_m4_popdef([_m4_best])]) + +# m4_set_add_all(SET, VALUE...) +# ----------------------------- +# Add each VALUE into SET. This is O(n) in the number of VALUEs, and +# can be faster than calling m4_set_add for each VALUE. +# +# _m4_foreach to the rescue. If no deletions have occurred, then +# avoid the speed penalty of m4_set_add. +m4_define([m4_set_add_all], +[m4_if([$#], [0], [], [$#], [1], [], + [m4_define([_m4_set_size($1)], m4_eval(m4_set_size([$1]) + + m4_len(_m4_foreach(m4_ifdef([_m4_set_cleanup($1)], + [[m4_set_add]], [[_$0]])[([$1],], [)], $@))))])]) + +m4_define([_m4_set_add_all], +[m4_ifdef([_m4_set([$1],$2)], [], + [m4_define([_m4_set([$1],$2)], + [1])m4_pushdef([_m4_set([$1])], [$2])-])]) diff --git a/bison/RelWithDebInfo/data/m4sugar/m4sugar.m4 b/bison/RelWithDebInfo/data/m4sugar/m4sugar.m4 new file mode 100644 index 0000000..b42fc1a --- /dev/null +++ b/bison/RelWithDebInfo/data/m4sugar/m4sugar.m4 @@ -0,0 +1,3329 @@ +divert(-1)# -*- Autoconf -*- +# This file is part of Autoconf. +# Base M4 layer. +# Requires GNU M4. +# +# Copyright (C) 1999-2017, 2020 Free Software Foundation, Inc. + +# This file is part of Autoconf. This program is free +# software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# Under Section 7 of GPL version 3, you are granted additional +# permissions described in the Autoconf Configure Script Exception, +# version 3.0, as published by the Free Software Foundation. +# +# You should have received a copy of the GNU General Public License +# and a copy of the Autoconf Configure Script Exception along with +# this program; see the files COPYINGv3 and COPYING.EXCEPTION +# respectively. If not, see . + +# Written by Akim Demaille. + +# Set the quotes, whatever the current quoting system. +changequote() +changequote([, ]) + +# Some old m4's don't support m4exit. But they provide +# equivalent functionality by core dumping because of the +# long macros we define. +ifdef([__gnu__], , +[errprint(M4sugar requires GNU M4. Install it before installing M4sugar or +set the M4 environment variable to its absolute file name.) +m4exit(2)]) + + +## ------------------------------- ## +## 1. Simulate --prefix-builtins. ## +## ------------------------------- ## + +# m4_define +# m4_defn +# m4_undefine +define([m4_define], defn([define])) +define([m4_defn], defn([defn])) +define([m4_undefine], defn([undefine])) + +m4_undefine([define]) +m4_undefine([defn]) +m4_undefine([undefine]) + + +# m4_copy(SRC, DST) +# ----------------- +# Define DST as the definition of SRC. +# What's the difference between: +# 1. m4_copy([from], [to]) +# 2. m4_define([to], [from($@)]) +# Well, obviously 1 is more expensive in space. Maybe 2 is more expensive +# in time, but because of the space cost of 1, it's not that obvious. +# Nevertheless, one huge difference is the handling of `$0'. If `from' +# uses `$0', then with 1, `to''s `$0' is `to', while it is `from' in 2. +# The user would certainly prefer to see `to'. +# +# This definition is in effect during m4sugar initialization, when +# there are no pushdef stacks; later on, we redefine it to something +# more powerful for all other clients to use. +m4_define([m4_copy], +[m4_define([$2], m4_defn([$1]))]) + + +# m4_rename(SRC, DST) +# ------------------- +# Rename the macro SRC to DST. +m4_define([m4_rename], +[m4_copy([$1], [$2])m4_undefine([$1])]) + + +# m4_rename_m4(MACRO-NAME) +# ------------------------ +# Rename MACRO-NAME to m4_MACRO-NAME. +m4_define([m4_rename_m4], +[m4_rename([$1], [m4_$1])]) + + +# m4_copy_unm4(m4_MACRO-NAME) +# --------------------------- +# Copy m4_MACRO-NAME to MACRO-NAME. +m4_define([m4_copy_unm4], +[m4_copy([$1], m4_bpatsubst([$1], [^m4_\(.*\)], [[\1]]))]) + + +# Some m4 internals have names colliding with tokens we might use. +# Rename them a` la `m4 --prefix-builtins'. Conditionals first, since +# some subsequent renames are conditional. +m4_rename_m4([ifdef]) +m4_rename([ifelse], [m4_if]) + +m4_rename_m4([builtin]) +m4_rename_m4([changecom]) +m4_rename_m4([changequote]) +m4_ifdef([changeword],dnl conditionally available in 1.4.x +[m4_undefine([changeword])]) +m4_rename_m4([debugfile]) +m4_rename_m4([debugmode]) +m4_rename_m4([decr]) +m4_rename_m4([divnum]) +m4_rename_m4([dumpdef]) +m4_rename_m4([errprint]) +m4_rename_m4([esyscmd]) +m4_rename_m4([eval]) +m4_rename_m4([format]) +m4_undefine([include]) +m4_rename_m4([incr]) +m4_rename_m4([index]) +m4_rename_m4([indir]) +m4_rename_m4([len]) +m4_rename([m4exit], [m4_exit]) +m4_undefine([m4wrap]) +m4_ifdef([mkstemp],dnl added in M4 1.4.8 +[m4_rename_m4([mkstemp]) +m4_copy([m4_mkstemp], [m4_maketemp]) +m4_undefine([maketemp])], +[m4_rename_m4([maketemp]) +m4_copy([m4_maketemp], [m4_mkstemp])]) +m4_rename([patsubst], [m4_bpatsubst]) +m4_rename_m4([popdef]) +m4_rename_m4([pushdef]) +m4_rename([regexp], [m4_bregexp]) +m4_rename_m4([shift]) +m4_undefine([sinclude]) +m4_rename_m4([substr]) +m4_ifdef([symbols],dnl present only in alpha-quality 1.4o +[m4_rename_m4([symbols])]) +m4_rename_m4([syscmd]) +m4_rename_m4([sysval]) +m4_rename_m4([traceoff]) +m4_rename_m4([traceon]) +m4_rename_m4([translit]) + +# _m4_defn(ARG) +# ------------- +# _m4_defn is for internal use only - it bypasses the wrapper, so it +# must only be used on one argument at a time, and only on macros +# known to be defined. Make sure this still works if the user renames +# m4_defn but not _m4_defn. +m4_copy([m4_defn], [_m4_defn]) + +# _m4_divert_raw(NUM) +# ------------------- +# _m4_divert_raw is for internal use only. Use this instead of +# m4_builtin([divert], NUM), so that tracing diversion flow is easier. +m4_rename([divert], [_m4_divert_raw]) + +# _m4_popdef(ARG...) +# ------------------ +# _m4_popdef is for internal use only - it bypasses the wrapper, so it +# must only be used on macros known to be defined. Make sure this +# still works if the user renames m4_popdef but not _m4_popdef. +m4_copy([m4_popdef], [_m4_popdef]) + +# _m4_undefine(ARG...) +# -------------------- +# _m4_undefine is for internal use only - it bypasses the wrapper, so +# it must only be used on macros known to be defined. Make sure this +# still works if the user renames m4_undefine but not _m4_undefine. +m4_copy([m4_undefine], [_m4_undefine]) + +# _m4_undivert(NUM...) +# -------------------- +# _m4_undivert is for internal use only, and should always be given +# arguments. Use this instead of m4_builtin([undivert], NUM...), so +# that tracing diversion flow is easier. +m4_rename([undivert], [_m4_undivert]) + + +## ------------------- ## +## 2. Error messages. ## +## ------------------- ## + + +# m4_location +# ----------- +# Output the current file, colon, and the current line number. +m4_define([m4_location], +[__file__:__line__]) + + +# m4_errprintn(MSG) +# ----------------- +# Same as `errprint', but with the missing end of line. +m4_define([m4_errprintn], +[m4_errprint([$1 +])]) + + +# m4_warning(MSG) +# --------------- +# Warn the user. +m4_define([m4_warning], +[m4_errprintn(m4_location[: warning: $1])]) + + +# m4_fatal(MSG, [EXIT-STATUS]) +# ---------------------------- +# Fatal the user. :) +m4_define([m4_fatal], +[m4_errprintn(m4_location[: error: $1] +m4_expansion_stack)m4_exit(m4_if([$2],, 1, [$2]))]) + + +# m4_assert(EXPRESSION, [EXIT-STATUS = 1]) +# ---------------------------------------- +# This macro ensures that EXPRESSION evaluates to true, and exits if +# EXPRESSION evaluates to false. +m4_define([m4_assert], +[m4_if(m4_eval([$1]), 0, + [m4_fatal([assert failed: $1], [$2])])]) + + + +## ------------- ## +## 3. Warnings. ## +## ------------- ## + + +# _m4_warn(CATEGORY, MESSAGE, [STACK-TRACE]) +# ------------------------------------------ +# Report a MESSAGE to the user if the CATEGORY of warnings is enabled. +# This is for traces only. +# If present, STACK-TRACE is a \n-separated list of "LOCATION: MESSAGE", +# where the last line (and no other) ends with "the top level". +# +# Within m4, the macro is a no-op. This macro really matters +# when autom4te post-processes the trace output. +m4_define([_m4_warn], []) + + +# m4_warn(CATEGORY, MESSAGE) +# -------------------------- +# Report a MESSAGE to the user if the CATEGORY of warnings is enabled. +m4_define([m4_warn], +[_m4_warn([$1], [$2], +m4_ifdef([_m4_expansion_stack], [m4_expansion_stack]))]) + + + +## ------------------- ## +## 4. File inclusion. ## +## ------------------- ## + + +# We also want to neutralize include (and sinclude for symmetry), +# but we want to extend them slightly: warn when a file is included +# several times. This is, in general, a dangerous operation, because +# too many people forget to quote the first argument of m4_define. +# +# For instance in the following case: +# m4_define(foo, [bar]) +# then a second reading will turn into +# m4_define(bar, [bar]) +# which is certainly not what was meant. + +# m4_include_unique(FILE) +# ----------------------- +# Declare that the FILE was loading; and warn if it has already +# been included. +m4_define([m4_include_unique], +[m4_ifdef([m4_include($1)], + [m4_warn([syntax], [file `$1' included several times])])dnl +m4_define([m4_include($1)])]) + + +# m4_include(FILE) +# ---------------- +# Like the builtin include, but warns against multiple inclusions. +m4_define([m4_include], +[m4_include_unique([$1])dnl +m4_builtin([include], [$1])]) + + +# m4_sinclude(FILE) +# ----------------- +# Like the builtin sinclude, but warns against multiple inclusions. +m4_define([m4_sinclude], +[m4_include_unique([$1])dnl +m4_builtin([sinclude], [$1])]) + + + +## ------------------------------------ ## +## 5. Additional branching constructs. ## +## ------------------------------------ ## + +# Both `m4_ifval' and `m4_ifset' tests against the empty string. The +# difference is that `m4_ifset' is specialized on macros. +# +# In case of arguments of macros, eg. $1, it makes little difference. +# In the case of a macro `FOO', you don't want to check `m4_ifval(FOO, +# TRUE)', because if `FOO' expands with commas, there is a shifting of +# the arguments. So you want to run `m4_ifval([FOO])', but then you just +# compare the *string* `FOO' against `', which, of course fails. +# +# So you want the variation `m4_ifset' that expects a macro name as $1. +# If this macro is both defined and defined to a non empty value, then +# it runs TRUE, etc. + + +# m4_ifblank(COND, [IF-BLANK], [IF-TEXT]) +# m4_ifnblank(COND, [IF-TEXT], [IF-BLANK]) +# ---------------------------------------- +# If COND is empty, or consists only of blanks (space, tab, newline), +# then expand IF-BLANK, otherwise expand IF-TEXT. This differs from +# m4_ifval only if COND has just whitespace, but it helps optimize in +# spite of users who mistakenly leave trailing space after what they +# thought was an empty argument: +# macro( +# [] +# ) +# +# Writing one macro in terms of the other causes extra overhead, so +# we inline both definitions. +m4_define([m4_ifblank], +[m4_if(m4_translit([[$1]], [ ][ ][ +]), [], [$2], [$3])]) + +m4_define([m4_ifnblank], +[m4_if(m4_translit([[$1]], [ ][ ][ +]), [], [$3], [$2])]) + + +# m4_ifval(COND, [IF-TRUE], [IF-FALSE]) +# ------------------------------------- +# If COND is not the empty string, expand IF-TRUE, otherwise IF-FALSE. +# Comparable to m4_ifdef. +m4_define([m4_ifval], +[m4_if([$1], [], [$3], [$2])]) + + +# m4_n(TEXT) +# ---------- +# If TEXT is not empty, return TEXT and a new line, otherwise nothing. +m4_define([m4_n], +[m4_if([$1], + [], [], + [$1 +])]) + + +# m4_ifvaln(COND, [IF-TRUE], [IF-FALSE]) +# -------------------------------------- +# Same as `m4_ifval', but add an extra newline to IF-TRUE or IF-FALSE +# unless that argument is empty. +m4_define([m4_ifvaln], +[m4_if([$1], + [], [m4_n([$3])], + [m4_n([$2])])]) + + +# m4_ifset(MACRO, [IF-TRUE], [IF-FALSE]) +# -------------------------------------- +# If MACRO has no definition, or of its definition is the empty string, +# expand IF-FALSE, otherwise IF-TRUE. +m4_define([m4_ifset], +[m4_ifdef([$1], + [m4_ifval(_m4_defn([$1]), [$2], [$3])], + [$3])]) + + +# m4_ifndef(NAME, [IF-NOT-DEFINED], [IF-DEFINED]) +# ----------------------------------------------- +m4_define([m4_ifndef], +[m4_ifdef([$1], [$3], [$2])]) + + +# m4_case(SWITCH, VAL1, IF-VAL1, VAL2, IF-VAL2, ..., DEFAULT) +# ----------------------------------------------------------- +# m4 equivalent of +# switch (SWITCH) +# { +# case VAL1: +# IF-VAL1; +# break; +# case VAL2: +# IF-VAL2; +# break; +# ... +# default: +# DEFAULT; +# break; +# }. +# All the values are optional, and the macro is robust to active +# symbols properly quoted. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_case], +[m4_if([$#], 0, [], + [$#], 1, [], + [$#], 2, [$2], + [$1], [$2], [$3], + [$0([$1], m4_shift3($@))])]) + + +# m4_bmatch(SWITCH, RE1, VAL1, RE2, VAL2, ..., DEFAULT) +# ----------------------------------------------------- +# m4 equivalent of +# +# if (SWITCH =~ RE1) +# VAL1; +# elif (SWITCH =~ RE2) +# VAL2; +# elif ... +# ... +# else +# DEFAULT +# +# All the values are optional, and the macro is robust to active symbols +# properly quoted. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_bmatch], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [$2], + [m4_if(m4_bregexp([$1], [$2]), -1, [$0([$1], m4_shift3($@))], + [$3])])]) + +# m4_argn(N, ARGS...) +# ------------------- +# Extract argument N (greater than 0) from ARGS. Example: +# m4_define([b], [B]) +# m4_argn([2], [a], [b], [c]) => b +# +# Rather than using m4_car(m4_shiftn([$1], $@)), we exploit the fact that +# GNU m4 can directly reference any argument, through an indirect macro. +m4_define([m4_argn], +[m4_assert([0 < $1])]dnl +[m4_pushdef([_$0], [_m4_popdef([_$0])]m4_dquote([$]m4_incr([$1])))_$0($@)]) + + +# m4_car(ARGS...) +# m4_cdr(ARGS...) +# --------------- +# Manipulate m4 lists. m4_car returns the first argument. m4_cdr +# bundles all but the first argument into a quoted list. These two +# macros are generally used with list arguments, with quoting removed +# to break the list into multiple m4 ARGS. +m4_define([m4_car], [[$1]]) +m4_define([m4_cdr], +[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], + [$#], 1, [], + [m4_dquote(m4_shift($@))])]) + +# _m4_cdr(ARGS...) +# ---------------- +# Like m4_cdr, except include a leading comma unless only one argument +# remains. Why? Because comparing a large list against [] is more +# expensive in expansion time than comparing the number of arguments; so +# _m4_cdr can be used to reduce the number of arguments when it is time +# to end recursion. +m4_define([_m4_cdr], +[m4_if([$#], 1, [], + [, m4_dquote(m4_shift($@))])]) + + + +# m4_cond(TEST1, VAL1, IF-VAL1, TEST2, VAL2, IF-VAL2, ..., [DEFAULT]) +# ------------------------------------------------------------------- +# Similar to m4_if, except that each TEST is expanded when encountered. +# If the expansion of TESTn matches the string VALn, the result is IF-VALn. +# The result is DEFAULT if no tests passed. This macro allows +# short-circuiting of expensive tests, where it pays to arrange quick +# filter tests to run first. +# +# For an example, consider a previous implementation of _AS_QUOTE_IFELSE: +# +# m4_if(m4_index([$1], [\]), [-1], [$2], +# m4_eval(m4_index([$1], [\\]) >= 0), [1], [$2], +# m4_eval(m4_index([$1], [\$]) >= 0), [1], [$2], +# m4_eval(m4_index([$1], [\`]) >= 0), [1], [$3], +# m4_eval(m4_index([$1], [\"]) >= 0), [1], [$3], +# [$2]) +# +# Here, m4_index is computed 5 times, and m4_eval 4, even if $1 contains +# no backslash. It is more efficient to do: +# +# m4_cond([m4_index([$1], [\])], [-1], [$2], +# [m4_eval(m4_index([$1], [\\]) >= 0)], [1], [$2], +# [m4_eval(m4_index([$1], [\$]) >= 0)], [1], [$2], +# [m4_eval(m4_index([$1], [\`]) >= 0)], [1], [$3], +# [m4_eval(m4_index([$1], [\"]) >= 0)], [1], [$3], +# [$2]) +# +# In the common case of $1 with no backslash, only one m4_index expansion +# occurs, and m4_eval is avoided altogether. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_cond], +[m4_if([$#], [0], [m4_fatal([$0: cannot be called without arguments])], + [$#], [1], [$1], + m4_eval([$# % 3]), [2], [m4_fatal([$0: missing an argument])], + [_$0($@)])]) + +m4_define([_m4_cond], +[m4_if(($1), [($2)], [$3], + [$#], [3], [], + [$#], [4], [$4], + [$0(m4_shift3($@))])]) + + +## ---------------------------------------- ## +## 6. Enhanced version of some primitives. ## +## ---------------------------------------- ## + +# m4_bpatsubsts(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# All the values are optional, and the macro is robust to active symbols +# properly quoted. +# +# I would have liked to name this macro `m4_bpatsubst', unfortunately, +# due to quotation problems, I need to double quote $1 below, therefore +# the anchors are broken :( I can't let users be trapped by that. +# +# Recall that m4_shift3 always results in an argument. Hence, we need +# to distinguish between a final deletion vs. ending recursion. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_bpatsubsts], +[m4_if([$#], 0, [m4_fatal([$0: too few arguments: $#])], + [$#], 1, [m4_fatal([$0: too few arguments: $#: $1])], + [$#], 2, [m4_unquote(m4_builtin([patsubst], [[$1]], [$2]))], + [$#], 3, [m4_unquote(m4_builtin([patsubst], [[$1]], [$2], [$3]))], + [_$0($@m4_if(m4_eval($# & 1), 0, [,]))])]) +m4_define([_m4_bpatsubsts], +[m4_if([$#], 2, [$1], + [$0(m4_builtin([patsubst], [[$1]], [$2], [$3]), + m4_shift3($@))])]) + + +# m4_copy(SRC, DST) +# ----------------- +# Define the pushdef stack DST as a copy of the pushdef stack SRC; +# give an error if DST is already defined. This is particularly nice +# for copying self-modifying pushdef stacks, where the top definition +# includes one-shot initialization that is later popped to the normal +# definition. This version intentionally does nothing if SRC is +# undefined. +# +# Some macros simply can't be renamed with this method: namely, anything +# involved in the implementation of m4_stack_foreach_sep. +m4_define([m4_copy], +[m4_ifdef([$2], [m4_fatal([$0: won't overwrite defined macro: $2])], + [m4_stack_foreach_sep([$1], [m4_pushdef([$2],], [)])])]dnl +[m4_ifdef([m4_location($1)], [m4_define([m4_location($2)], m4_location)])]) + + +# m4_copy_force(SRC, DST) +# m4_rename_force(SRC, DST) +# ------------------------- +# Like m4_copy/m4_rename, except blindly overwrite any existing DST. +# Note that m4_copy_force tolerates undefined SRC, while m4_rename_force +# does not. +m4_define([m4_copy_force], +[m4_ifdef([$2], [_m4_undefine([$2])])m4_copy($@)]) + +m4_define([m4_rename_force], +[m4_ifdef([$2], [_m4_undefine([$2])])m4_rename($@)]) + + +# m4_define_default(MACRO, VALUE) +# ------------------------------- +# If MACRO is undefined, set it to VALUE. +m4_define([m4_define_default], +[m4_ifndef([$1], [m4_define($@)])]) + + +# m4_default(EXP1, EXP2) +# m4_default_nblank(EXP1, EXP2) +# ----------------------------- +# Returns EXP1 if not empty/blank, otherwise EXP2. Expand the result. +# +# m4_default is called on hot paths, so inline the contents of m4_ifval, +# for one less round of expansion. +m4_define([m4_default], +[m4_if([$1], [], [$2], [$1])]) + +m4_define([m4_default_nblank], +[m4_ifblank([$1], [$2], [$1])]) + + +# m4_default_quoted(EXP1, EXP2) +# m4_default_nblank_quoted(EXP1, EXP2) +# ------------------------------------ +# Returns EXP1 if non empty/blank, otherwise EXP2. Leave the result quoted. +# +# For comparison: +# m4_define([active], [ACTIVE]) +# m4_default([active], [default]) => ACTIVE +# m4_default([], [active]) => ACTIVE +# -m4_default([ ], [active])- => - - +# -m4_default_nblank([ ], [active])- => -ACTIVE- +# m4_default_quoted([active], [default]) => active +# m4_default_quoted([], [active]) => active +# -m4_default_quoted([ ], [active])- => - - +# -m4_default_nblank_quoted([ ], [active])- => -active- +# +# m4_default macro is called on hot paths, so inline the contents of m4_ifval, +# for one less round of expansion. +m4_define([m4_default_quoted], +[m4_if([$1], [], [[$2]], [[$1]])]) + +m4_define([m4_default_nblank_quoted], +[m4_ifblank([$1], [[$2]], [[$1]])]) + + +# m4_defn(NAME) +# ------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). This replacement is not a full-featured +# replacement: if any of the defined macros contain unbalanced quoting, but +# when pasted together result in a well-quoted string, then only native m4 +# support is able to get it correct. But that's where quadrigraphs come in +# handy, if you really need unbalanced quotes inside your macros. +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_defn], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_defn([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + + +# m4_dumpdef(NAME...) +# ------------------- +# In m4 1.4.x, dumpdef writes to the current debugfile, rather than +# stderr. This in turn royally confuses autom4te; so we follow the +# lead of newer m4 and always dump to stderr. Unlike the original, +# this version requires an argument, since there is no convenient way +# in m4 1.4.x to grab the names of all defined macros. Newer m4 +# always dumps to stderr, regardless of the current debugfile; it also +# provides m4symbols as a way to grab all current macro names. But +# dumpdefs is not frequently called, so we don't need to worry about +# conditionally using these newer features. Also, this version +# doesn't sort multiple arguments. +# +# If we detect m4 1.6 or newer, then provide an alternate definition, +# installed during m4_init, that allows builtins through. +# Unfortunately, there is no nice way in m4 1.4.x to dump builtins. +m4_define([m4_dumpdef], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_ifdef([$1], [m4_errprintn( + [$1: ]m4_dquote(_m4_defn([$1])))], [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + +m4_define([_m4_dumpdef], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_builtin([dumpdef], [$1])], + [m4_map_args_sep([m4_builtin([dumpdef],], [)], [], $@)])]) + + +# m4_dumpdefs(NAME...) +# -------------------- +# Similar to `m4_dumpdef(NAME)', but if NAME was m4_pushdef'ed, display its +# value stack (most recent displayed first). Also, this version silently +# ignores undefined macros, rather than erroring out. +# +# This macro cheats, because it relies on the current definition of NAME +# while the second argument of m4_stack_foreach_lifo is evaluated (which +# would be undefined according to the API). +m4_define([m4_dumpdefs], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [m4_stack_foreach_lifo([$1], [m4_dumpdef([$1])m4_ignore])], + [m4_map_args([$0], $@)])]) + +# m4_esyscmd_s(COMMAND) +# --------------------- +# Like m4_esyscmd, except strip any trailing newlines, thus behaving +# more like shell command substitution. +m4_define([m4_esyscmd_s], +[m4_chomp_all(m4_esyscmd([$1]))]) + + +# m4_popdef(NAME) +# --------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_popdef], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_popdef([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + + +# m4_shiftn(N, ...) +# ----------------- +# Returns ... shifted N times. Useful for recursive "varargs" constructs. +# +# Autoconf does not use this macro, because it is inherently slower than +# calling the common cases of m4_shift2 or m4_shift3 directly. But it +# might as well be fast for other clients, such as Libtool. One way to +# do this is to expand $@ only once in _m4_shiftn (otherwise, for long +# lists, the expansion of m4_if takes twice as much memory as what the +# list itself occupies, only to throw away the unused branch). The end +# result is strictly equivalent to +# m4_if([$1], 1, [m4_shift(,m4_shift(m4_shift($@)))], +# [_m4_shiftn(m4_decr([$1]), m4_shift(m4_shift($@)))]) +# but with the final `m4_shift(m4_shift($@)))' shared between the two +# paths. The first leg uses a no-op m4_shift(,$@) to balance out the (). +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_shiftn], +[m4_assert(0 < $1 && $1 < $#)_$0($@)]) + +m4_define([_m4_shiftn], +[m4_if([$1], 1, [m4_shift(], + [$0(m4_decr([$1])]), m4_shift(m4_shift($@)))]) + +# m4_shift2(...) +# m4_shift3(...) +# -------------- +# Returns ... shifted twice, and three times. Faster than m4_shiftn. +m4_define([m4_shift2], [m4_shift(m4_shift($@))]) +m4_define([m4_shift3], [m4_shift(m4_shift(m4_shift($@)))]) + +# _m4_shift2(...) +# _m4_shift3(...) +# --------------- +# Like m4_shift2 or m4_shift3, except include a leading comma unless shifting +# consumes all arguments. Why? Because in recursion, it is nice to +# distinguish between 1 element left and 0 elements left, based on how many +# arguments this shift expands to. +m4_define([_m4_shift2], +[m4_if([$#], [2], [], + [, m4_shift(m4_shift($@))])]) +m4_define([_m4_shift3], +[m4_if([$#], [3], [], + [, m4_shift(m4_shift(m4_shift($@)))])]) + + +# m4_undefine(NAME) +# ----------------- +# Like the original, except guarantee a warning when using something which is +# undefined (unlike M4 1.4.x). +# +# This macro is called frequently, so minimize the amount of additional +# expansions by skipping m4_ifndef. Better yet, if __m4_version__ exists, +# (added in M4 1.6), then let m4 do the job for us (see m4_init). +m4_define([m4_undefine], +[m4_if([$#], [0], [[$0]], + [$#], [1], [m4_ifdef([$1], [_m4_undefine([$1])], + [m4_fatal([$0: undefined macro: $1])])], + [m4_map_args([$0], $@)])]) + +# _m4_wrap(PRE, POST) +# ------------------- +# Helper macro for m4_wrap and m4_wrap_lifo. Allows nested calls to +# m4_wrap within wrapped text. Use _m4_defn and _m4_popdef for speed. +m4_define([_m4_wrap], +[m4_ifdef([$0_text], + [m4_define([$0_text], [$1]_m4_defn([$0_text])[$2])], + [m4_builtin([m4wrap], [m4_unquote( + _m4_defn([$0_text])_m4_popdef([$0_text]))])m4_define([$0_text], [$1$2])])]) + +# m4_wrap(TEXT) +# ------------- +# Append TEXT to the list of hooks to be executed at the end of input. +# Whereas the order of the original may be LIFO in the underlying m4, +# this version is always FIFO. +m4_define([m4_wrap], +[_m4_wrap([], [$1[]])]) + +# m4_wrap_lifo(TEXT) +# ------------------ +# Prepend TEXT to the list of hooks to be executed at the end of input. +# Whereas the order of m4_wrap may be FIFO in the underlying m4, this +# version is always LIFO. +m4_define([m4_wrap_lifo], +[_m4_wrap([$1[]])]) + +## ------------------------- ## +## 7. Quoting manipulation. ## +## ------------------------- ## + + +# m4_apply(MACRO, LIST) +# --------------------- +# Invoke MACRO, with arguments provided from the quoted list of +# comma-separated quoted arguments. If LIST is empty, invoke MACRO +# without arguments. The expansion will not be concatenated with +# subsequent text. +m4_define([m4_apply], +[m4_if([$2], [], [$1], [$1($2)])[]]) + +# _m4_apply(MACRO, LIST) +# ---------------------- +# Like m4_apply, except do nothing if LIST is empty. +m4_define([_m4_apply], +[m4_if([$2], [], [], [$1($2)[]])]) + + +# m4_count(ARGS) +# -------------- +# Return a count of how many ARGS are present. +m4_define([m4_count], [$#]) + + +# m4_curry(MACRO, ARG...) +# ----------------------- +# Perform argument currying. The expansion of this macro is another +# macro that takes exactly one argument, appends it to the end of the +# original ARG list, then invokes MACRO. For example: +# m4_curry([m4_curry], [m4_reverse], [1])([2])([3]) => 3, 2, 1 +# Not quite as practical as m4_incr, but you could also do: +# m4_define([add], [m4_eval(([$1]) + ([$2]))]) +# m4_define([add_one], [m4_curry([add], [1])]) +# add_one()([2]) => 3 +m4_define([m4_curry], [$1(m4_shift($@,)_$0]) +m4_define([_m4_curry], [[$1])]) + + +# m4_do(STRING, ...) +# ------------------ +# This macro invokes all its arguments (in sequence, of course). It is +# useful for making your macros more structured and readable by dropping +# unnecessary dnl's and have the macros indented properly. No concatenation +# occurs after a STRING; use m4_unquote(m4_join(,STRING)) for that. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_do], +[m4_if([$#], 0, [], + [$#], 1, [$1[]], + [$1[]$0(m4_shift($@))])]) + + +# m4_dquote(ARGS) +# --------------- +# Return ARGS as a quoted list of quoted arguments. +m4_define([m4_dquote], [[$@]]) + + +# m4_dquote_elt(ARGS) +# ------------------- +# Return ARGS as an unquoted list of double-quoted arguments. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_dquote_elt], +[m4_if([$#], [0], [], + [$#], [1], [[[$1]]], + [[[$1]],$0(m4_shift($@))])]) + + +# m4_echo(ARGS) +# ------------- +# Return the ARGS, with the same level of quoting. Whitespace after +# unquoted commas are consumed. +m4_define([m4_echo], [$@]) + + +# m4_expand(ARG) +# _m4_expand(ARG) +# --------------- +# Return the expansion of ARG as a single string. Unlike +# m4_quote($1), this preserves whitespace following single-quoted +# commas that appear within ARG. It also deals with shell case +# statements. +# +# m4_define([active], [ACT, IVE]) +# m4_define([active2], [[ACT, IVE]]) +# m4_quote(active, active2) +# => ACT,IVE,ACT, IVE +# m4_expand([active, active2]) +# => ACT, IVE, ACT, IVE +# +# Unfortunately, due to limitations in m4, ARG must expand to +# something with balanced quotes (use quadrigraphs to get around +# this), and should not contain the unlikely delimiters -=<{( or +# )}>=-. It is possible to have unbalanced quoted `(' or `)', as well +# as unbalanced unquoted `)'. m4_expand can handle unterminated +# comments or dnl on the final line, at the expense of speed; it also +# aids in detecting attempts to incorrectly change the current +# diversion inside ARG. Meanwhile, _m4_expand is faster but must be +# given a terminated expansion, and has no safety checks for +# mis-diverted text. +# +# Exploit that extra unquoted () will group unquoted commas and the +# following whitespace. m4_bpatsubst can't handle newlines inside $1, +# and m4_substr strips quoting. So we (ab)use m4_changequote, using +# temporary quotes to remove the delimiters that conveniently included +# the unquoted () that were added prior to the changequote. +# +# Thanks to shell case statements, too many people are prone to pass +# underquoted `)', so we try to detect that by passing a marker as a +# fourth argument; if the marker is not present, then we assume that +# we encountered an early `)', and re-expand the first argument, but +# this time with one more `(' in the second argument and in the +# open-quote delimiter. We must also ignore the slop from the +# previous try. The final macro is thus half line-noise, half art. +m4_define([m4_expand], +[m4_pushdef([m4_divert], _m4_defn([_m4_divert_unsafe]))]dnl +[m4_pushdef([m4_divert_push], _m4_defn([_m4_divert_unsafe]))]dnl +[m4_chomp(_$0([$1 +]))_m4_popdef([m4_divert], [m4_divert_push])]) + +m4_define([_m4_expand], [$0_([$1], [(], -=<{($1)}>=-, [}>=-])]) + +m4_define([_m4_expand_], +[m4_if([$4], [}>=-], + [m4_changequote([-=<{$2], [)}>=-])$3m4_changequote([, ])], + [$0([$1], [($2], -=<{($2$1)}>=-, [}>=-])m4_ignore$2])]) + + +# m4_ignore(ARGS) +# --------------- +# Expands to nothing. Useful for conditionally ignoring an arbitrary +# number of arguments (see _m4_list_cmp for an example). +m4_define([m4_ignore]) + + +# m4_make_list(ARGS) +# ------------------ +# Similar to m4_dquote, this creates a quoted list of quoted ARGS. This +# version is less efficient than m4_dquote, but separates each argument +# with a comma and newline, rather than just comma, for readability. +# When developing an m4sugar algorithm, you could temporarily use +# m4_pushdef([m4_dquote],m4_defn([m4_make_list])) +# around your code to make debugging easier. +m4_define([m4_make_list], [m4_join([, +], m4_dquote_elt($@))]) + + +# m4_noquote(STRING) +# ------------------ +# Return the result of ignoring all quotes in STRING and invoking the +# macros it contains. Among other things, this is useful for enabling +# macro invocations inside strings with [] blocks (for instance regexps +# and help-strings). On the other hand, since all quotes are disabled, +# any macro expanded during this time that relies on nested [] quoting +# will likely crash and burn. This macro is seldom useful; consider +# m4_unquote or m4_expand instead. +m4_define([m4_noquote], +[m4_changequote([-=<{(],[)}>=-])$1-=<{()}>=-m4_changequote([,])]) + + +# m4_quote(ARGS) +# -------------- +# Return ARGS as a single argument. Any whitespace after unquoted commas +# is stripped. There is always output, even when there were no arguments. +# +# It is important to realize the difference between `m4_quote(exp)' and +# `[exp]': in the first case you obtain the quoted *result* of the +# expansion of EXP, while in the latter you just obtain the string +# `exp'. +m4_define([m4_quote], [[$*]]) + + +# _m4_quote(ARGS) +# --------------- +# Like m4_quote, except that when there are no arguments, there is no +# output. For conditional scenarios (such as passing _m4_quote as the +# macro name in m4_mapall), this feature can be used to distinguish between +# one argument of the empty string vs. no arguments. However, in the +# normal case with arguments present, this is less efficient than m4_quote. +m4_define([_m4_quote], +[m4_if([$#], [0], [], [[$*]])]) + + +# m4_reverse(ARGS) +# ---------------- +# Output ARGS in reverse order. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_reverse], +[m4_if([$#], [0], [], [$#], [1], [[$1]], + [$0(m4_shift($@)), [$1]])]) + + +# m4_unquote(ARGS) +# ---------------- +# Remove one layer of quotes from each ARG, performing one level of +# expansion. For one argument, m4_unquote([arg]) is more efficient than +# m4_do([arg]), but for multiple arguments, the difference is that +# m4_unquote separates arguments with commas while m4_do concatenates. +# Follow this macro with [] if concatenation with subsequent text is +# undesired. +m4_define([m4_unquote], [$*]) + + +## -------------------------- ## +## 8. Implementing m4 loops. ## +## -------------------------- ## + + +# m4_for(VARIABLE, FIRST, LAST, [STEP = +/-1], EXPRESSION) +# -------------------------------------------------------- +# Expand EXPRESSION defining VARIABLE to FROM, FROM + 1, ..., TO with +# increments of STEP. Both limits are included, and bounds are +# checked for consistency. The algorithm is robust to indirect +# VARIABLE names. Changing VARIABLE inside EXPRESSION will not impact +# the number of iterations. +# +# Uses _m4_defn for speed, and avoid dnl in the macro body. Factor +# the _m4_for call so that EXPRESSION is only parsed once. +m4_define([m4_for], +[m4_pushdef([$1], m4_eval([$2]))]dnl +[m4_cond([m4_eval(([$3]) > ([$2]))], 1, + [m4_pushdef([_m4_step], m4_eval(m4_default_quoted([$4], + 1)))m4_assert(_m4_step > 0)_$0(_m4_defn([$1]), + m4_eval((([$3]) - ([$2])) / _m4_step * _m4_step + ([$2])), _m4_step,], + [m4_eval(([$3]) < ([$2]))], 1, + [m4_pushdef([_m4_step], m4_eval(m4_default_quoted([$4], + -1)))m4_assert(_m4_step < 0)_$0(_m4_defn([$1]), + m4_eval((([$2]) - ([$3])) / -(_m4_step) * _m4_step + ([$2])), _m4_step,], + [m4_pushdef([_m4_step])_$0(_m4_defn([$1]), _m4_defn([$1]), 0,])]dnl +[[m4_define([$1],], [)$5])m4_popdef([_m4_step], [$1])]) + +# _m4_for(COUNT, LAST, STEP, PRE, POST) +# ------------------------------------- +# Core of the loop, no consistency checks, all arguments are plain +# numbers. Expand PRE[COUNT]POST, then alter COUNT by STEP and +# iterate if COUNT is not LAST. +m4_define([_m4_for], +[$4[$1]$5[]m4_if([$1], [$2], [], + [$0(m4_eval([$1 + $3]), [$2], [$3], [$4], [$5])])]) + + +# Implementing `foreach' loops in m4 is much more tricky than it may +# seem. For example, the old M4 1.4.4 manual had an incorrect example, +# which looked like this (when translated to m4sugar): +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], +# | [m4_pushdef([$1])_foreach([$1], [$2], [$3])m4_popdef([$1])]) +# | m4_define([_arg1], [$1]) +# | m4_define([_foreach], +# | [m4_if([$2], [()], , +# | [m4_define([$1], _arg1$2)$3[]_foreach([$1], (m4_shift$2), [$3])])]) +# +# But then if you run +# +# | m4_define(a, 1) +# | m4_define(b, 2) +# | m4_define(c, 3) +# | foreach([f], [([a], [(b], [c)])], [echo f +# | ]) +# +# it gives +# +# => echo 1 +# => echo (2,3) +# +# which is not what is expected. +# +# Of course the problem is that many quotes are missing. So you add +# plenty of quotes at random places, until you reach the expected +# result. Alternatively, if you are a quoting wizard, you directly +# reach the following implementation (but if you really did, then +# apply to the maintenance of m4sugar!). +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], [m4_pushdef([$1])_foreach($@)m4_popdef([$1])]) +# | m4_define([_arg1], [[$1]]) +# | m4_define([_foreach], +# | [m4_if($2, [()], , +# | [m4_define([$1], [_arg1$2])$3[]_foreach([$1], [(m4_shift$2)], [$3])])]) +# +# which this time answers +# +# => echo a +# => echo (b +# => echo c) +# +# Bingo! +# +# Well, not quite. +# +# With a better look, you realize that the parens are more a pain than +# a help: since anyway you need to quote properly the list, you end up +# with always using an outermost pair of parens and an outermost pair +# of quotes. Rejecting the parens both eases the implementation, and +# simplifies the use: +# +# | # foreach(VAR, (LIST), STMT) +# | m4_define([foreach], [m4_pushdef([$1])_foreach($@)m4_popdef([$1])]) +# | m4_define([_arg1], [$1]) +# | m4_define([_foreach], +# | [m4_if($2, [], , +# | [m4_define([$1], [_arg1($2)])$3[]_foreach([$1], [m4_shift($2)], [$3])])]) +# +# +# Now, just replace the `$2' with `m4_quote($2)' in the outer `m4_if' +# to improve robustness, and you come up with a nice implementation +# that doesn't require extra parentheses in the user's LIST. +# +# But wait - now the algorithm is quadratic, because every recursion of +# the algorithm keeps the entire LIST and merely adds another m4_shift to +# the quoted text. If the user has a lot of elements in LIST, you can +# bring the system to its knees with the memory m4 then requires, or trip +# the m4 --nesting-limit recursion factor. The only way to avoid +# quadratic growth is ensure m4_shift is expanded prior to the recursion. +# Hence the design below. +# +# The M4 manual now includes a chapter devoted to this issue, with +# the lessons learned from m4sugar. And still, this design is only +# optimal for M4 1.6; see foreach.m4 for yet more comments on why +# M4 1.4.x uses yet another implementation. + + +# m4_foreach(VARIABLE, LIST, EXPRESSION) +# -------------------------------------- +# +# Expand EXPRESSION assigning each value of the LIST to VARIABLE. +# LIST should have the form `item_1, item_2, ..., item_n', i.e. the +# whole list must *quoted*. Quote members too if you don't want them +# to be expanded. +# +# This macro is robust to active symbols: +# | m4_define(active, [ACT, IVE]) +# | m4_foreach(Var, [active, active], [-Var-]) +# => -ACT--IVE--ACT--IVE- +# +# | m4_foreach(Var, [[active], [active]], [-Var-]) +# => -ACT, IVE--ACT, IVE- +# +# | m4_foreach(Var, [[[active]], [[active]]], [-Var-]) +# => -active--active- +# +# This macro is called frequently, so avoid extra expansions such as +# m4_ifval and dnl. Also, since $2 might be quite large, try to use it +# as little as possible in _m4_foreach; each extra use requires that much +# more memory for expansion. So, rather than directly compare $2 against +# [] and use m4_car/m4_cdr for recursion, we instead unbox the list (which +# requires swapping the argument order in the helper), insert an ignored +# third argument, and use m4_shift3 to detect when recursion is complete, +# at which point this looks very much like m4_map_args. +m4_define([m4_foreach], +[m4_if([$2], [], [], + [m4_pushdef([$1])_$0([m4_define([$1],], [)$3], [], + $2)m4_popdef([$1])])]) + +# _m4_foreach(PRE, POST, IGNORED, ARG...) +# --------------------------------------- +# Form the common basis of the m4_foreach and m4_map macros. For each +# ARG, expand PRE[ARG]POST[]. The IGNORED argument makes recursion +# easier, and must be supplied rather than implicit. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([_m4_foreach], +[m4_if([$#], [3], [], + [$1[$4]$2[]$0([$1], [$2], m4_shift3($@))])]) + + +# m4_foreach_w(VARIABLE, LIST, EXPRESSION) +# ---------------------------------------- +# Like m4_foreach, but the list is whitespace separated. Depending on +# EXPRESSION, it may be more efficient to use m4_map_args_w. +# +# This macro is robust to active symbols: +# m4_foreach_w([Var], [ active +# b act\ +# ive ], [-Var-])end +# => -active--b--active-end +# +# This used to use a slower implementation based on m4_foreach: +# m4_foreach([$1], m4_split(m4_normalize([$2]), [ ]), [$3]) +m4_define([m4_foreach_w], +[m4_pushdef([$1])m4_map_args_w([$2], + [m4_define([$1],], [)$3])m4_popdef([$1])]) + + +# m4_map(MACRO, LIST) +# m4_mapall(MACRO, LIST) +# ---------------------- +# Invoke MACRO($1), MACRO($2) etc. where $1, $2... are the elements of +# LIST. $1, $2... must in turn be lists, appropriate for m4_apply. +# If LIST contains an empty sublist, m4_map skips the expansion of +# MACRO, while m4_mapall expands MACRO with no arguments. +# +# Since LIST may be quite large, we want to minimize how often it +# appears in the expansion. Rather than use m4_car/m4_cdr iteration, +# we unbox the list, and use _m4_foreach for iteration. For m4_map, +# an empty list behaves like an empty sublist and gets ignored; for +# m4_mapall, we must special-case the empty list. +m4_define([m4_map], +[_m4_foreach([_m4_apply([$1],], [)], [], $2)]) + +m4_define([m4_mapall], +[m4_if([$2], [], [], + [_m4_foreach([m4_apply([$1],], [)], [], $2)])]) + + +# m4_map_sep(MACRO, [SEPARATOR], LIST) +# m4_mapall_sep(MACRO, [SEPARATOR], LIST) +# --------------------------------------- +# Invoke MACRO($1), SEPARATOR, MACRO($2), ..., MACRO($N) where $1, +# $2... $N are the elements of LIST, and are in turn lists appropriate +# for m4_apply. SEPARATOR is expanded, in order to allow the creation +# of a list of arguments by using a single-quoted comma as the +# separator. For each empty sublist, m4_map_sep skips the expansion +# of MACRO and SEPARATOR, while m4_mapall_sep expands MACRO with no +# arguments. +# +# For m4_mapall_sep, merely expand the first iteration without the +# separator, then include separator as part of subsequent recursion; +# but avoid extra expansion of LIST's side-effects via a helper macro. +# For m4_map_sep, things are trickier - we don't know if the first +# list element is an empty sublist, so we must define a self-modifying +# helper macro and use that as the separator instead. +m4_define([m4_map_sep], +[m4_pushdef([m4_Sep], [m4_define([m4_Sep], _m4_defn([m4_unquote]))])]dnl +[_m4_foreach([_m4_apply([m4_Sep([$2])[]$1],], [)], [], $3)m4_popdef([m4_Sep])]) + +m4_define([m4_mapall_sep], +[m4_if([$3], [], [], [_$0([$1], [$2], $3)])]) + +m4_define([_m4_mapall_sep], +[m4_apply([$1], [$3])_m4_foreach([m4_apply([$2[]$1],], [)], m4_shift2($@))]) + +# m4_map_args(EXPRESSION, ARG...) +# ------------------------------- +# Expand EXPRESSION([ARG]) for each argument. More efficient than +# m4_foreach([var], [ARG...], [EXPRESSION(m4_defn([var]))]) +# Shorthand for m4_map_args_sep([EXPRESSION(], [)], [], ARG...). +m4_define([m4_map_args], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [], + [$#], [2], [$1([$2])[]], + [_m4_foreach([$1(], [)], $@)])]) + + +# m4_map_args_pair(EXPRESSION, [END-EXPR = EXPRESSION], ARG...) +# ------------------------------------------------------------- +# Perform a pairwise grouping of consecutive ARGs, by expanding +# EXPRESSION([ARG1], [ARG2]). If there are an odd number of ARGs, the +# final argument is expanded with END-EXPR([ARGn]). +# +# For example: +# m4_define([show], [($*)m4_newline])dnl +# m4_map_args_pair([show], [], [a], [b], [c], [d], [e])dnl +# => (a,b) +# => (c,d) +# => (e) +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_map_args_pair], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [m4_fatal([$0: too few arguments: $#: $1])], + [$#], [2], [], + [$#], [3], [m4_default([$2], [$1])([$3])[]], + [$#], [4], [$1([$3], [$4])[]], + [$1([$3], [$4])[]$0([$1], [$2], m4_shift(m4_shift3($@)))])]) + + +# m4_map_args_sep([PRE], [POST], [SEP], ARG...) +# --------------------------------------------- +# Expand PRE[ARG]POST for each argument, with SEP between arguments. +m4_define([m4_map_args_sep], +[m4_if([$#], [0], [m4_fatal([$0: too few arguments: $#])], + [$#], [1], [], + [$#], [2], [], + [$#], [3], [], + [$#], [4], [$1[$4]$2[]], + [$1[$4]$2[]_m4_foreach([$3[]$1], [$2], m4_shift3($@))])]) + + +# m4_map_args_w(STRING, [PRE], [POST], [SEP]) +# ------------------------------------------- +# Perform the expansion of PRE[word]POST[] for each word in STRING +# separated by whitespace. More efficient than: +# m4_foreach_w([var], [STRING], [PRE[]m4_defn([var])POST]) +# Additionally, expand SEP between words. +# +# As long as we have to use m4_bpatsubst to split the string, we might +# as well make it also apply PRE and POST; this avoids iteration +# altogether. But we must be careful of any \ in PRE or POST. +# _m4_strip returns a quoted string, but that's okay, since it also +# supplies an empty leading and trailing argument due to our +# intentional whitespace around STRING. We use m4_substr to strip the +# empty elements and remove the extra layer of quoting. +m4_define([m4_map_args_w], +[_$0(_m4_split([ ]m4_flatten([$1])[ ], [[ ]+], + m4_if(m4_index([$2$3$4], [\]), [-1], [[$3[]$4[]$2]], + [m4_bpatsubst([[$3[]$4[]$2]], [\\], [\\\\])])), + m4_len([[]$3[]$4]), m4_len([$4[]$2[]]))]) + +m4_define([_m4_map_args_w], +[m4_substr([$1], [$2], m4_eval(m4_len([$1]) - [$2] - [$3]))]) + + +# m4_stack_foreach(MACRO, FUNC) +# m4_stack_foreach_lifo(MACRO, FUNC) +# ---------------------------------- +# Pass each stacked definition of MACRO to the one-argument macro FUNC. +# m4_stack_foreach proceeds in FIFO order, while m4_stack_foreach_lifo +# processes the topmost definitions first. In addition, FUNC should +# not push or pop definitions of MACRO, and should not expect anything about +# the active definition of MACRO (it will not be the topmost, and may not +# be the one passed to FUNC either). +# +# Some macros simply can't be examined with this method: namely, +# anything involved in the implementation of _m4_stack_reverse. +m4_define([m4_stack_foreach], +[_m4_stack_reverse([$1], [m4_tmp-$1])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1], [$2(_m4_defn([m4_tmp-$1]))])]) + +m4_define([m4_stack_foreach_lifo], +[_m4_stack_reverse([$1], [m4_tmp-$1], [$2(_m4_defn([m4_tmp-$1]))])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1])]) + +# m4_stack_foreach_sep(MACRO, [PRE], [POST], [SEP]) +# m4_stack_foreach_sep_lifo(MACRO, [PRE], [POST], [SEP]) +# ------------------------------------------------------ +# Similar to m4_stack_foreach and m4_stack_foreach_lifo, in that every +# definition of a pushdef stack will be visited. But rather than +# passing the definition as a single argument to a macro, this variant +# expands the concatenation of PRE[]definition[]POST, and expands SEP +# between consecutive expansions. Note that m4_stack_foreach([a], [b]) +# is equivalent to m4_stack_foreach_sep([a], [b(], [)]). +m4_define([m4_stack_foreach_sep], +[_m4_stack_reverse([$1], [m4_tmp-$1])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1], [$2[]_m4_defn([m4_tmp-$1])$3], [$4[]])]) + +m4_define([m4_stack_foreach_sep_lifo], +[_m4_stack_reverse([$1], [m4_tmp-$1], [$2[]_m4_defn([m4_tmp-$1])$3], [$4[]])]dnl +[_m4_stack_reverse([m4_tmp-$1], [$1])]) + + +# _m4_stack_reverse(OLD, NEW, [ACTION], [SEP]) +# -------------------------------------------- +# A recursive worker for pushdef stack manipulation. Destructively +# copy the OLD stack into the NEW, and expanding ACTION for each +# iteration. After the first iteration, SEP is promoted to the front +# of ACTION (note that SEP should include a trailing [] if it is to +# avoid interfering with ACTION). The current definition is examined +# after the NEW has been pushed but before OLD has been popped; this +# order is important, as ACTION is permitted to operate on either +# _m4_defn([OLD]) or _m4_defn([NEW]). Since the operation is +# destructive, this macro is generally used twice, with a temporary +# macro name holding the swapped copy. +m4_define([_m4_stack_reverse], +[m4_ifdef([$1], [m4_pushdef([$2], + _m4_defn([$1]))$3[]_m4_popdef([$1])$0([$1], [$2], [$4$3])])]) + + + +## --------------------------- ## +## 9. More diversion support. ## +## --------------------------- ## + + +# m4_cleardivert(DIVERSION-NAME...) +# --------------------------------- +# Discard any text in DIVERSION-NAME. +# +# This works even inside m4_expand. +m4_define([m4_cleardivert], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [_m4_divert_raw([-1])m4_undivert($@)_m4_divert_raw( + _m4_divert(_m4_defn([_m4_divert_diversion]), [-]))])]) + + +# _m4_divert(DIVERSION-NAME or NUMBER, [NOWARN]) +# ---------------------------------------------- +# If DIVERSION-NAME is the name of a diversion, return its number, +# otherwise if it is a NUMBER return it. Issue a warning about +# the use of a number instead of a name, unless NOWARN is provided. +m4_define([_m4_divert], +[m4_ifdef([_m4_divert($1)], + [m4_indir([_m4_divert($1)])], + [m4_if([$2], [], [m4_warn([syntax], + [prefer named diversions])])$1])]) + +# KILL is only used to suppress output. +m4_define([_m4_divert(KILL)], -1) + +# The empty diversion name is a synonym for 0. +m4_define([_m4_divert()], 0) + + +# m4_divert_stack +# --------------- +# Print the diversion stack, if it's nonempty. The caller is +# responsible for any leading or trailing newline. +m4_define([m4_divert_stack], +[m4_stack_foreach_sep_lifo([_m4_divert_stack], [], [], [ +])]) + + +# m4_divert_stack_push(MACRO-NAME, DIVERSION-NAME) +# ------------------------------------------------ +# Form an entry of the diversion stack from caller MACRO-NAME and +# entering DIVERSION-NAME and push it. +m4_define([m4_divert_stack_push], +[m4_pushdef([_m4_divert_stack], m4_location[: $1: $2])]) + + +# m4_divert(DIVERSION-NAME) +# ------------------------- +# Change the diversion stream to DIVERSION-NAME. +m4_define([m4_divert], +[m4_popdef([_m4_divert_stack])]dnl +[m4_define([_m4_divert_diversion], [$1])]dnl +[m4_divert_stack_push([$0], [$1])]dnl +[_m4_divert_raw(_m4_divert([$1]))]) + + +# m4_divert_push(DIVERSION-NAME, [NOWARN]) +# ---------------------------------------- +# Change the diversion stream to DIVERSION-NAME, while stacking old values. +# For internal use only: if NOWARN is not empty, DIVERSION-NAME can be a +# number instead of a name. +m4_define([m4_divert_push], +[m4_divert_stack_push([$0], [$1])]dnl +[m4_pushdef([_m4_divert_diversion], [$1])]dnl +[_m4_divert_raw(_m4_divert([$1], [$2]))]) + + +# m4_divert_pop([DIVERSION-NAME]) +# ------------------------------- +# Change the diversion stream to its previous value, unstacking it. +# If specified, verify we left DIVERSION-NAME. +# When we pop the last value from the stack, we divert to -1. +m4_define([m4_divert_pop], +[m4_if([$1], [], [], + [$1], _m4_defn([_m4_divert_diversion]), [], + [m4_fatal([$0($1): diversion mismatch: +]m4_divert_stack)])]dnl +[_m4_popdef([_m4_divert_stack], [_m4_divert_diversion])]dnl +[m4_ifdef([_m4_divert_diversion], [], + [m4_fatal([too many m4_divert_pop])])]dnl +[_m4_divert_raw(_m4_divert(_m4_defn([_m4_divert_diversion]), [-]))]) + + +# m4_divert_text(DIVERSION-NAME, CONTENT) +# --------------------------------------- +# Output CONTENT into DIVERSION-NAME (which may be a number actually). +# An end of line is appended for free to CONTENT. +m4_define([m4_divert_text], +[m4_divert_push([$1])$2 +m4_divert_pop([$1])]) + + +# m4_divert_once(DIVERSION-NAME, CONTENT) +# --------------------------------------- +# Output CONTENT into DIVERSION-NAME once, if not already there. +# An end of line is appended for free to CONTENT. +m4_define([m4_divert_once], +[m4_expand_once([m4_divert_text([$1], [$2])])]) + + +# _m4_divert_unsafe(DIVERSION-NAME) +# --------------------------------- +# Issue a warning that the attempt to change the current diversion to +# DIVERSION-NAME is unsafe, because this macro is being expanded +# during argument collection of m4_expand. +m4_define([_m4_divert_unsafe], +[m4_fatal([$0: cannot change diversion to `$1' inside m4_expand])]) + + +# m4_undivert(DIVERSION-NAME...) +# ------------------------------ +# Undivert DIVERSION-NAME. Unlike the M4 version, this requires at +# least one DIVERSION-NAME; also, due to support for named diversions, +# this should not be used to undivert files. +m4_define([m4_undivert], +[m4_if([$#], [0], [m4_fatal([$0: missing argument])], + [$#], [1], [_m4_undivert(_m4_divert([$1]))], + [m4_map_args([$0], $@)])]) + + +## --------------------------------------------- ## +## 10. Defining macros with bells and whistles. ## +## --------------------------------------------- ## + +# `m4_defun' is basically `m4_define' but it equips the macro with the +# needed machinery for `m4_require'. A macro must be m4_defun'd if +# either it is m4_require'd, or it m4_require's. +# +# Two things deserve attention and are detailed below: +# 1. Implementation of m4_require +# 2. Keeping track of the expansion stack +# +# 1. Implementation of m4_require +# =============================== +# +# Of course m4_defun calls m4_provide, so that a macro which has +# been expanded is not expanded again when m4_require'd, but the +# difficult part is the proper expansion of macros when they are +# m4_require'd. +# +# The implementation is based on three ideas, (i) using diversions to +# prepare the expansion of the macro and its dependencies (by Franc,ois +# Pinard), (ii) expand the most recently m4_require'd macros _after_ +# the previous macros (by Axel Thimm), and (iii) track instances of +# provide before require (by Eric Blake). +# +# +# The first idea: why use diversions? +# ----------------------------------- +# +# When a macro requires another, the other macro is expanded in new +# diversion, GROW. When the outer macro is fully expanded, we first +# undivert the most nested diversions (GROW - 1...), and finally +# undivert GROW. To understand why we need several diversions, +# consider the following example: +# +# | m4_defun([TEST1], [Test...m4_require([TEST2])1]) +# | m4_defun([TEST2], [Test...m4_require([TEST3])2]) +# | m4_defun([TEST3], [Test...3]) +# +# Because m4_require is not required to be first in the outer macros, we +# must keep the expansions of the various levels of m4_require separated. +# Right before executing the epilogue of TEST1, we have: +# +# GROW - 2: Test...3 +# GROW - 1: Test...2 +# GROW: Test...1 +# BODY: +# +# Finally the epilogue of TEST1 undiverts GROW - 2, GROW - 1, and +# GROW into the regular flow, BODY. +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: Test...3; Test...2; Test...1 +# +# (The semicolons are here for clarification, but of course are not +# emitted.) This is what Autoconf 2.0 (I think) to 2.13 (I'm sure) +# implement. +# +# +# The second idea: first required first out +# ----------------------------------------- +# +# The natural implementation of the idea above is buggy and produces +# very surprising results in some situations. Let's consider the +# following example to explain the bug: +# +# | m4_defun([TEST1], [m4_require([TEST2a])m4_require([TEST2b])]) +# | m4_defun([TEST2a], []) +# | m4_defun([TEST2b], [m4_require([TEST3])]) +# | m4_defun([TEST3], [m4_require([TEST2a])]) +# | +# | AC_INIT +# | TEST1 +# +# The dependencies between the macros are: +# +# 3 --- 2b +# / \ is m4_require'd by +# / \ left -------------------- right +# 2a ------------ 1 +# +# If you strictly apply the rules given in the previous section you get: +# +# GROW - 2: TEST3 +# GROW - 1: TEST2a; TEST2b +# GROW: TEST1 +# BODY: +# +# (TEST2a, although required by TEST3 is not expanded in GROW - 3 +# because is has already been expanded before in GROW - 1, so it has +# been AC_PROVIDE'd, so it is not expanded again) so when you undivert +# the stack of diversions, you get: +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: TEST3; TEST2a; TEST2b; TEST1 +# +# i.e., TEST2a is expanded after TEST3 although the latter required the +# former. +# +# Starting from 2.50, we use an implementation provided by Axel Thimm. +# The idea is simple: the order in which macros are emitted must be the +# same as the one in which macros are expanded. (The bug above can +# indeed be described as: a macro has been m4_provide'd before its +# dependent, but it is emitted after: the lack of correlation between +# emission and expansion order is guilty). +# +# How to do that? You keep the stack of diversions to elaborate the +# macros, but each time a macro is fully expanded, emit it immediately. +# +# In the example above, when TEST2a is expanded, but it's epilogue is +# not run yet, you have: +# +# GROW - 2: +# GROW - 1: TEST2a +# GROW: Elaboration of TEST1 +# BODY: +# +# The epilogue of TEST2a emits it immediately: +# +# GROW - 2: +# GROW - 1: +# GROW: Elaboration of TEST1 +# BODY: TEST2a +# +# TEST2b then requires TEST3, so right before the epilogue of TEST3, you +# have: +# +# GROW - 2: TEST3 +# GROW - 1: Elaboration of TEST2b +# GROW: Elaboration of TEST1 +# BODY: TEST2a +# +# The epilogue of TEST3 emits it: +# +# GROW - 2: +# GROW - 1: Elaboration of TEST2b +# GROW: Elaboration of TEST1 +# BODY: TEST2a; TEST3 +# +# TEST2b is now completely expanded, and emitted: +# +# GROW - 2: +# GROW - 1: +# GROW: Elaboration of TEST1 +# BODY: TEST2a; TEST3; TEST2b +# +# and finally, TEST1 is finished and emitted: +# +# GROW - 2: +# GROW - 1: +# GROW: +# BODY: TEST2a; TEST3; TEST2b: TEST1 +# +# The idea is simple, but the implementation is a bit involved. If +# you are like me, you will want to see the actual functioning of this +# implementation to be convinced. The next section gives the full +# details. +# +# +# The Axel Thimm implementation at work +# ------------------------------------- +# +# We consider the macros above, and this configure.ac: +# +# AC_INIT +# TEST1 +# +# You should keep the definitions of _m4_defun_pro, _m4_defun_epi, and +# m4_require at hand to follow the steps. +# +# This implementation tries not to assume that the current diversion is +# BODY, so as soon as a macro (m4_defun'd) is expanded, we first +# record the current diversion under the name _m4_divert_dump (denoted +# DUMP below for short). This introduces an important difference with +# the previous versions of Autoconf: you cannot use m4_require if you +# are not inside an m4_defun'd macro, and especially, you cannot +# m4_require directly from the top level. +# +# We have not tried to simulate the old behavior (better yet, we +# diagnose it), because it is too dangerous: a macro m4_require'd from +# the top level is expanded before the body of `configure', i.e., before +# any other test was run. I let you imagine the result of requiring +# AC_STDC_HEADERS for instance, before AC_PROG_CC was actually run.... +# +# After AC_INIT was run, the current diversion is BODY. +# * AC_INIT was run +# DUMP: undefined +# diversion stack: BODY |- +# +# * TEST1 is expanded +# The prologue of TEST1 sets _m4_divert_dump, which is the diversion +# where the current elaboration will be dumped, to the current +# diversion. It also m4_divert_push to GROW, where the full +# expansion of TEST1 and its dependencies will be elaborated. +# DUMP: BODY +# BODY: empty +# diversions: GROW, BODY |- +# +# * TEST1 requires TEST2a +# _m4_require_call m4_divert_pushes another temporary diversion, +# GROW - 1, and expands TEST2a in there. +# DUMP: BODY +# BODY: empty +# GROW - 1: TEST2a +# diversions: GROW - 1, GROW, BODY |- +# Then the content of the temporary diversion is moved to DUMP and the +# temporary diversion is popped. +# DUMP: BODY +# BODY: TEST2a +# diversions: GROW, BODY |- +# +# * TEST1 requires TEST2b +# Again, _m4_require_call pushes GROW - 1 and heads to expand TEST2b. +# DUMP: BODY +# BODY: TEST2a +# diversions: GROW - 1, GROW, BODY |- +# +# * TEST2b requires TEST3 +# _m4_require_call pushes GROW - 2 and expands TEST3 here. +# (TEST3 requires TEST2a, but TEST2a has already been m4_provide'd, so +# nothing happens.) +# DUMP: BODY +# BODY: TEST2a +# GROW - 2: TEST3 +# diversions: GROW - 2, GROW - 1, GROW, BODY |- +# Then the diversion is appended to DUMP, and popped. +# DUMP: BODY +# BODY: TEST2a; TEST3 +# diversions: GROW - 1, GROW, BODY |- +# +# * TEST1 requires TEST2b (contd.) +# The content of TEST2b is expanded... +# DUMP: BODY +# BODY: TEST2a; TEST3 +# GROW - 1: TEST2b, +# diversions: GROW - 1, GROW, BODY |- +# ... and moved to DUMP. +# DUMP: BODY +# BODY: TEST2a; TEST3; TEST2b +# diversions: GROW, BODY |- +# +# * TEST1 is expanded: epilogue +# TEST1's own content is in GROW... +# DUMP: BODY +# BODY: TEST2a; TEST3; TEST2b +# GROW: TEST1 +# diversions: BODY |- +# ... and it's epilogue moves it to DUMP and then undefines DUMP. +# DUMP: undefined +# BODY: TEST2a; TEST3; TEST2b; TEST1 +# diversions: BODY |- +# +# +# The third idea: track macros provided before they were required +# --------------------------------------------------------------- +# +# Using just the first two ideas, Autoconf 2.50 through 2.63 still had +# a subtle bug for more than seven years. Let's consider the +# following example to explain the bug: +# +# | m4_defun([TEST1], [1]) +# | m4_defun([TEST2], [2[]m4_require([TEST1])]) +# | m4_defun([TEST3], [3 TEST1 m4_require([TEST2])]) +# | TEST3 +# +# After the prologue of TEST3, we are collecting text in GROW with the +# intent of dumping it in BODY during the epilogue. Next, we +# encounter the direct invocation of TEST1, which provides the macro +# in place in GROW. From there, we encounter a requirement for TEST2, +# which must be collected in a new diversion. While expanding TEST2, +# we encounter a requirement for TEST1, but since it has already been +# expanded, the Axel Thimm algorithm states that we can treat it as a +# no-op. But that would lead to an end result of `2 3 1', meaning +# that we have once again output a macro (TEST2) prior to its +# requirements (TEST1). +# +# The problem can only occur if a single defun'd macro first provides, +# then later indirectly requires, the same macro. Note that directly +# expanding then requiring a macro is okay: because the dependency was +# met, the require phase can be a no-op. For that matter, the outer +# macro can even require two helpers, where the first helper expands +# the macro, and the second helper indirectly requires the macro. +# Out-of-order expansion is only present if the inner macro is +# required by something that will be hoisted in front of where the +# direct expansion occurred. In other words, we must be careful not +# to warn on: +# +# | m4_defun([TEST4], [4]) +# | m4_defun([TEST5], [5 TEST4 m4_require([TEST4])]) +# | TEST5 => 5 4 +# +# or even the more complex: +# +# | m4_defun([TEST6], [6]) +# | m4_defun([TEST7], [7 TEST6]) +# | m4_defun([TEST8], [8 m4_require([TEST6])]) +# | m4_defun([TEST9], [9 m4_require([TEST8])]) +# | m4_defun([TEST10], [10 m4_require([TEST7]) m4_require([TEST9])]) +# | TEST10 => 7 6 8 9 10 +# +# So, to detect whether a require was direct or indirect, m4_defun and +# m4_require track the name of the macro that caused a diversion to be +# created (using the stack _m4_diverting, coupled with an O(1) lookup +# _m4_diverting([NAME])), and m4_provide stores the name associated +# with the diversion at which a macro was provided. A require call is +# direct if it occurs within the same diversion where the macro was +# provided, or if the diversion associated with the providing context +# has been collected. +# +# The implementation of the warning involves tracking the set of +# macros which have been provided since the start of the outermost +# defun'd macro (the set is named _m4_provide). When starting an +# outermost macro, the set is emptied; when a macro is provided, it is +# added to the set; when require expands the body of a macro, it is +# removed from the set; and when a macro is indirectly required, the +# set is checked. If a macro is in the set, then it has been provided +# before it was required, and we satisfy dependencies by expanding the +# macro as if it had never been provided; in the example given above, +# this means we now output `1 2 3 1'. Meanwhile, a warning is issued +# to inform the user that her macros trigger the bug in older autoconf +# versions, and that her output file now contains redundant contents +# (and possibly new problems, if the repeated macro was not +# idempotent). Meanwhile, macros defined by m4_defun_once instead of +# m4_defun are idempotent, avoiding any warning or duplicate output. +# +# +# 2. Keeping track of the expansion stack +# ======================================= +# +# When M4 expansion goes wrong it is often extremely hard to find the +# path amongst macros that drove to the failure. What is needed is +# the stack of macro `calls'. One could imagine that GNU M4 would +# maintain a stack of macro expansions, unfortunately it doesn't, so +# we do it by hand. This is of course extremely costly, but the help +# this stack provides is worth it. Nevertheless to limit the +# performance penalty this is implemented only for m4_defun'd macros, +# not for define'd macros. +# +# Each time we enter an m4_defun'd macros, we add a definition in +# _m4_expansion_stack, and when we exit the macro, we remove it (thanks +# to pushdef/popdef). m4_stack_foreach is used to print the expansion +# stack in the rare cases when it's needed. +# +# In addition, we want to detect circular m4_require dependencies. +# Each time we expand a macro FOO we define _m4_expanding(FOO); and +# m4_require(BAR) simply checks whether _m4_expanding(BAR) is defined. + + +# m4_expansion_stack +# ------------------ +# Expands to the entire contents of the expansion stack. The caller +# must supply a trailing newline. This macro always prints a +# location; check whether _m4_expansion_stack is defined to filter out +# the case when no defun'd macro is in force. +m4_define([m4_expansion_stack], +[m4_stack_foreach_sep_lifo([_$0], [_$0_entry(], [) +])m4_location[: the top level]]) + +# _m4_expansion_stack_entry(MACRO) +# -------------------------------- +# Format an entry for MACRO found on the expansion stack. +m4_define([_m4_expansion_stack_entry], +[_m4_defn([m4_location($1)])[: $1 is expanded from...]]) + +# m4_expansion_stack_push(MACRO) +# ------------------------------ +# Form an entry of the expansion stack on entry to MACRO and push it. +m4_define([m4_expansion_stack_push], +[m4_pushdef([_m4_expansion_stack], [$1])]) + + +# _m4_divert(GROW) +# ---------------- +# This diversion is used by the m4_defun/m4_require machinery. It is +# important to keep room before GROW because for each nested +# AC_REQUIRE we use an additional diversion (i.e., two m4_require's +# will use GROW - 2. More than 3 levels has never seemed to be +# needed.) +# +# ... +# - GROW - 2 +# m4_require'd code, 2 level deep +# - GROW - 1 +# m4_require'd code, 1 level deep +# - GROW +# m4_defun'd macros are elaborated here. + +m4_define([_m4_divert(GROW)], 10000) + + +# _m4_defun_pro(MACRO-NAME) +# ------------------------- +# The prologue for Autoconf macros. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and m4_defn overhead. +m4_define([_m4_defun_pro], +[m4_ifdef([_m4_expansion_stack], [], [_m4_defun_pro_outer([$1])])]dnl +[m4_expansion_stack_push([$1])m4_pushdef([_m4_expanding($1)])]) + +m4_define([_m4_defun_pro_outer], +[m4_set_delete([_m4_provide])]dnl +[m4_pushdef([_m4_diverting([$1])])m4_pushdef([_m4_diverting], [$1])]dnl +[m4_pushdef([_m4_divert_dump], m4_divnum)m4_divert_push([GROW])]) + +# _m4_defun_epi(MACRO-NAME) +# ------------------------- +# The Epilogue for Autoconf macros. MACRO-NAME only helps tracing +# the PRO/EPI pairs. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and m4_popdef overhead. +m4_define([_m4_defun_epi], +[_m4_popdef([_m4_expanding($1)], [_m4_expansion_stack])]dnl +[m4_ifdef([_m4_expansion_stack], [], [_m4_defun_epi_outer([$1])])]dnl +[m4_provide([$1])]) + +m4_define([_m4_defun_epi_outer], +[_m4_popdef([_m4_divert_dump], [_m4_diverting([$1])], [_m4_diverting])]dnl +[m4_divert_pop([GROW])m4_undivert([GROW])]) + + +# _m4_divert_dump +# --------------- +# If blank, we are outside of any defun'd macro. Otherwise, expands +# to the diversion number (not name) where require'd macros should be +# moved once completed. +m4_define([_m4_divert_dump]) + + +# m4_divert_require(DIVERSION, NAME-TO-CHECK, [BODY-TO-EXPAND]) +# ------------------------------------------------------------- +# Same as m4_require, but BODY-TO-EXPAND goes into the named DIVERSION; +# requirements still go in the current diversion though. +# +m4_define([m4_divert_require], +[m4_ifdef([_m4_expanding($2)], + [m4_fatal([$0: circular dependency of $2])])]dnl +[m4_if(_m4_divert_dump, [], + [m4_fatal([$0($2): cannot be used outside of an m4_defun'd macro])])]dnl +[m4_provide_if([$2], [], + [_m4_require_call([$2], [$3], _m4_divert([$1], [-]))])]) + + +# m4_defun(NAME, EXPANSION, [MACRO = m4_define]) +# ---------------------------------------------- +# Define a macro NAME which automatically provides itself. Add +# machinery so the macro automatically switches expansion to the +# diversion stack if it is not already using it, prior to EXPANSION. +# In this case, once finished, it will bring back all the code +# accumulated in the diversion stack. This, combined with m4_require, +# achieves the topological ordering of macros. We don't use this +# macro to define some frequently called macros that are not involved +# in ordering constraints, to save m4 processing. +# +# MACRO is an undocumented argument; when set to m4_pushdef, and NAME +# is already defined, the new definition is added to the pushdef +# stack, rather than overwriting the current definition. It can thus +# be used to write self-modifying macros, which pop themselves to a +# previously m4_define'd definition so that subsequent use of the +# macro is faster. +m4_define([m4_defun], +[m4_define([m4_location($1)], m4_location)]dnl +[m4_default([$3], [m4_define])([$1], + [_m4_defun_pro(]m4_dquote($[0])[)$2[]_m4_defun_epi(]m4_dquote($[0])[)])]) + + +# m4_defun_init(NAME, INIT, COMMON) +# --------------------------------- +# Like m4_defun, but split EXPANSION into two portions: INIT which is +# done only the first time NAME is invoked, and COMMON which is +# expanded every time. +# +# For now, the COMMON definition is always m4_define'd, giving an even +# lighter-weight definition. m4_defun allows self-providing, but once +# a macro is provided, m4_require no longer cares if it is m4_define'd +# or m4_defun'd. m4_defun also provides location tracking to identify +# dependency bugs, but once the INIT has been expanded, we know there +# are no dependency bugs. However, if a future use needs COMMON to be +# m4_defun'd, we can add a parameter, similar to the third parameter +# to m4_defun. +m4_define([m4_defun_init], +[m4_define([$1], [$3[]])m4_defun([$1], + [$2[]_m4_popdef(]m4_dquote($[0])[)m4_indir(]m4_dquote($[0])dnl +[m4_if(]m4_dquote($[#])[, [0], [], ]m4_dquote([,$]@)[))], [m4_pushdef])]) + + +# m4_defun_once(NAME, EXPANSION) +# ------------------------------ +# Like m4_defun, but guarantee that EXPANSION only happens once +# (thereafter, using NAME is a no-op). +# +# If _m4_divert_dump is empty, we are called at the top level; +# otherwise, we must ensure that we are required in front of the +# current defun'd macro. Use a helper macro so that EXPANSION need +# only occur once in the definition of NAME, since it might be large. +m4_define([m4_defun_once], +[m4_define([m4_location($1)], m4_location)]dnl +[m4_define([$1], [_m4_defun_once([$1], [$2], m4_if(_m4_divert_dump, [], + [[_m4_defun_pro([$1])m4_unquote(], [)_m4_defun_epi([$1])]], +m4_ifdef([_m4_diverting([$1])], [-]), [-], [[m4_unquote(], [)]], + [[_m4_require_call([$1],], [, _m4_divert_dump)]]))])]) + +m4_define([_m4_defun_once], +[m4_pushdef([$1])$3[$2[]m4_provide([$1])]$4]) + + +# m4_pattern_forbid(ERE, [WHY]) +# ----------------------------- +# Declare that no token matching the forbidden perl extended regular +# expression ERE should be seen in the output unless... +m4_define([m4_pattern_forbid], []) + + +# m4_pattern_allow(ERE) +# --------------------- +# ... that token also matches the allowed extended regular expression ERE. +# Both used via traces, by autom4te post-processing. +m4_define([m4_pattern_allow], []) + + +## --------------------------------- ## +## 11. Dependencies between macros. ## +## --------------------------------- ## + + +# m4_before(THIS-MACRO-NAME, CALLED-MACRO-NAME) +# --------------------------------------------- +# Issue a warning if CALLED-MACRO-NAME was called before THIS-MACRO-NAME. +m4_define([m4_before], +[m4_provide_if([$2], + [m4_warn([syntax], [$2 was called before $1])])]) + + +# m4_require(NAME-TO-CHECK, [BODY-TO-EXPAND = NAME-TO-CHECK]) +# ----------------------------------------------------------- +# If NAME-TO-CHECK has never been expanded (actually, if it is not +# m4_provide'd), expand BODY-TO-EXPAND *before* the current macro +# expansion; follow the expansion with a newline. Once expanded, emit +# it in _m4_divert_dump. Keep track of the m4_require chain in +# _m4_expansion_stack. +# +# The normal cases are: +# +# - NAME-TO-CHECK == BODY-TO-EXPAND +# Which you can use for regular macros with or without arguments, e.g., +# m4_require([AC_PROG_CC], [AC_PROG_CC]) +# m4_require([AC_CHECK_HEADERS(threads.h)], [AC_CHECK_HEADERS(threads.h)]) +# which is just the same as +# m4_require([AC_PROG_CC]) +# m4_require([AC_CHECK_HEADERS(threads.h)]) +# +# - BODY-TO-EXPAND == m4_indir([NAME-TO-CHECK]) +# In the case of macros with irregular names. For instance: +# m4_require([AC_LANG_COMPILER(C)], [indir([AC_LANG_COMPILER(C)])]) +# which means `if the macro named `AC_LANG_COMPILER(C)' (the parens are +# part of the name, it is not an argument) has not been run, then +# call it.' +# Had you used +# m4_require([AC_LANG_COMPILER(C)], [AC_LANG_COMPILER(C)]) +# then m4_require would have tried to expand `AC_LANG_COMPILER(C)', i.e., +# call the macro `AC_LANG_COMPILER' with `C' as argument. +# +# You could argue that `AC_LANG_COMPILER', when it receives an argument +# such as `C' should dispatch the call to `AC_LANG_COMPILER(C)'. But this +# `extension' prevents `AC_LANG_COMPILER' from having actual arguments that +# it passes to `AC_LANG_COMPILER(C)'. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and other overhead on the common path. +m4_define([m4_require], +[m4_ifdef([_m4_expanding($1)], + [m4_fatal([$0: circular dependency of $1])])]dnl +[m4_if(_m4_divert_dump, [], + [m4_fatal([$0($1): cannot be used outside of an ]dnl +m4_if([$0], [m4_require], [[m4_defun]], [[AC_DEFUN]])['d macro])])]dnl +[m4_provide_if([$1], [m4_set_contains([_m4_provide], [$1], + [_m4_require_check([$1], _m4_defn([m4_provide($1)]), [$0])], [m4_ignore])], + [_m4_require_call])([$1], [$2], _m4_divert_dump)]) + + +# _m4_require_call(NAME-TO-CHECK, [BODY-TO-EXPAND = NAME-TO-CHECK], +# DIVERSION-NUMBER) +# ----------------------------------------------------------------- +# If m4_require decides to expand the body, it calls this macro. The +# expansion is placed in DIVERSION-NUMBER. +# +# This is called frequently, so minimize the number of macro invocations +# by avoiding dnl and other overhead on the common path. +# The use of a witness macro protecting the warning allows aclocal +# to silence any warnings when probing for what macros are required +# and must therefore be located, when using the Autoconf-without-aclocal-m4 +# autom4te language. For more background, see: +# https://lists.gnu.org/archive/html/automake-patches/2012-11/msg00035.html +m4_define([_m4_require_call], +[m4_pushdef([_m4_divert_grow], m4_decr(_m4_divert_grow))]dnl +[m4_pushdef([_m4_diverting([$1])])m4_pushdef([_m4_diverting], [$1])]dnl +[m4_divert_push(_m4_divert_grow, [-])]dnl +[m4_if([$2], [], [$1], [$2]) +m4_provide_if([$1], [m4_set_remove([_m4_provide], [$1])], + [m4_ifndef([m4_require_silent_probe], + [m4_warn([syntax], [$1 is m4_require'd but not m4_defun'd])])])]dnl +[_m4_divert_raw($3)_m4_undivert(_m4_divert_grow)]dnl +[m4_divert_pop(_m4_divert_grow)_m4_popdef([_m4_divert_grow], +[_m4_diverting([$1])], [_m4_diverting])]) + + +# _m4_require_check(NAME-TO-CHECK, OWNER, CALLER) +# ----------------------------------------------- +# NAME-TO-CHECK has been identified as previously expanded in the +# diversion owned by OWNER. If this is a problem, warn on behalf of +# CALLER and return _m4_require_call; otherwise return m4_ignore. +m4_define([_m4_require_check], +[m4_if(_m4_defn([_m4_diverting]), [$2], [m4_ignore], + m4_ifdef([_m4_diverting([$2])], [-]), [-], [m4_warn([syntax], + [$3: `$1' was expanded before it was required +https://www.gnu.org/software/autoconf/manual/autoconf.html#Expanded-Before-Required])_m4_require_call], + [m4_ignore])]) + + +# _m4_divert_grow +# --------------- +# The counter for _m4_require_call. +m4_define([_m4_divert_grow], _m4_divert([GROW])) + + +# m4_expand_once(TEXT, [WITNESS = TEXT]) +# -------------------------------------- +# If TEXT has never been expanded, expand it *here*. Use WITNESS as +# as a memory that TEXT has already been expanded. +m4_define([m4_expand_once], +[m4_provide_if(m4_default_quoted([$2], [$1]), + [], + [m4_provide(m4_default_quoted([$2], [$1]))[]$1])]) + + +# m4_provide(MACRO-NAME) +# ---------------------- +m4_define([m4_provide], +[m4_ifdef([m4_provide($1)], [], +[m4_set_add([_m4_provide], [$1], [m4_define([m4_provide($1)], + m4_ifdef([_m4_diverting], [_m4_defn([_m4_diverting])]))])])]) + + +# m4_provide_if(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) +# ------------------------------------------------------- +# If MACRO-NAME is provided do IF-PROVIDED, else IF-NOT-PROVIDED. +# The purpose of this macro is to provide the user with a means to +# check macros which are provided without letting her know how the +# information is coded. +m4_define([m4_provide_if], +[m4_ifdef([m4_provide($1)], + [$2], [$3])]) + + +## --------------------- ## +## 12. Text processing. ## +## --------------------- ## + + +# m4_cr_letters +# m4_cr_LETTERS +# m4_cr_Letters +# ------------- +m4_define([m4_cr_letters], [abcdefghijklmnopqrstuvwxyz]) +m4_define([m4_cr_LETTERS], [ABCDEFGHIJKLMNOPQRSTUVWXYZ]) +m4_define([m4_cr_Letters], +m4_defn([m4_cr_letters])dnl +m4_defn([m4_cr_LETTERS])dnl +) + + +# m4_cr_digits +# ------------ +m4_define([m4_cr_digits], [0123456789]) + + +# m4_cr_alnum +# ----------- +m4_define([m4_cr_alnum], +m4_defn([m4_cr_Letters])dnl +m4_defn([m4_cr_digits])dnl +) + + +# m4_cr_symbols1 +# m4_cr_symbols2 +# -------------- +m4_define([m4_cr_symbols1], +m4_defn([m4_cr_Letters])dnl +_) + +m4_define([m4_cr_symbols2], +m4_defn([m4_cr_symbols1])dnl +m4_defn([m4_cr_digits])dnl +) + +# m4_cr_all +# --------- +# The character range representing everything, with `-' as the last +# character, since it is special to m4_translit. Use with care, because +# it contains characters special to M4 (fortunately, both ASCII and EBCDIC +# have [] in order, so m4_defn([m4_cr_all]) remains a valid string). It +# also contains characters special to terminals, so it should never be +# displayed in an error message. Also, attempts to map [ and ] to other +# characters via m4_translit must deal with the fact that m4_translit does +# not add quotes to the output. +# +# In EBCDIC, $ is immediately followed by *, which leads to problems +# if m4_cr_all is inlined into a macro definition; so swap them. +# +# It is mainly useful in generating inverted character range maps, for use +# in places where m4_translit is faster than an equivalent m4_bpatsubst; +# the regex `[^a-z]' is equivalent to: +# m4_translit(m4_dquote(m4_defn([m4_cr_all])), [a-z]) +m4_define([m4_cr_all], +m4_translit(m4_dquote(m4_format(m4_dquote(m4_for( + ,1,255,,[[%c]]))m4_for([i],1,255,,[,i]))), [$*-], [*$])-) + + +# _m4_define_cr_not(CATEGORY) +# --------------------------- +# Define m4_cr_not_CATEGORY as the inverse of m4_cr_CATEGORY. +m4_define([_m4_define_cr_not], +[m4_define([m4_cr_not_$1], + m4_translit(m4_dquote(m4_defn([m4_cr_all])), + m4_defn([m4_cr_$1])))]) + + +# m4_cr_not_letters +# m4_cr_not_LETTERS +# m4_cr_not_Letters +# m4_cr_not_digits +# m4_cr_not_alnum +# m4_cr_not_symbols1 +# m4_cr_not_symbols2 +# ------------------ +# Inverse character sets +_m4_define_cr_not([letters]) +_m4_define_cr_not([LETTERS]) +_m4_define_cr_not([Letters]) +_m4_define_cr_not([digits]) +_m4_define_cr_not([alnum]) +_m4_define_cr_not([symbols1]) +_m4_define_cr_not([symbols2]) + + +# m4_newline([STRING]) +# -------------------- +# Expands to a newline, possibly followed by STRING. Exists mostly for +# formatting reasons. +m4_define([m4_newline], [ +$1]) + + +# m4_re_escape(STRING) +# -------------------- +# Escape RE active characters in STRING. +m4_define([m4_re_escape], +[m4_bpatsubst([$1], + [[][*+.?\^$]], [\\\&])]) + + +# m4_re_string +# ------------ +# Regexp for `[a-zA-Z_0-9]*' +# m4_dquote provides literal [] for the character class. +m4_define([m4_re_string], +m4_dquote(m4_defn([m4_cr_symbols2]))dnl +[*]dnl +) + + +# m4_re_word +# ---------- +# Regexp for `[a-zA-Z_][a-zA-Z_0-9]*' +m4_define([m4_re_word], +m4_dquote(m4_defn([m4_cr_symbols1]))dnl +m4_defn([m4_re_string])dnl +) + + +# m4_tolower(STRING) +# m4_toupper(STRING) +# ------------------ +# These macros convert STRING to lowercase or uppercase. +# +# Rather than expand the m4_defn each time, we inline them up front. +m4_define([m4_tolower], +[m4_translit([[$1]], ]m4_dquote(m4_defn([m4_cr_LETTERS]))[, + ]m4_dquote(m4_defn([m4_cr_letters]))[)]) +m4_define([m4_toupper], +[m4_translit([[$1]], ]m4_dquote(m4_defn([m4_cr_letters]))[, + ]m4_dquote(m4_defn([m4_cr_LETTERS]))[)]) + + +# m4_split(STRING, [REGEXP]) +# -------------------------- +# Split STRING into an m4 list of quoted elements. The elements are +# quoted with [ and ]. Beginning spaces and end spaces *are kept*. +# Use m4_strip to remove them. +# +# REGEXP specifies where to split. Default is [\t ]+. +# +# If STRING is empty, the result is an empty list. +# +# Pay attention to the m4_changequotes. When m4 reads the definition of +# m4_split, it still has quotes set to [ and ]. Luckily, these are matched +# in the macro body, so the definition is stored correctly. Use the same +# alternate quotes as m4_noquote; it must be unlikely to appear in $1. +# +# Also, notice that $1 is quoted twice, since we want the result to +# be quoted. Then you should understand that the argument of +# patsubst is -=<{(STRING)}>=- (i.e., with additional -=<{( and )}>=-). +# +# This macro is safe on active symbols, i.e.: +# m4_define(active, ACTIVE) +# m4_split([active active ])end +# => [active], [active], []end +# +# Optimize on regex of ` ' (space), since m4_foreach_w already guarantees +# that the list contains single space separators, and a common case is +# splitting a single-element list. This macro is called frequently, +# so avoid unnecessary dnl inside the definition. +m4_define([m4_split], +[m4_if([$1], [], [], + [$2], [ ], [m4_if(m4_index([$1], [ ]), [-1], [[[$1]]], + [_$0([$1], [$2], [, ])])], + [$2], [], [_$0([$1], [[ ]+], [, ])], + [_$0([$1], [$2], [, ])])]) + +m4_define([_m4_split], +[m4_changequote([-=<{(],[)}>=-])]dnl +[[m4_bpatsubst(-=<{(-=<{($1)}>=-)}>=-, -=<{($2)}>=-, + -=<{(]$3[)}>=-)]m4_changequote([, ])]) + + +# m4_chomp(STRING) +# m4_chomp_all(STRING) +# -------------------- +# Return STRING quoted, but without a trailing newline. m4_chomp +# removes at most one newline, while m4_chomp_all removes all +# consecutive trailing newlines. Embedded newlines are not touched, +# and a trailing backslash-newline leaves just a trailing backslash. +# +# m4_bregexp is slower than m4_index, and we don't always want to +# remove all newlines; hence the two variants. We massage characters +# to give a nicer pattern to match, particularly since m4_bregexp is +# line-oriented. Both versions must guarantee a match, to avoid bugs +# with precision -1 in m4_format in older m4. +m4_define([m4_chomp], +[m4_format([[%.*s]], m4_index(m4_translit([[$1]], [ +/.], [/ ])[./.], [/.]), [$1])]) + +m4_define([m4_chomp_all], +[m4_format([[%.*s]], m4_bregexp(m4_translit([[$1]], [ +/], [/ ]), [/*$]), [$1])]) + + +# m4_flatten(STRING) +# ------------------ +# If STRING contains end of lines, replace them with spaces. If there +# are backslashed end of lines, remove them. This macro is safe with +# active symbols. +# m4_define(active, ACTIVE) +# m4_flatten([active +# act\ +# ive])end +# => active activeend +# +# In m4, m4_bpatsubst is expensive, so first check for a newline. +m4_define([m4_flatten], +[m4_if(m4_index([$1], [ +]), [-1], [[$1]], + [m4_translit(m4_bpatsubst([[[$1]]], [\\ +]), [ +], [ ])])]) + + +# m4_strip(STRING) +# ---------------- +# Expands into STRING with tabs and spaces singled out into a single +# space, and removing leading and trailing spaces. +# +# This macro is robust to active symbols. +# m4_define(active, ACTIVE) +# m4_strip([ active active ])end +# => active activeend +# +# First, notice that we guarantee trailing space. Why? Because regular +# expressions are greedy, and `.* ?' would always group the space into the +# .* portion. The algorithm is simpler by avoiding `?' at the end. The +# algorithm correctly strips everything if STRING is just ` '. +# +# Then notice the second pattern: it is in charge of removing the +# leading/trailing spaces. Why not just `[^ ]'? Because they are +# applied to over-quoted strings, i.e. more or less [STRING], due +# to the limitations of m4_bpatsubsts. So the leading space in STRING +# is the *second* character; equally for the trailing space. +m4_define([m4_strip], +[m4_bpatsubsts([$1 ], + [[ ]+], [ ], + [^. ?\(.*\) .$], [[[\1]]])]) + + +# m4_normalize(STRING) +# -------------------- +# Apply m4_flatten and m4_strip to STRING. +# +# The argument is quoted, so that the macro is robust to active symbols: +# +# m4_define(active, ACTIVE) +# m4_normalize([ act\ +# ive +# active ])end +# => active activeend + +m4_define([m4_normalize], +[m4_strip(m4_flatten([$1]))]) + + +# m4_validate_w(STRING) +# --------------------- +# Expands into m4_normalize(m4_expand([STRING])), but if that is not +# the same as just m4_normalize([STRING]), issue a warning. +# +# This is used in several Autoconf macros that take a +# whitespace-separated list of symbols as an argument. Ideally that +# list would not be expanded before use, but several packages used +# `dnl' to put comments inside those lists, so they must be expanded +# for compatibility's sake. +m4_define([m4_validate_w], +[_m4_validate_w(m4_normalize([$1]), m4_normalize(m4_expand([$1])))]) + +m4_define([_m4_validate_w], +[m4_if([$1], [$2], [], + [m4_warn([obsolete], [whitespace-separated list contains macros; +in a future version of Autoconf they will not be expanded]dnl +m4_if(m4_bregexp([$1], [\bdn[l]\b]), -1, [], [ +note: `dn@&t@l' is a macro]))])dnl +[$2]]) + + +# m4_join(SEP, ARG1, ARG2...) +# --------------------------- +# Produce ARG1SEPARG2...SEPARGn. Avoid back-to-back SEP when a given ARG +# is the empty string. No expansion is performed on SEP or ARGs. +# +# Since the number of arguments to join can be arbitrarily long, we +# want to avoid having more than one $@ in the macro definition; +# otherwise, the expansion would require twice the memory of the already +# long list. Hence, m4_join merely looks for the first non-empty element, +# and outputs just that element; while _m4_join looks for all non-empty +# elements, and outputs them following a separator. The final trick to +# note is that we decide between recursing with $0 or _$0 based on the +# nested m4_if ending with `_'. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_join], +[m4_if([$#], [1], [], + [$#], [2], [[$2]], + [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift2($@))])]) +m4_define([_m4_join], +[m4_if([$#$2], [2], [], + [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift2($@))])]) + +# m4_joinall(SEP, ARG1, ARG2...) +# ------------------------------ +# Produce ARG1SEPARG2...SEPARGn. An empty ARG results in back-to-back SEP. +# No expansion is performed on SEP or ARGs. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_joinall], [[$2]_$0([$1], m4_shift($@))]) +m4_define([_m4_joinall], +[m4_if([$#], [2], [], [[$1$3]$0([$1], m4_shift2($@))])]) + +# m4_combine([SEPARATOR], PREFIX-LIST, [INFIX], SUFFIX...) +# -------------------------------------------------------- +# Produce the pairwise combination of every element in the quoted, +# comma-separated PREFIX-LIST with every element from the SUFFIX arguments. +# Each pair is joined with INFIX, and pairs are separated by SEPARATOR. +# No expansion occurs on SEPARATOR, INFIX, or elements of either list. +# +# For example: +# m4_combine([, ], [[a], [b], [c]], [-], [1], [2], [3]) +# => a-1, a-2, a-3, b-1, b-2, b-3, c-1, c-2, c-3 +# +# This definition is a bit hairy; the thing to realize is that we want +# to construct m4_map_args_sep([[prefix$3]], [], [[$1]], m4_shift3($@)) +# as the inner loop, using each prefix generated by the outer loop, +# and without recalculating m4_shift3 every outer iteration. +m4_define([m4_combine], +[m4_if([$2], [], [], m4_eval([$# > 3]), [1], +[m4_map_args_sep([m4_map_args_sep(m4_dquote(], [)[[$3]], [], [[$1]],]]]dnl +[m4_dquote(m4_dquote(m4_shift3($@)))[[)], [[$1]], $2)])]) + + +# m4_append(MACRO-NAME, STRING, [SEPARATOR]) +# ------------------------------------------ +# Redefine MACRO-NAME to hold its former content plus `SEPARATOR`'STRING' +# at the end. It is valid to use this macro with MACRO-NAME undefined, +# in which case no SEPARATOR is added. Be aware that the criterion is +# `not being defined', and not `not being empty'. +# +# Note that neither STRING nor SEPARATOR are expanded here; rather, when +# you expand MACRO-NAME, they will be expanded at that point in time. +# +# This macro is robust to active symbols. It can be used to grow +# strings. +# +# | m4_define(active, ACTIVE)dnl +# | m4_append([sentence], [This is an])dnl +# | m4_append([sentence], [ active ])dnl +# | m4_append([sentence], [symbol.])dnl +# | sentence +# | m4_undefine([active])dnl +# | sentence +# => This is an ACTIVE symbol. +# => This is an active symbol. +# +# It can be used to define hooks. +# +# | m4_define(active, ACTIVE)dnl +# | m4_append([hooks], [m4_define([act1], [act2])])dnl +# | m4_append([hooks], [m4_define([act2], [active])])dnl +# | m4_undefine([active])dnl +# | act1 +# | hooks +# | act1 +# => act1 +# => +# => active +# +# It can also be used to create lists, although this particular usage was +# broken prior to autoconf 2.62. +# | m4_append([list], [one], [, ])dnl +# | m4_append([list], [two], [, ])dnl +# | m4_append([list], [three], [, ])dnl +# | list +# | m4_dquote(list) +# => one, two, three +# => [one],[two],[three] +# +# Note that m4_append can benefit from amortized O(n) m4 behavior, if +# the underlying m4 implementation is smart enough to avoid copying existing +# contents when enlarging a macro's definition into any pre-allocated storage +# (m4 1.4.x unfortunately does not implement this optimization). We do +# not implement m4_prepend, since it is inherently O(n^2) (pre-allocated +# storage only occurs at the end of a macro, so the existing contents must +# always be moved). +# +# Use _m4_defn for speed. +m4_define([m4_append], +[m4_define([$1], m4_ifdef([$1], [_m4_defn([$1])[$3]])[$2])]) + + +# m4_append_uniq(MACRO-NAME, STRING, [SEPARATOR], [IF-UNIQ], [IF-DUP]) +# -------------------------------------------------------------------- +# Like `m4_append', but append only if not yet present. Additionally, +# expand IF-UNIQ if STRING was appended, or IF-DUP if STRING was already +# present. Also, warn if SEPARATOR is not empty and occurs within STRING, +# as the algorithm no longer guarantees uniqueness. +# +# Note that while m4_append can be O(n) (depending on the quality of the +# underlying M4 implementation), m4_append_uniq is inherently O(n^2) +# because each append operation searches the entire string. +m4_define([m4_append_uniq], +[m4_ifval([$3], [m4_if(m4_index([$2], [$3]), [-1], [], + [m4_warn([syntax], + [$0: `$2' contains `$3'])])])_$0($@)]) +m4_define([_m4_append_uniq], +[m4_ifdef([$1], + [m4_if(m4_index([$3]_m4_defn([$1])[$3], [$3$2$3]), [-1], + [m4_append([$1], [$2], [$3])$4], [$5])], + [m4_define([$1], [$2])$4])]) + +# m4_append_uniq_w(MACRO-NAME, STRINGS) +# ------------------------------------- +# For each of the words in the whitespace separated list STRINGS, append +# only the unique strings to the definition of MACRO-NAME. +# +# Use _m4_defn for speed. +m4_define([m4_append_uniq_w], +[m4_map_args_w([$2], [_m4_append_uniq([$1],], [, [ ])])]) + + +# m4_escape(STRING) +# ----------------- +# Output quoted STRING, but with embedded #, $, [ and ] turned into +# quadrigraphs. +# +# It is faster to check if STRING is already good using m4_translit +# than to blindly perform four m4_bpatsubst. +# +# Because the translit is stripping quotes, it must also neutralize +# anything that might be in a macro name, as well as comments, commas, +# and parentheses. All the problem characters are unified so that a +# single m4_index can scan the result. +# +# Rather than expand m4_defn every time m4_escape is expanded, we +# inline its expansion up front. +m4_define([m4_escape], +[m4_if(m4_index(m4_translit([$1], + [[]#,()]]m4_dquote(m4_defn([m4_cr_symbols2]))[, [$$$]), [$]), + [-1], [m4_echo], [_$0])([$1])]) + +m4_define([_m4_escape], +[m4_changequote([-=<{(],[)}>=-])]dnl +[m4_bpatsubst(m4_bpatsubst(m4_bpatsubst(m4_bpatsubst( + -=<{(-=<{(-=<{(-=<{(-=<{($1)}>=-)}>=-)}>=-)}>=-)}>=-, + -=<{(#)}>=-, -=<{(@%:@)}>=-), + -=<{(\[)}>=-, -=<{(@<:@)}>=-), + -=<{(\])}>=-, -=<{(@:>@)}>=-), + -=<{(\$)}>=-, -=<{(@S|@)}>=-)m4_changequote([,])]) + + +# m4_text_wrap(STRING, [PREFIX], [FIRST-PREFIX], [WIDTH]) +# ------------------------------------------------------- +# Expands into STRING wrapped to hold in WIDTH columns (default = 79). +# If PREFIX is given, each line is prefixed with it. If FIRST-PREFIX is +# specified, then the first line is prefixed with it. As a special case, +# if the length of FIRST-PREFIX is greater than that of PREFIX, then +# FIRST-PREFIX will be left alone on the first line. +# +# No expansion occurs on the contents STRING, PREFIX, or FIRST-PREFIX, +# although quadrigraphs are correctly recognized. More precisely, +# you may redefine m4_qlen to recognize whatever escape sequences that +# you will post-process. +# +# Typical outputs are: +# +# m4_text_wrap([Short string */], [ ], [/* ], 20) +# => /* Short string */ +# +# m4_text_wrap([Much longer string */], [ ], [/* ], 20) +# => /* Much longer +# => string */ +# +# m4_text_wrap([Short doc.], [ ], [ --short ], 30) +# => --short Short doc. +# +# m4_text_wrap([Short doc.], [ ], [ --too-wide ], 30) +# => --too-wide +# => Short doc. +# +# m4_text_wrap([Super long documentation.], [ ], [ --too-wide ], 30) +# => --too-wide +# => Super long +# => documentation. +# +# FIXME: there is no checking of a longer PREFIX than WIDTH, but do +# we really want to bother with people trying each single corner +# of a software? +# +# This macro does not leave a trailing space behind the last word of a line, +# which complicates it a bit. The algorithm is otherwise stupid and simple: +# all the words are preceded by m4_Separator which is defined to empty for +# the first word, and then ` ' (single space) for all the others. +# +# The algorithm uses a helper that uses $2 through $4 directly, rather than +# using local variables, to avoid m4_defn overhead, or expansion swallowing +# any $. It also bypasses m4_popdef overhead with _m4_popdef since no user +# macro expansion occurs in the meantime. Also, the definition is written +# with m4_do, to avoid time wasted on dnl during expansion (since this is +# already a time-consuming macro). +m4_define([m4_text_wrap], +[_$0(m4_escape([$1]), [$2], m4_default_quoted([$3], [$2]), + m4_default_quoted([$4], [79]))]) + +m4_define([_m4_text_wrap], +m4_do(dnl set up local variables, to avoid repeated calculations +[[m4_pushdef([m4_Indent], m4_qlen([$2]))]], +[[m4_pushdef([m4_Cursor], m4_qlen([$3]))]], +[[m4_pushdef([m4_Separator], [m4_define([m4_Separator], [ ])])]], +dnl expand the first prefix, then check its length vs. regular prefix +dnl same length: nothing special +dnl prefix1 longer: output on line by itself, and reset cursor +dnl prefix1 shorter: pad to length of prefix, and reset cursor +[[[$3]m4_cond([m4_Cursor], m4_Indent, [], + [m4_eval(m4_Cursor > m4_Indent)], [1], [ +[$2]m4_define([m4_Cursor], m4_Indent)], + [m4_format([%*s], m4_max([0], + m4_eval(m4_Indent - m4_Cursor)), [])m4_define([m4_Cursor], m4_Indent)])]], +dnl now, for each word, compute the cursor after the word is output, then +dnl check if the cursor would exceed the wrap column +dnl if so, reset cursor, and insert newline and prefix +dnl if not, insert the separator (usually a space) +dnl either way, insert the word +[[m4_map_args_w([$1], [$0_word(], [, [$2], [$4])])]], +dnl finally, clean up the local variables +[[_m4_popdef([m4_Separator], [m4_Cursor], [m4_Indent])]])) + +m4_define([_m4_text_wrap_word], +[m4_define([m4_Cursor], m4_eval(m4_Cursor + m4_qlen([$1]) + 1))]dnl +[m4_if(m4_eval(m4_Cursor > ([$3])), + [1], [m4_define([m4_Cursor], m4_eval(m4_Indent + m4_qlen([$1]) + 1)) +[$2]], + [m4_Separator[]])[$1]]) + +# m4_text_box(MESSAGE, [FRAME-CHARACTER = `-']) +# --------------------------------------------- +# Turn MESSAGE into: +# ## ------- ## +# ## MESSAGE ## +# ## ------- ## +# using FRAME-CHARACTER in the border. +# +# Quadrigraphs are correctly recognized. More precisely, you may +# redefine m4_qlen to recognize whatever escape sequences that you +# will post-process. +m4_define([m4_text_box], +[m4_pushdef([m4_Border], + m4_translit(m4_format([[[%*s]]], m4_decr(m4_qlen(_m4_expand([$1 +]))), []), [ ], m4_default_quoted([$2], [-])))]dnl +[[##] _m4_defn([m4_Border]) [##] +[##] $1 [##] +[##] _m4_defn([m4_Border]) [##]_m4_popdef([m4_Border])]) + + +# m4_qlen(STRING) +# --------------- +# Expands to the length of STRING after autom4te converts all quadrigraphs. +# +# If you use some other means of post-processing m4 output rather than +# autom4te, then you may redefine this macro to recognize whatever +# escape sequences your post-processor will handle. For that matter, +# m4_define([m4_qlen], m4_defn([m4_len])) is sufficient if you don't +# do any post-processing. +# +# Avoid bpatsubsts for the common case of no quadrigraphs. Cache +# results, as configure scripts tend to ask about lengths of common +# strings like `/*' and `*/' rather frequently. Minimize the number +# of times that $1 occurs in m4_qlen, so there is less text to parse +# on a cache hit. +m4_define([m4_qlen], +[m4_ifdef([$0-$1], [_m4_defn([$0-]], [_$0(])[$1])]) +m4_define([_m4_qlen], +[m4_define([m4_qlen-$1], +m4_if(m4_index([$1], [@]), [-1], [m4_len([$1])], + [m4_len(m4_bpatsubst([[$1]], + [@\(\(<:\|:>\|S|\|%:\|\{:\|:\}\)\(@\)\|&t@\)], + [\3]))]))_m4_defn([m4_qlen-$1])]) + +# m4_copyright_condense(TEXT) +# --------------------------- +# Condense the copyright notice in TEXT to only display the final +# year, wrapping the results to fit in 80 columns. +m4_define([m4_copyright_condense], +[m4_text_wrap(m4_bpatsubst(m4_flatten([[$1]]), +[(C)[- ,0-9]*\([1-9][0-9][0-9][0-9]\)], [(C) \1]))]) + +## ----------------------- ## +## 13. Number processing. ## +## ----------------------- ## + +# m4_cmp(A, B) +# ------------ +# Compare two integer expressions. +# A < B -> -1 +# A = B -> 0 +# A > B -> 1 +m4_define([m4_cmp], +[m4_eval((([$1]) > ([$2])) - (([$1]) < ([$2])))]) + + +# m4_list_cmp(A, B) +# ----------------- +# +# Compare the two lists of integer expressions A and B. For instance: +# m4_list_cmp([1, 0], [1]) -> 0 +# m4_list_cmp([1, 0], [1, 0]) -> 0 +# m4_list_cmp([1, 2], [1, 0]) -> 1 +# m4_list_cmp([1, 2, 3], [1, 2]) -> 1 +# m4_list_cmp([1, 2, -3], [1, 2]) -> -1 +# m4_list_cmp([1, 0], [1, 2]) -> -1 +# m4_list_cmp([1], [1, 2]) -> -1 +# m4_define([xa], [oops])dnl +# m4_list_cmp([[0xa]], [5+5]) -> 0 +# +# Rather than face the overhead of m4_case, we use a helper function whose +# expansion includes the name of the macro to invoke on the tail, either +# m4_ignore or m4_unquote. This is particularly useful when comparing +# long lists, since less text is being expanded for deciding when to end +# recursion. The recursion is between a pair of macros that alternate +# which list is trimmed by one element; this is more efficient than +# calling m4_cdr on both lists from a single macro. Guarantee exactly +# one expansion of both lists' side effects. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_list_cmp], +[_$0_raw(m4_dquote($1), m4_dquote($2))]) + +m4_define([_m4_list_cmp_raw], +[m4_if([$1], [$2], [0], [_m4_list_cmp_1([$1], $2)])]) + +m4_define([_m4_list_cmp], +[m4_if([$1], [], [0m4_ignore], [$2], [0], [m4_unquote], [$2m4_ignore])]) + +m4_define([_m4_list_cmp_1], +[_m4_list_cmp_2([$2], [m4_shift2($@)], $1)]) + +m4_define([_m4_list_cmp_2], +[_m4_list_cmp([$1$3], m4_cmp([$3+0], [$1+0]))( + [_m4_list_cmp_1(m4_dquote(m4_shift3($@)), $2)])]) + +# m4_max(EXPR, ...) +# m4_min(EXPR, ...) +# ----------------- +# Return the decimal value of the maximum (or minimum) in a series of +# integer expressions. +# +# M4 1.4.x doesn't provide ?:. Hence this huge m4_eval. Avoid m4_eval +# if both arguments are identical, but be aware of m4_max(0xa, 10) (hence +# the use of <=, not just <, in the second multiply). +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_max], +[m4_if([$#], [0], [m4_fatal([too few arguments to $0])], + [$#], [1], [m4_eval([$1])], + [$#$1], [2$2], [m4_eval([$1])], + [$#], [2], [_$0($@)], + [_m4_minmax([_$0], $@)])]) + +m4_define([_m4_max], +[m4_eval((([$1]) > ([$2])) * ([$1]) + (([$1]) <= ([$2])) * ([$2]))]) + +m4_define([m4_min], +[m4_if([$#], [0], [m4_fatal([too few arguments to $0])], + [$#], [1], [m4_eval([$1])], + [$#$1], [2$2], [m4_eval([$1])], + [$#], [2], [_$0($@)], + [_m4_minmax([_$0], $@)])]) + +m4_define([_m4_min], +[m4_eval((([$1]) < ([$2])) * ([$1]) + (([$1]) >= ([$2])) * ([$2]))]) + +# _m4_minmax(METHOD, ARG1, ARG2...) +# --------------------------------- +# Common recursion code for m4_max and m4_min. METHOD must be _m4_max +# or _m4_min, and there must be at least two arguments to combine. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([_m4_minmax], +[m4_if([$#], [3], [$1([$2], [$3])], + [$0([$1], $1([$2], [$3]), m4_shift3($@))])]) + + +# m4_sign(A) +# ---------- +# The sign of the integer expression A. +m4_define([m4_sign], +[m4_eval((([$1]) > 0) - (([$1]) < 0))]) + + + +## ------------------------ ## +## 14. Version processing. ## +## ------------------------ ## + + +# m4_version_unletter(VERSION) +# ---------------------------- +# Normalize beta version numbers with letters to numeric expressions, which +# can then be handed to m4_eval for the purpose of comparison. +# +# Nl -> (N+1).-1.(l#) +# +# for example: +# [2.14a] -> [0,2,14+1,-1,[0r36:a]] -> 2.15.-1.10 +# [2.14b] -> [0,2,15+1,-1,[0r36:b]] -> 2.15.-1.11 +# [2.61aa.b] -> [0,2.61,1,-1,[0r36:aa],+1,-1,[0r36:b]] -> 2.62.-1.370.1.-1.11 +# [08] -> [0,[0r10:0]8] -> 8 +# +# This macro expects reasonable version numbers, but can handle double +# letters and does not expand any macros. Original version strings can +# use both `.' and `-' separators. +# +# Inline constant expansions, to avoid m4_defn overhead. +# _m4_version_unletter is the real workhorse used by m4_version_compare, +# but since [0r36:a] and commas are less readable than 10 and dots, we +# provide a wrapper for human use. +m4_define([m4_version_unletter], +[m4_substr(m4_map_args([.m4_eval], m4_unquote(_$0([$1]))), [3])]) +m4_define([_m4_version_unletter], +[m4_bpatsubst(m4_bpatsubst(m4_translit([[[[0,$1]]]], [.-], [,,]),]dnl +m4_dquote(m4_dquote(m4_defn([m4_cr_Letters])))[[+], + [+1,-1,[0r36:\&]]), [,0], [,[0r10:0]])]) + + +# m4_version_compare(VERSION-1, VERSION-2) +# ---------------------------------------- +# Compare the two version numbers and expand into +# -1 if VERSION-1 < VERSION-2 +# 0 if = +# 1 if > +# +# Since _m4_version_unletter does not output side effects, we can +# safely bypass the overhead of m4_version_cmp. +m4_define([m4_version_compare], +[_m4_list_cmp_raw(_m4_version_unletter([$1]), _m4_version_unletter([$2]))]) + + +# m4_PACKAGE_NAME +# m4_PACKAGE_TARNAME +# m4_PACKAGE_VERSION +# m4_PACKAGE_STRING +# m4_PACKAGE_BUGREPORT +# -------------------- +# If m4sugar/version.m4 is present, then define version strings. This +# file is optional, provided by Autoconf but absent in Bison. +m4_sinclude([m4sugar/version.m4]) + + +# m4_version_prereq(VERSION, [IF-OK], [IF-NOT = FAIL]) +# ---------------------------------------------------- +# Check this Autoconf version against VERSION. +m4_define([m4_version_prereq], +m4_ifdef([m4_PACKAGE_VERSION], +[[m4_if(m4_version_compare(]m4_dquote(m4_defn([m4_PACKAGE_VERSION]))[, [$1]), + [-1], + [m4_default([$3], + [m4_fatal([Autoconf version $1 or higher is required], + [63])])], + [$2])]], +[[m4_fatal([m4sugar/version.m4 not found])]])) + + +## ------------------ ## +## 15. Set handling. ## +## ------------------ ## + +# Autoconf likes to create arbitrarily large sets; for example, as of +# this writing, the configure.ac for coreutils tracks a set of more +# than 400 AC_SUBST. How do we track all of these set members, +# without introducing duplicates? We could use m4_append_uniq, with +# the set NAME residing in the contents of the macro NAME. +# Unfortunately, m4_append_uniq is quadratic for set creation, because +# it costs O(n) to search the string for each of O(n) insertions; not +# to mention that with m4 1.4.x, even using m4_append is slow, costing +# O(n) rather than O(1) per insertion. Other set operations, not used +# by Autoconf but still possible by manipulation of the definition +# tracked in macro NAME, include O(n) deletion of one element and O(n) +# computation of set size. Because the set is exposed to the user via +# the definition of a single macro, we cannot cache any data about the +# set without risking the cache being invalidated by the user +# redefining NAME. +# +# Can we do better? Yes, because m4 gives us an O(1) search function +# for free: ifdef. Additionally, even m4 1.4.x gives us an O(1) +# insert operation for free: pushdef. But to use these, we must +# represent the set via a group of macros; to keep the set consistent, +# we must hide the set so that the user can only manipulate it through +# accessor macros. The contents of the set are maintained through two +# access points; _m4_set([name]) is a pushdef stack of values in the +# set, useful for O(n) traversal of the set contents; while the +# existence of _m4_set([name],value) with no particular value is +# useful for O(1) querying of set membership. And since the user +# cannot externally manipulate the set, we are free to add additional +# caching macros for other performance improvements. Deletion can be +# O(1) per element rather than O(n), by reworking the definition of +# _m4_set([name],value) to be 0 or 1 based on current membership, and +# adding _m4_set_cleanup(name) to defer the O(n) cleanup of +# _m4_set([name]) until we have another reason to do an O(n) +# traversal. The existence of _m4_set_cleanup(name) can then be used +# elsewhere to determine if we must dereference _m4_set([name],value), +# or assume that definition implies set membership. Finally, size can +# be tracked in an O(1) fashion with _m4_set_size(name). +# +# The quoting in _m4_set([name],value) is chosen so that there is no +# ambiguity with a set whose name contains a comma, and so that we can +# supply the value via _m4_defn([_m4_set([name])]) without needing any +# quote manipulation. + +# m4_set_add(SET, VALUE, [IF-UNIQ], [IF-DUP]) +# ------------------------------------------- +# Add VALUE as an element of SET. Expand IF-UNIQ on the first +# addition, and IF-DUP if it is already in the set. Addition of one +# element is O(1), such that overall set creation is O(n). +# +# We do not want to add a duplicate for a previously deleted but +# unpruned element, but it is just as easy to check existence directly +# as it is to query _m4_set_cleanup($1). +m4_define([m4_set_add], +[m4_ifdef([_m4_set([$1],$2)], + [m4_if(m4_indir([_m4_set([$1],$2)]), [0], + [m4_define([_m4_set([$1],$2)], + [1])_m4_set_size([$1], [m4_incr])$3], [$4])], + [m4_define([_m4_set([$1],$2)], + [1])m4_pushdef([_m4_set([$1])], + [$2])_m4_set_size([$1], [m4_incr])$3])]) + +# m4_set_add_all(SET, VALUE...) +# ----------------------------- +# Add each VALUE into SET. This is O(n) in the number of VALUEs, and +# can be faster than calling m4_set_add for each VALUE. +# +# Implement two recursion helpers; the check variant is slower but +# handles the case where an element has previously been removed but +# not pruned. The recursion helpers ignore their second argument, so +# that we can use the faster m4_shift2 and 2 arguments, rather than +# _m4_shift2 and one argument, as the signal to end recursion. +# +# Please keep foreach.m4 in sync with any adjustments made here. +m4_define([m4_set_add_all], +[m4_define([_m4_set_size($1)], m4_eval(m4_set_size([$1]) + + m4_len(m4_ifdef([_m4_set_cleanup($1)], [_$0_check], [_$0])([$1], $@))))]) + +m4_define([_m4_set_add_all], +[m4_if([$#], [2], [], + [m4_ifdef([_m4_set([$1],$3)], [], + [m4_define([_m4_set([$1],$3)], [1])m4_pushdef([_m4_set([$1])], + [$3])-])$0([$1], m4_shift2($@))])]) + +m4_define([_m4_set_add_all_check], +[m4_if([$#], [2], [], + [m4_set_add([$1], [$3])$0([$1], m4_shift2($@))])]) + +# m4_set_contains(SET, VALUE, [IF-PRESENT], [IF-ABSENT]) +# ------------------------------------------------------ +# Expand IF-PRESENT if SET contains VALUE, otherwise expand IF-ABSENT. +# This is always O(1). +m4_define([m4_set_contains], +[m4_ifdef([_m4_set_cleanup($1)], + [m4_if(m4_ifdef([_m4_set([$1],$2)], + [m4_indir([_m4_set([$1],$2)])], [0]), [1], [$3], [$4])], + [m4_ifdef([_m4_set([$1],$2)], [$3], [$4])])]) + +# m4_set_contents(SET, [SEP]) +# --------------------------- +# Expand to a single string containing all the elements in SET, +# separated by SEP, without modifying SET. No provision is made for +# disambiguating set elements that contain non-empty SEP as a +# sub-string, or for recognizing a set that contains only the empty +# string. Order of the output is not guaranteed. If any elements +# have been previously removed from the set, this action will prune +# the unused memory. This is O(n) in the size of the set before +# pruning. +# +# Use _m4_popdef for speed. The existence of _m4_set_cleanup($1) +# determines which version of _1 helper we use. +m4_define([m4_set_contents], +[m4_set_map_sep([$1], [], [], [[$2]])]) + +# _m4_set_contents_1(SET) +# _m4_set_contents_1c(SET) +# _m4_set_contents_2(SET, [PRE], [POST], [SEP]) +# --------------------------------------------- +# Expand to a list of quoted elements currently in the set, each +# surrounded by PRE and POST, and moving SEP in front of PRE on +# recursion. To avoid nesting limit restrictions, the algorithm must +# be broken into two parts; _1 destructively copies the stack in +# reverse into _m4_set_($1), producing no output; then _2 +# destructively copies _m4_set_($1) back into the stack in reverse. +# If no elements were deleted, then this visits the set in the order +# that elements were inserted. Behavior is undefined if PRE/POST/SEP +# tries to recursively list or modify SET in any way other than +# calling m4_set_remove on the current element. Use _1 if all entries +# in the stack are guaranteed to be in the set, and _1c to prune +# removed entries. Uses _m4_defn and _m4_popdef for speed. +m4_define([_m4_set_contents_1], +[_m4_stack_reverse([_m4_set([$1])], [_m4_set_($1)])]) + +m4_define([_m4_set_contents_1c], +[m4_ifdef([_m4_set([$1])], + [m4_set_contains([$1], _m4_defn([_m4_set([$1])]), + [m4_pushdef([_m4_set_($1)], _m4_defn([_m4_set([$1])]))], + [_m4_popdef([_m4_set([$1],]_m4_defn( + [_m4_set([$1])])[)])])_m4_popdef([_m4_set([$1])])$0([$1])], + [_m4_popdef([_m4_set_cleanup($1)])])]) + +m4_define([_m4_set_contents_2], +[_m4_stack_reverse([_m4_set_($1)], [_m4_set([$1])], + [$2[]_m4_defn([_m4_set_($1)])$3], [$4[]])]) + +# m4_set_delete(SET) +# ------------------ +# Delete all elements in SET, and reclaim any memory occupied by the +# set. This is O(n) in the set size. +# +# Use _m4_defn and _m4_popdef for speed. +m4_define([m4_set_delete], +[m4_ifdef([_m4_set([$1])], + [_m4_popdef([_m4_set([$1],]_m4_defn([_m4_set([$1])])[)], + [_m4_set([$1])])$0([$1])], + [m4_ifdef([_m4_set_cleanup($1)], + [_m4_popdef([_m4_set_cleanup($1)])])m4_ifdef( + [_m4_set_size($1)], + [_m4_popdef([_m4_set_size($1)])])])]) + +# m4_set_difference(SET1, SET2) +# ----------------------------- +# Produce a LIST of quoted elements that occur in SET1 but not SET2. +# Output a comma prior to any elements, to distinguish the empty +# string from no elements. This can be directly used as a series of +# arguments, such as for m4_join, or wrapped inside quotes for use in +# m4_foreach. Order of the output is not guaranteed. +# +# Short-circuit the idempotence relation. +m4_define([m4_set_difference], +[m4_if([$1], [$2], [], [m4_set_map_sep([$1], [_$0([$2],], [)])])]) + +m4_define([_m4_set_difference], +[m4_set_contains([$1], [$2], [], [,[$2]])]) + +# m4_set_dump(SET, [SEP]) +# ----------------------- +# Expand to a single string containing all the elements in SET, +# separated by SEP, then delete SET. In general, if you only need to +# list the contents once, this is faster than m4_set_contents. No +# provision is made for disambiguating set elements that contain +# non-empty SEP as a sub-string. Order of the output is not +# guaranteed. This is O(n) in the size of the set before pruning. +# +# Use _m4_popdef for speed. Use existence of _m4_set_cleanup($1) to +# decide if more expensive recursion is needed. +m4_define([m4_set_dump], +[m4_ifdef([_m4_set_size($1)], + [_m4_popdef([_m4_set_size($1)])])m4_ifdef([_m4_set_cleanup($1)], + [_$0_check], [_$0])([$1], [], [$2])]) + +# _m4_set_dump(SET, [SEP], [PREP]) +# _m4_set_dump_check(SET, [SEP], [PREP]) +# -------------------------------------- +# Print SEP and the current element, then delete the element and +# recurse with empty SEP changed to PREP. The check variant checks +# whether the element has been previously removed. Use _m4_defn and +# _m4_popdef for speed. +m4_define([_m4_set_dump], +[m4_ifdef([_m4_set([$1])], + [[$2]_m4_defn([_m4_set([$1])])_m4_popdef([_m4_set([$1],]_m4_defn( + [_m4_set([$1])])[)], [_m4_set([$1])])$0([$1], [$2$3])])]) + +m4_define([_m4_set_dump_check], +[m4_ifdef([_m4_set([$1])], + [m4_set_contains([$1], _m4_defn([_m4_set([$1])]), + [[$2]_m4_defn([_m4_set([$1])])])_m4_popdef( + [_m4_set([$1],]_m4_defn([_m4_set([$1])])[)], + [_m4_set([$1])])$0([$1], [$2$3])], + [_m4_popdef([_m4_set_cleanup($1)])])]) + +# m4_set_empty(SET, [IF-EMPTY], [IF-ELEMENTS]) +# -------------------------------------------- +# Expand IF-EMPTY if SET has no elements, otherwise IF-ELEMENTS. +m4_define([m4_set_empty], +[m4_ifdef([_m4_set_size($1)], + [m4_if(m4_indir([_m4_set_size($1)]), [0], [$2], [$3])], [$2])]) + +# m4_set_foreach(SET, VAR, ACTION) +# -------------------------------- +# For each element of SET, define VAR to the element and expand +# ACTION. ACTION should not recursively list SET's contents, add +# elements to SET, nor delete any element from SET except the one +# currently in VAR. The order that the elements are visited in is not +# guaranteed. This is faster than the corresponding m4_foreach([VAR], +# m4_indir([m4_dquote]m4_set_listc([SET])), [ACTION]) +m4_define([m4_set_foreach], +[m4_pushdef([$2])m4_set_map_sep([$1], +[m4_define([$2],], [)$3])m4_popdef([$2])]) + +# m4_set_intersection(SET1, SET2) +# ------------------------------- +# Produce a LIST of quoted elements that occur in both SET1 or SET2. +# Output a comma prior to any elements, to distinguish the empty +# string from no elements. This can be directly used as a series of +# arguments, such as for m4_join, or wrapped inside quotes for use in +# m4_foreach. Order of the output is not guaranteed. +# +# Iterate over the smaller set, and short-circuit the idempotence +# relation. +m4_define([m4_set_intersection], +[m4_if([$1], [$2], [m4_set_listc([$1])], + m4_eval(m4_set_size([$2]) < m4_set_size([$1])), [1], [$0([$2], [$1])], + [m4_set_map_sep([$1], [_$0([$2],], [)])])]) + +m4_define([_m4_set_intersection], +[m4_set_contains([$1], [$2], [,[$2]])]) + +# m4_set_list(SET) +# m4_set_listc(SET) +# ----------------- +# Produce a LIST of quoted elements of SET. This can be directly used +# as a series of arguments, such as for m4_join or m4_set_add_all, or +# wrapped inside quotes for use in m4_foreach or m4_map. With +# m4_set_list, there is no way to distinguish an empty set from a set +# containing only the empty string; with m4_set_listc, a leading comma +# is output if there are any elements. +m4_define([m4_set_list], +[m4_set_map_sep([$1], [], [], [,])]) + +m4_define([m4_set_listc], +[m4_set_map_sep([$1], [,])]) + +# m4_set_map(SET, ACTION) +# ----------------------- +# For each element of SET, expand ACTION with a single argument of the +# current element. ACTION should not recursively list SET's contents, +# add elements to SET, nor delete any element from SET except the one +# passed as an argument. The order that the elements are visited in +# is not guaranteed. This is faster than either of the corresponding +# m4_map_args([ACTION]m4_set_listc([SET])) +# m4_set_foreach([SET], [VAR], [ACTION(m4_defn([VAR]))]) +m4_define([m4_set_map], +[m4_set_map_sep([$1], [$2(], [)])]) + +# m4_set_map_sep(SET, [PRE], [POST], [SEP]) +# ----------------------------------------- +# For each element of SET, expand PRE[value]POST[], and expand SEP +# between elements. +m4_define([m4_set_map_sep], +[m4_ifdef([_m4_set_cleanup($1)], [_m4_set_contents_1c], + [_m4_set_contents_1])([$1])_m4_set_contents_2($@)]) + +# m4_set_remove(SET, VALUE, [IF-PRESENT], [IF-ABSENT]) +# ---------------------------------------------------- +# If VALUE is an element of SET, delete it and expand IF-PRESENT. +# Otherwise expand IF-ABSENT. Deleting a single value is O(1), +# although it leaves memory occupied until the next O(n) traversal of +# the set which will compact the set. +# +# Optimize if the element being removed is the most recently added, +# since defining _m4_set_cleanup($1) slows down so many other macros. +# In particular, this plays well with m4_set_foreach and m4_set_map. +m4_define([m4_set_remove], +[m4_set_contains([$1], [$2], [_m4_set_size([$1], + [m4_decr])m4_if(_m4_defn([_m4_set([$1])]), [$2], + [_m4_popdef([_m4_set([$1],$2)], [_m4_set([$1])])], + [m4_define([_m4_set_cleanup($1)])m4_define( + [_m4_set([$1],$2)], [0])])$3], [$4])]) + +# m4_set_size(SET) +# ---------------- +# Expand to the number of elements currently in SET. This operation +# is O(1), and thus more efficient than m4_count(m4_set_list([SET])). +m4_define([m4_set_size], +[m4_ifdef([_m4_set_size($1)], [m4_indir([_m4_set_size($1)])], [0])]) + +# _m4_set_size(SET, ACTION) +# ------------------------- +# ACTION must be either m4_incr or m4_decr, and the size of SET is +# changed accordingly. If the set is empty, ACTION must not be +# m4_decr. +m4_define([_m4_set_size], +[m4_define([_m4_set_size($1)], + m4_ifdef([_m4_set_size($1)], [$2(m4_indir([_m4_set_size($1)]))], + [1]))]) + +# m4_set_union(SET1, SET2) +# ------------------------ +# Produce a LIST of double quoted elements that occur in either SET1 +# or SET2, without duplicates. Output a comma prior to any elements, +# to distinguish the empty string from no elements. This can be +# directly used as a series of arguments, such as for m4_join, or +# wrapped inside quotes for use in m4_foreach. Order of the output is +# not guaranteed. +# +# We can rely on the fact that m4_set_listc prunes SET1, so we don't +# need to check _m4_set([$1],element) for 0. Short-circuit the +# idempotence relation. +m4_define([m4_set_union], +[m4_set_listc([$1])m4_if([$1], [$2], [], + [m4_set_map_sep([$2], [_$0([$1],], [)])])]) + +m4_define([_m4_set_union], +[m4_ifdef([_m4_set([$1],$2)], [], [,[$2]])]) + + +## ------------------- ## +## 16. File handling. ## +## ------------------- ## + + +# It is a real pity that M4 comes with no macros to bind a diversion +# to a file. So we have to deal without, which makes us a lot more +# fragile than we should. + + +# m4_file_append(FILE-NAME, CONTENT) +# ---------------------------------- +m4_define([m4_file_append], +[m4_syscmd([cat >>$1 <<_m4eof +$2 +_m4eof +]) +m4_if(m4_sysval, [0], [], + [m4_fatal([$0: cannot write: $1])])]) + + + +## ------------------------ ## +## 17. Setting M4sugar up. ## +## ------------------------ ## + +# _m4_divert_diversion should be defined. +m4_divert_push([KILL]) + +# m4_init +# ------- +# Initialize the m4sugar language. +m4_define([m4_init], +[# All the M4sugar macros start with `m4_', except `dnl' kept as is +# for sake of simplicity. +m4_pattern_forbid([^_?m4_]) +m4_pattern_forbid([^dnl$]) + +# If __m4_version__ is defined, we assume that we are being run by M4 +# 1.6 or newer, thus $@ recursion is linear, and debugmode(+do) +# is available for faster checks of dereferencing undefined macros +# and forcing dumpdef to print to stderr regardless of debugfile. +# But if it is missing, we assume we are being run by M4 1.4.x, that +# $@ recursion is quadratic, and that we need foreach-based +# replacement macros. Also, m4 prior to 1.4.8 loses track of location +# during m4wrap text; __line__ should never be 0. +# +# Use the raw builtin to avoid tripping up include tracing. +# Meanwhile, avoid m4_copy, since it temporarily undefines m4_defn. +m4_ifdef([__m4_version__], +[m4_debugmode([+do]) +m4_define([m4_defn], _m4_defn([_m4_defn])) +m4_define([m4_dumpdef], _m4_defn([_m4_dumpdef])) +m4_define([m4_popdef], _m4_defn([_m4_popdef])) +m4_define([m4_undefine], _m4_defn([_m4_undefine]))], +[m4_builtin([include], [m4sugar/foreach.m4]) +m4_wrap_lifo([m4_if(__line__, [0], [m4_pushdef([m4_location], +]]m4_dquote(m4_dquote(m4_dquote(__file__:__line__)))[[)])])]) + +# Rewrite the first entry of the diversion stack. +m4_divert([KILL]) + +# Check the divert push/pop perfect balance. +# Some users are prone to also use m4_wrap to register last-minute +# m4_divert_text; so after our diversion cleanups, we restore +# KILL as the bottom of the diversion stack. +m4_wrap([m4_popdef([_m4_divert_diversion])m4_ifdef( + [_m4_divert_diversion], [m4_fatal([$0: unbalanced m4_divert_push: +]m4_divert_stack)])_m4_popdef([_m4_divert_stack])m4_divert_push([KILL])]) +]) diff --git a/bison/RelWithDebInfo/data/skeletons/bison.m4 b/bison/RelWithDebInfo/data/skeletons/bison.m4 new file mode 100644 index 0000000..b7bf5c5 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/bison.m4 @@ -0,0 +1,1241 @@ + -*- Autoconf -*- + +# Language-independent M4 Macros for Bison. + +# Copyright (C) 2002, 2004-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + + +# m4_gsub(STRING, RE1, SUBST1, RE2, SUBST2, ...) +# ---------------------------------------------- +# m4 equivalent of +# +# $_ = STRING; +# s/RE1/SUBST1/g; +# s/RE2/SUBST2/g; +# ... +# +# Really similar to m4_bpatsubsts, but behaves properly with quotes. +# See m4.at's "Generating Comments". Super inelegant, but so far, I +# did not find any better solution. +m4_define([b4_gsub], +[m4_bpatsubst(m4_bpatsubst(m4_bpatsubst([[[[$1]]]], + [$2], [$3]), + [$4], [$5]), + [$6], [$7])]) + +# m4_shift2 and m4_shift3 are provided by m4sugar. +m4_define([m4_shift4], [m4_shift(m4_shift(m4_shift(m4_shift($@))))]) + + +## ---------------- ## +## Identification. ## +## ---------------- ## + +# b4_generated_by +# --------------- +m4_define([b4_generated_by], +[b4_comment([A Bison parser, made by GNU Bison b4_version_string.]) +]) + +# b4_copyright(TITLE, [YEARS]) +# ---------------------------- +# If YEARS are not defined, use b4_copyright_years. +m4_define([b4_copyright], +[b4_generated_by +b4_comment([$1 + +]m4_dquote(m4_text_wrap([Copyright (C) +]m4_ifval([$2], [[$2]], [m4_defn([b4_copyright_years])])[ +Free Software Foundation, Inc.]))[ + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see .]) + +b4_comment([As a special exception, you may create a larger work that contains +part or all of the Bison parser skeleton and distribute that work +under terms of your choice, so long as that work isn't itself a +parser generator using the skeleton or a modified version thereof +as a parser skeleton. Alternatively, if you modify or redistribute +the parser skeleton itself, you may (at your option) remove this +special exception, which will cause the skeleton and the resulting +Bison output files to be licensed under the GNU General Public +License without this special exception. + +This special exception was added by the Free Software Foundation in +version 2.2 of Bison.]) +]) + + +# b4_disclaimer +# ------------- +# Issue a warning about private implementation details. +m4_define([b4_disclaimer], +[b4_comment([DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual, +especially those whose name start with YY_ or yy_. They are +private implementation details that can be changed or removed.]) +]) + + + +# b4_required_version_if(VERSION, IF_NEWER, IF_OLDER) +# --------------------------------------------------- +# If the version %require'd by the user is VERSION (or newer) expand +# IF_NEWER, otherwise IF_OLDER. VERSION should be an integer, e.g., +# 302 for 3.2. +m4_define([b4_required_version_if], +[m4_if(m4_eval($1 <= b4_required_version), + [1], [$2], [$3])]) + + +## -------- ## +## Output. ## +## -------- ## + +# b4_output_begin(FILE1, FILE2) +# ----------------------------- +# Enable output, i.e., send to diversion 0, expand after "#", and +# generate the tag to output into FILE. Must be followed by EOL. +# FILE is FILE1 concatenated to FILE2. FILE2 can be empty, or be +# absolute: do the right thing. +m4_define([b4_output_begin], +[m4_changecom() +m4_divert_push(0)dnl +@output(m4_unquote([$1])@,m4_unquote([$2])@)@dnl +]) + + +# b4_output_end +# ------------- +# Output nothing, restore # as comment character (no expansions after #). +m4_define([b4_output_end], +[m4_divert_pop(0) +m4_changecom([#]) +]) + + +# b4_divert_kill(CODE) +# -------------------- +# Expand CODE for its side effects, discard its output. +m4_define([b4_divert_kill], +[m4_divert_text([KILL], [$1])]) + + +# b4_define_silent(MACRO, CODE) +# ----------------------------- +# Same as m4_define, but throw away the expansion of CODE. +m4_define([b4_define_silent], +[m4_define([$1], [b4_divert_kill([$2])])]) + + +## ---------------- ## +## Error handling. ## +## ---------------- ## + +# The following error handling macros print error directives that should not +# become arguments of other macro invocations since they would likely then be +# mangled. Thus, they print to stdout directly. + +# b4_cat(TEXT) +# ------------ +# Write TEXT to stdout. Precede the final newline with an @ so that it's +# escaped. For example: +# +# b4_cat([[@complain(invalid input@)]]) +m4_define([b4_cat], +[m4_syscmd([cat <<'_m4eof' +]m4_bpatsubst(m4_dquote($1), [_m4eof], [_m4@`eof])[@ +_m4eof +])dnl +m4_if(m4_sysval, [0], [], [m4_fatal([$0: cannot write to stdout])])]) + +# b4_error(KIND, START, END, FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------------------------- +# Write @KIND(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_error([[complain]], [[input.y:2.3]], [[input.y:5.4]], +# [[invalid %s]], [[foo]]) +m4_define([b4_error], +[b4_cat([[@complain][(]$1[@,]$2[@,]$3[@,]$4[]]dnl +[m4_if([$#], [4], [], + [m4_foreach([b4_arg], + m4_dquote(m4_shift4($@)), + [[@,]b4_arg])])[@)]])]) + +# b4_warn(FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------ +# Write @warn(FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_warn([[invalid value for '%s': %s]], [[foo]], [[3]]) +# +# As a simple test suite, this: +# +# m4_divert(-1) +# m4_define([asdf], [ASDF]) +# m4_define([fsa], [FSA]) +# m4_define([fdsa], [FDSA]) +# b4_warn_at([[[asdf), asdf]]], [[[fsa), fsa]]], [[[fdsa), fdsa]]]) +# b4_warn_at([[asdf), asdf]], [[fsa), fsa]], [[fdsa), fdsa]]) +# b4_warn_at() +# b4_warn_at(1) +# b4_warn_at(1, 2) +# +# Should produce this without newlines: +# +# @warn_at([asdf), asdf]@,@,@,[fsa), fsa]@,[fdsa), fdsa]@) +# @warn(asdf), asdf@,@,@,fsa), fsa@,fdsa), fdsa@) +# @warn(@) +# @warn(1@) +# @warn(1@,2@) +m4_define([b4_warn], +[b4_warn_at([], [], $@)]) + +# b4_warn_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# --------------------------------------------------- +# Write @warn(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# For example: +# +# b4_warn_at([[input.y:2.3]], [[input.y:5.4]], [[invalid %s]], [[foo]]) +m4_define([b4_warn_at], +[b4_error([[warn]], $@)]) + +# b4_complain(FORMAT, [ARG1], [ARG2], ...) +# ---------------------------------------- +# Bounce to b4_complain_at. +# +# See b4_warn example. +m4_define([b4_complain], +[b4_complain_at([], [], $@)]) + +# b4_complain_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------------------------- +# Write @complain(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout. +# +# See b4_warn_at example. +m4_define([b4_complain_at], +[b4_error([[complain]], $@)]) + +# b4_fatal(FORMAT, [ARG1], [ARG2], ...) +# ------------------------------------- +# Bounce to b4_fatal_at. +# +# See b4_warn example. +m4_define([b4_fatal], +[b4_fatal_at([], [], $@)]) + +# b4_fatal_at(START, END, FORMAT, [ARG1], [ARG2], ...) +# ---------------------------------------------------- +# Write @fatal(START@,END@,FORMAT@,ARG1@,ARG2@,...@) to stdout and exit. +# +# See b4_warn_at example. +m4_define([b4_fatal_at], +[b4_error([[fatal]], $@)dnl +m4_exit(1)]) + +# b4_canary(MSG) +# -------------- +# Issue a warning on stderr and in the output. Used in the test suite +# to catch spurious m4 evaluations. +m4_define([b4_canary], +[m4_errprintn([dead canary: $1])DEAD CANARY($1)]) + + +## ------------ ## +## Data Types. ## +## ------------ ## + +# b4_ints_in(INT1, INT2, LOW, HIGH) +# --------------------------------- +# Return 1 iff both INT1 and INT2 are in [LOW, HIGH], 0 otherwise. +m4_define([b4_ints_in], +[m4_eval([$3 <= $1 && $1 <= $4 && $3 <= $2 && $2 <= $4])]) + + +# b4_subtract(LHS, RHS) +# --------------------- +# Evaluate LHS - RHS if they are integer literals, otherwise expand +# to (LHS) - (RHS). +m4_define([b4_subtract], +[m4_bmatch([$1$2], [^[0123456789]*$], + [m4_eval([$1 - $2])], + [($1) - ($2)])]) + +# b4_join(ARG1, ...) +# _b4_join(ARG1, ...) +# ------------------- +# Join with comma, skipping empty arguments. +# b4_join calls itself recursively until it sees the first non-empty +# argument, then calls _b4_join (i.e., `_$0`) which prepends each +# non-empty argument with a comma. +m4_define([b4_join], +[m4_if([$#$1], + [1], [], + [m4_ifval([$1], + [$1[]_$0(m4_shift($@))], + [$0(m4_shift($@))])])]) + +# _b4_join(ARGS1, ...) +# -------------------- +m4_define([_b4_join], +[m4_if([$#$1], + [1], [], + [m4_ifval([$1], [, $1])[]$0(m4_shift($@))])]) + + + + +# b4_integral_parser_tables_map(MACRO) +# ------------------------------------- +# Map MACRO on all the integral tables. MACRO is expected to have +# the signature MACRO(TABLE-NAME, CONTENT, COMMENT). +m4_define([b4_integral_parser_tables_map], +[$1([pact], [b4_pact], + [[YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing +STATE-NUM.]]) + +$1([defact], [b4_defact], + [[YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. +Performed when YYTABLE does not specify something else to do. Zero +means the default is an error.]]) + +$1([pgoto], [b4_pgoto], [[YYPGOTO[NTERM-NUM].]]) + +$1([defgoto], [b4_defgoto], [[YYDEFGOTO[NTERM-NUM].]]) + +$1([table], [b4_table], + [[YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If +positive, shift that token. If negative, reduce the rule whose +number is the opposite. If YYTABLE_NINF, syntax error.]]) + +$1([check], [b4_check]) + +$1([stos], [b4_stos], + [[YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of +state STATE-NUM.]]) + +$1([r1], [b4_r1], + [[YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM.]]) + +$1([r2], [b4_r2], + [[YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM.]]) +]) + + +# b4_parser_tables_declare +# b4_parser_tables_define +# ------------------------ +# Define/declare the (deterministic) parser tables. +m4_define([b4_parser_tables_declare], +[b4_integral_parser_tables_map([b4_integral_parser_table_declare])]) + +m4_define([b4_parser_tables_define], +[b4_integral_parser_tables_map([b4_integral_parser_table_define])]) + + + +## ------------------ ## +## Decoding options. ## +## ------------------ ## + +# b4_flag_if(FLAG, IF-TRUE, IF-FALSE) +# ----------------------------------- +# Run IF-TRUE if b4_FLAG_flag is 1, IF-FALSE if FLAG is 0, otherwise fail. +m4_define([b4_flag_if], +[m4_case(b4_$1_flag, + [0], [$3], + [1], [$2], + [m4_fatal([invalid $1 value: ]b4_$1_flag)])]) + + +# b4_define_flag_if(FLAG) +# ----------------------- +# Define "b4_FLAG_if(IF-TRUE, IF-FALSE)" that depends on the +# value of the Boolean FLAG. +m4_define([b4_define_flag_if], +[_b4_define_flag_if($[1], $[2], [$1])]) + +# _b4_define_flag_if($1, $2, FLAG) +# -------------------------------- +# Work around the impossibility to define macros inside macros, +# because issuing '[$1]' is not possible in M4. GNU M4 should provide +# $$1 a la M5/TeX. +m4_define([_b4_define_flag_if], +[m4_if([$1$2], $[1]$[2], [], + [m4_fatal([$0: Invalid arguments: $@])])dnl +m4_define([b4_$3_if], + [b4_flag_if([$3], [$1], [$2])])]) + + +# b4_FLAG_if(IF-TRUE, IF-FALSE) +# ----------------------------- +# Expand IF-TRUE, if FLAG is true, IF-FALSE otherwise. +b4_define_flag_if([glr]) # Whether a GLR parser is requested. +b4_define_flag_if([has_translations]) # Whether some tokens are internationalized. +b4_define_flag_if([header]) # Whether a header is requested. +b4_define_flag_if([nondeterministic]) # Whether conflicts should be handled. +b4_define_flag_if([token_table]) # Whether yytoken_table is demanded. +b4_define_flag_if([yacc]) # Whether POSIX Yacc is emulated. + + +# b4_glr_cc_if([IF-TRUE], [IF-FALSE]) +# ----------------------------------- +m4_define([b4_glr_cc_if], + [m4_if(b4_skeleton, ["glr.cc"], $@)]) + +# b4_glr2_cc_if([IF-TRUE], [IF-FALSE]) +# ------------------------------------ +m4_define([b4_glr2_cc_if], + [m4_if(b4_skeleton, ["glr2.cc"], $@)]) + +## --------- ## +## Symbols. ## +## --------- ## + +# For a description of the Symbol handling, see README.md. +# +# The following macros provide access to symbol related values. + +# __b4_symbol(NUM, FIELD) +# ----------------------- +# Fetch FIELD of symbol #NUM. Fail if undefined. +m4_define([__b4_symbol], +[m4_indir([b4_symbol($1, $2)])]) + + +# _b4_symbol(NUM, FIELD) +# ---------------------- +# Fetch FIELD of symbol #NUM (or "orig NUM", see README.md). +# Fail if undefined. +m4_define([_b4_symbol], +[m4_ifdef([b4_symbol($1, number)], + [__b4_symbol(m4_indir([b4_symbol($1, number)]), $2)], + [__b4_symbol([$1], [$2])])]) + + +# b4_symbol_token_kind(NUM) +# ------------------------- +# The token kind of this symbol. +m4_define([b4_symbol_token_kind], +[b4_percent_define_get([api.token.prefix])dnl +_b4_symbol([$1], [id])]) + + +# b4_symbol_kind_base(NUM) +# ------------------------ +# Build the name of the kind of this symbol. It must always exist, +# otherwise some symbols might not be represented in the enum, which +# might be compiled into too small a type to contain all the symbol +# numbers. +m4_define([b4_symbol_prefix], [b4_percent_define_get([api.symbol.prefix])]) +m4_define([b4_symbol_kind_base], +[b4_percent_define_get([api.symbol.prefix])dnl +m4_case([$1], + [-2], [[YYEMPTY]], + [0], [[YYEOF]], + [1], [[YYerror]], + [2], [[YYUNDEF]], + [m4_case(b4_symbol([$1], [tag]), + [$accept], [[YYACCEPT]], + [b4_symbol_if([$1], [has_id], _b4_symbol([$1], [id]), + [m4_bpatsubst([$1-][]_b4_symbol([$1], [tag]), [[^a-zA-Z_0-9]+], [_])])])])]) + + +# b4_symbol_kind(NUM) +# ------------------- +# Same as b4_symbol_kind, but possibly with a prefix in some +# languages. E.g., EOF's kind_base and kind are YYSYMBOL_YYEOF in C, +# but are S_YYEMPTY and symbol_kind::S_YYEMPTY in C++. +m4_copy([b4_symbol_kind_base], [b4_symbol_kind]) + + +# b4_symbol_slot(NUM) +# ------------------- +# The name of union member that contains the value of these symbols. +# Currently, we are messy, this should actually be type_tag, but type_tag +# has several meanings. +m4_define([b4_symbol_slot], +[m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_symbol([$1], [type_tag])], + [variant], [b4_symbol([$1], [type_tag])], + [b4_symbol([$1], [type])])]) + + +# b4_symbol(NUM, FIELD) +# --------------------- +# Fetch FIELD of symbol #NUM (or "orig NUM", or "empty"). Fail if undefined. +# +# If FIELD = id, prepend the token prefix. +m4_define([b4_symbol], +[m4_if([$1], [empty], [b4_symbol([-2], [$2])], + [$1], [eof], [b4_symbol([0], [$2])], + [$1], [error], [b4_symbol([1], [$2])], + [$1], [undef], [b4_symbol([2], [$2])], + [m4_case([$2], + [id], [b4_symbol_token_kind([$1])], + [kind_base], [b4_symbol_kind_base([$1])], + [kind], [b4_symbol_kind([$1])], + [slot], [b4_symbol_slot([$1])], + [_b4_symbol($@)])])]) + + +# b4_symbol_if(NUM, FIELD, IF-TRUE, IF-FALSE) +# ------------------------------------------- +# If FIELD about symbol #NUM is 1 expand IF-TRUE, if is 0, expand IF-FALSE. +# Otherwise an error. +m4_define([b4_symbol_if], +[m4_case(b4_symbol([$1], [$2]), + [1], [$3], + [0], [$4], + [m4_fatal([$0: field $2 of $1 is not a Boolean:] b4_symbol([$1], [$2]))])]) + + +# b4_symbol_tag_comment(SYMBOL-NUM) +# --------------------------------- +# Issue a comment giving the tag of symbol NUM. +m4_define([b4_symbol_tag_comment], +[b4_comment([b4_symbol([$1], [tag])]) +]) + + +# b4_symbol_action(SYMBOL-NUM, ACTION) +# ------------------------------------ +# Run the action ACTION ("destructor" or "printer") for SYMBOL-NUM. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([(*yyvaluep)], + [$1], + [], + [(*yylocationp)])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl +b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_symbol_destructor(SYMBOL-NUM) +# b4_symbol_printer(SYMBOL-NUM) +# -------------------------------- +m4_define([b4_symbol_destructor], [b4_symbol_action([$1], [destructor])]) +m4_define([b4_symbol_printer], [b4_symbol_action([$1], [printer])]) + + +# b4_symbol_actions(ACTION, [KIND = yykind]) +# ------------------------------------------ +# Emit the symbol actions for ACTION ("destructor" or "printer"). +# Dispatch on KIND. +m4_define([b4_symbol_actions], +[m4_pushdef([b4_actions_], m4_expand([b4_symbol_foreach([b4_symbol_$1])]))dnl +m4_ifval(m4_defn([b4_actions_]), +[switch (m4_default([$2], [yykind])) + { +m4_defn([b4_actions_])[]dnl + default: + break; + }dnl +], +[b4_use(m4_default([$2], [yykind]));])dnl +m4_popdef([b4_actions_])dnl +]) + +# _b4_symbol_case(SYMBOL-NUM) +# --------------------------- +# Issue a "case NUM" for SYMBOL-NUM. Ends with its EOL to make it +# easier to use with m4_map, but then, use []dnl to suppress the last +# one. +m4_define([_b4_symbol_case], +[case b4_symbol([$1], [kind]): b4_symbol_tag_comment([$1])]) +]) + + +# b4_symbol_foreach(MACRO) +# ------------------------ +# Invoke MACRO(SYMBOL-NUM) for each SYMBOL-NUM. +m4_define([b4_symbol_foreach], + [m4_map([$1], m4_defn([b4_symbol_numbers]))]) + +# b4_symbol_map(MACRO) +# -------------------- +# Return a list (possibly empty elements) of MACRO invoked for each +# SYMBOL-NUM. +m4_define([b4_symbol_map], +[m4_map_args_sep([$1(], [)], [,], b4_symbol_numbers)]) + + +# b4_token_visible_if(NUM, IF-TRUE, IF-FALSE) +# ------------------------------------------- +# Whether NUM denotes a token kind that has an exported definition +# (i.e., shows in enum yytokentype). +m4_define([b4_token_visible_if], +[b4_symbol_if([$1], [is_token], + [b4_symbol_if([$1], [has_id], [$2], [$3])], + [$3])]) + + +# b4_token_has_definition(NUM) +# ---------------------------- +# 1 if NUM is visible, nothing otherwise. +m4_define([b4_token_has_definition], +[b4_token_visible_if([$1], [1])]) + +# b4_any_token_visible_if([IF-TRUE], [IF-FALSE]) +# ---------------------------------------------- +# Whether there is a token that needs to be defined. +m4_define([b4_any_token_visible_if], +[m4_ifval(b4_symbol_foreach([b4_token_has_definition]), + [$1], [$2])]) + + +# b4_token_format(FORMAT, NUM) +# ---------------------------- +# If token NUM has a visible ID, format FORMAT with ID, USER_NUMBER. +m4_define([b4_token_format], +[b4_token_visible_if([$2], +[m4_format([[$1]], + b4_symbol([$2], [id]), + b4_symbol([$2], b4_api_token_raw_if([[number]], [[code]])))])]) + + +# b4_last_enum_token +# ------------------ +# The code of the last token visible token. +m4_define([_b4_last_enum_token], +[b4_token_visible_if([$1], + [m4_define([b4_last_enum_token], [$1])])]) +b4_symbol_foreach([_b4_last_enum_token]) + +# b4_last_symbol +# -------------- +# The code of the last symbol. +m4_define([b4_last_symbol], m4_eval(b4_tokens_number + b4_nterms_number - 1)) + +## ------- ## +## Types. ## +## ------- ## + +# _b4_type_action(NUMS) +# --------------------- +# Run actions for the symbol NUMS that all have the same type-name. +# Skip NUMS that have no type-name. +# +# To specify the action to run, define b4_dollar_dollar(SYMBOL-NUM, +# TAG, TYPE). +m4_define([_b4_type_action], +[b4_symbol_if([$1], [has_type], +[m4_map([ _b4_symbol_case], [$@])[]dnl + b4_dollar_dollar([b4_symbol([$1], [number])], + [b4_symbol([$1], [tag])], + [b4_symbol([$1], [type])]); + break; + +])]) + +# b4_type_foreach(MACRO, [SEP]) +# ----------------------------- +# Invoke MACRO(SYMBOL-NUMS) for each set of SYMBOL-NUMS for each type set. +m4_define([b4_type_foreach], + [m4_map_sep([$1], [$2], m4_defn([b4_type_names]))]) + + + +## ----------- ## +## Synclines. ## +## ----------- ## + +# b4_basename(NAME) +# ----------------- +# Similar to POSIX basename; the differences don't matter here. +# Beware that NAME is not evaluated. +m4_define([b4_basename], +[m4_bpatsubst([$1], [^.*/\([^/]+\)/*$], [\1])]) + + +# b4_syncline(LINE, FILE)dnl +# -------------------------- +# Should always be following by a dnl. +# +# Emit "#line LINE FILE /* __LINE__ __FILE__ */". +m4_define([b4_syncline], +[b4_flag_if([synclines], +[b4_sync_start([$1], [$2])[]dnl +b4_sync_end([__line__], [b4_basename(m4_quote(__file__))]) +])]) + +# b4_sync_start(LINE, FILE) +# ----------------------- +# Syncline for the new place. Typically a directive for the compiler. +m4_define([b4_sync_start], [b4_comment([$2:$1])]) + +# b4_sync_end(LINE, FILE) +# ----------------------- +# Syncline for the current place, which ends. Typically a comment +# left for the reader. +m4_define([b4_sync_end], [ b4_comment([$2:$1])] +) +# This generates dependencies on the Bison skeletons hence lots of +# useless 'git diff'. This location is useless for the regular +# user (who does not care about the skeletons) and is actually not +# useful for Bison developers too (I, Akim, never used this to locate +# the code in skeletons that generated output). So disable it +# completely. If someone thinks this was actually useful, a %define +# variable should be provided to control the level of verbosity of +# '#line', in replacement of --no-lines. +m4_define([b4_sync_end]) + + +# b4_user_code(USER-CODE) +# ----------------------- +# Emit code from the user, ending it with synclines. +m4_define([b4_user_code], +[$1 +b4_syncline([@oline@], [@ofile@])]) + + +# b4_define_user_code(MACRO, COMMENT) +# ----------------------------------- +# From b4_MACRO, if defined, build b4_user_MACRO that includes the synclines. +m4_define([b4_define_user_code], +[m4_define([b4_user_$1], + [m4_ifdef([b4_$1], + [m4_ifval([$2], + [b4_comment([$2]) +])b4_user_code([b4_$1])])])]) + +# b4_user_actions +# b4_user_initial_action +# b4_user_post_prologue +# b4_user_pre_prologue +# b4_user_union_members +# ---------------------- +# Macros that issue user code, ending with synclines. +b4_define_user_code([actions]) +b4_define_user_code([initial_action], [User initialization code.]) +b4_define_user_code([post_prologue], [Second part of user prologue.]) +b4_define_user_code([pre_prologue], [First part of user prologue.]) +b4_define_user_code([union_members]) + + +# b4_check_user_names(WHAT, USER-LIST, BISON-NAMESPACE) +# ----------------------------------------------------- +# Complain if any name of type WHAT is used by the user (as recorded in +# USER-LIST) but is not used by Bison (as recorded by macros in the +# namespace BISON-NAMESPACE). +# +# USER-LIST must expand to a list specifying all user occurrences of all names +# of type WHAT. Each item in the list must be a triplet specifying one +# occurrence: name, start boundary, and end boundary. Empty string names are +# fine. An empty list is fine. +# +# For example, to define b4_foo_user_names to be used for USER-LIST with three +# name occurrences and with correct quoting: +# +# m4_define([b4_foo_user_names], +# [[[[[[bar]], [[parser.y:1.7]], [[parser.y:1.16]]]], +# [[[[bar]], [[parser.y:5.7]], [[parser.y:5.16]]]], +# [[[[baz]], [[parser.y:8.7]], [[parser.y:8.16]]]]]]) +# +# The macro BISON-NAMESPACE(bar) must be defined iff the name bar of type WHAT +# is used by Bison (in the front-end or in the skeleton). Empty string names +# are fine, but it would be ugly for Bison to actually use one. +# +# For example, to use b4_foo_bison_names for BISON-NAMESPACE and define that +# the names bar and baz are used by Bison: +# +# m4_define([b4_foo_bison_names(bar)]) +# m4_define([b4_foo_bison_names(baz)]) +# +# To invoke b4_check_user_names with TYPE foo, with USER-LIST +# b4_foo_user_names, with BISON-NAMESPACE b4_foo_bison_names, and with correct +# quoting: +# +# b4_check_user_names([[foo]], [b4_foo_user_names], +# [[b4_foo_bison_names]]) +m4_define([b4_check_user_names], +[m4_foreach([b4_occurrence], $2, +[m4_pushdef([b4_occurrence], b4_occurrence)dnl +m4_pushdef([b4_user_name], m4_car(b4_occurrence))dnl +m4_pushdef([b4_start], m4_car(m4_shift(b4_occurrence)))dnl +m4_pushdef([b4_end], m4_shift2(b4_occurrence))dnl +m4_ifndef($3[(]m4_quote(b4_user_name)[)], + [b4_complain_at([b4_start], [b4_end], + [[%s '%s' is not used]], + [$1], [b4_user_name])])[]dnl +m4_popdef([b4_occurrence])dnl +m4_popdef([b4_user_name])dnl +m4_popdef([b4_start])dnl +m4_popdef([b4_end])dnl +])]) + + + +## --------------------- ## +## b4_percent_define_*. ## +## --------------------- ## + + +# b4_percent_define_use(VARIABLE) +# ------------------------------- +# Declare that VARIABLE was used. +m4_define([b4_percent_define_use], +[m4_define([b4_percent_define_bison_variables(]$1[)])dnl +]) + +# b4_percent_define_get(VARIABLE, [DEFAULT]) +# ------------------------------------------ +# Mimic muscle_percent_define_get in ../src/muscle-tab.h. That is, if +# the %define variable VARIABLE is defined, emit its value. Contrary +# to its C counterpart, return DEFAULT otherwise. Also, record +# Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_get([[foo]]) +m4_define([b4_percent_define_get], +[b4_percent_define_use([$1])dnl +_b4_percent_define_ifdef([$1], + [m4_indir([b4_percent_define(]$1[)])], + [$2])]) + +# b4_percent_define_get_loc(VARIABLE) +# ----------------------------------- +# Mimic muscle_percent_define_get_loc in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is undefined, complain fatally since that's +# a Bison or skeleton error. Otherwise, return its definition location in a +# form appropriate for the first two arguments of b4_warn_at, b4_complain_at, or +# b4_fatal_at. Don't record this as a Bison usage of VARIABLE as there's no +# reason to suspect that the user-supplied value has yet influenced the output. +# +# For example: +# +# b4_complain_at(b4_percent_define_get_loc([[foo]]), [[invalid foo]]) +m4_define([b4_percent_define_get_loc], +[m4_ifdef([b4_percent_define_loc(]$1[)], + [m4_pushdef([b4_loc], m4_indir([b4_percent_define_loc(]$1[)]))dnl +b4_loc[]dnl +m4_popdef([b4_loc])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_define_get_kind(VARIABLE) +# ------------------------------------ +# Get the kind (code, keyword, string) of VARIABLE, i.e., how its +# value was defined (braces, not delimiters, quotes). +# +# If the %define variable VARIABLE is undefined, complain fatally +# since that's a Bison or skeleton error. Don't record this as a +# Bison usage of VARIABLE as there's no reason to suspect that the +# user-supplied value has yet influenced the output. +m4_define([b4_percent_define_get_kind], +[m4_ifdef([b4_percent_define_kind(]$1[)], + [m4_indir([b4_percent_define_kind(]$1[)])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_define_get_syncline(VARIABLE)dnl +# ------------------------------------------- +# Should always be following by a dnl. +# +# Mimic muscle_percent_define_get_syncline in ../src/muscle-tab.h exactly. +# That is, if the %define variable VARIABLE is undefined, complain fatally +# since that's a Bison or skeleton error. Otherwise, return its definition +# location as a b4_syncline invocation. Don't record this as a Bison usage of +# VARIABLE as there's no reason to suspect that the user-supplied value has yet +# influenced the output. +# +# For example: +# +# b4_percent_define_get_syncline([[foo]]) +m4_define([b4_percent_define_get_syncline], +[m4_ifdef([b4_percent_define_syncline(]$1[)], + [m4_indir([b4_percent_define_syncline(]$1[)])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# _b4_percent_define_ifdef(VARIABLE, IF-TRUE, [IF-FALSE]) +# ------------------------------------------------------ +# If the %define variable VARIABLE is defined, expand IF-TRUE, else expand +# IF-FALSE. Don't record usage of VARIABLE. +# +# For example: +# +# _b4_percent_define_ifdef([[foo]], [[it's defined]], [[it's undefined]]) +m4_define([_b4_percent_define_ifdef], +[m4_ifdef([b4_percent_define(]$1[)], + [$2], + [$3])]) + +# b4_percent_define_ifdef(VARIABLE, IF-TRUE, [IF-FALSE]) +# ------------------------------------------------------ +# Mimic muscle_percent_define_ifdef in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is defined, expand IF-TRUE, else expand +# IF-FALSE. Also, record Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_ifdef([[foo]], [[it's defined]], [[it's undefined]]) +m4_define([b4_percent_define_ifdef], +[_b4_percent_define_ifdef([$1], + [b4_percent_define_use([$1])$2], + [$3])]) + + +# b4_percent_define_check_file_complain(VARIABLE) +# ----------------------------------------------- +# Warn about %define variable VARIABLE having an incorrect +# value. +m4_define([b4_percent_define_check_file_complain], +[b4_complain_at(b4_percent_define_get_loc([$1]), + [[%%define variable '%s' requires 'none' or '"..."' values]], + [$1])]) + + +# b4_percent_define_check_file(MACRO, VARIABLE, DEFAULT) +# ------------------------------------------------------ +# If the %define variable VARIABLE: +# - is undefined, then if DEFAULT is non-empty, define MACRO to DEFAULT +# - is a string, define MACRO to its value +# - is the keyword 'none', do nothing +# - otherwise, warn about the incorrect value. +m4_define([b4_percent_define_check_file], +[b4_percent_define_ifdef([$2], + [m4_case(b4_percent_define_get_kind([$2]), + [string], + [m4_define([$1], b4_percent_define_get([$2]))], + [keyword], + [m4_if(b4_percent_define_get([$2]), [none], [], + [b4_percent_define_check_file_complain([$2])])], + [b4_percent_define_check_file_complain([$2])]) + ], + [m4_ifval([$3], + [m4_define([$1], [$3])])]) +]) + + + +## --------- ## +## Options. ## +## --------- ## + + +# b4_percent_define_flag_if(VARIABLE, IF-TRUE, [IF-FALSE]) +# -------------------------------------------------------- +# Mimic muscle_percent_define_flag_if in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is defined to "" or "true", expand IF-TRUE. +# If it is defined to "false", expand IF-FALSE. Complain if it is undefined +# (a Bison or skeleton error since the default value should have been set +# already) or defined to any other value (possibly a user error). Also, record +# Bison's usage of VARIABLE by defining +# b4_percent_define_bison_variables(VARIABLE). +# +# For example: +# +# b4_percent_define_flag_if([[foo]], [[it's true]], [[it's false]]) +m4_define([b4_percent_define_flag_if], +[b4_percent_define_ifdef([$1], + [m4_case(b4_percent_define_get([$1]), + [], [$2], [true], [$2], [false], [$3], + [m4_expand_once([b4_complain_at(b4_percent_define_get_loc([$1]), + [[invalid value for %%define Boolean variable '%s']], + [$1])], + [[b4_percent_define_flag_if($1)]])])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + + +# b4_percent_define_default(VARIABLE, DEFAULT, [KIND = keyword]) +# -------------------------------------------------------------- +# Mimic muscle_percent_define_default in ../src/muscle-tab.h exactly. That is, +# if the %define variable VARIABLE is undefined, set its value to DEFAULT. +# Don't record this as a Bison usage of VARIABLE as there's no reason to +# suspect that the value has yet influenced the output. +# +# For example: +# +# b4_percent_define_default([[foo]], [[default value]]) +m4_define([_b4_percent_define_define], +[m4_define([b4_percent_define(]$1[)], [$2])dnl +m4_define([b4_percent_define_kind(]$1[)], + [m4_default([$3], [keyword])])dnl +m4_define([b4_percent_define_loc(]$1[)], + [[[[:-1.-1]], + [[:-1.-1]]]])dnl +m4_define([b4_percent_define_syncline(]$1[)], [[]])]) + +m4_define([b4_percent_define_default], +[_b4_percent_define_ifdef([$1], [], + [_b4_percent_define_define($@)])]) + + +# b4_percent_define_if_define(NAME, [VARIABLE = NAME]) +# ---------------------------------------------------- +# Define b4_NAME_if that executes its $1 or $2 depending whether +# VARIABLE was %defined. The characters '.' and `-' in VARIABLE are mapped +# to '_'. +m4_define([_b4_percent_define_if_define], +[m4_define(m4_bpatsubst([b4_$1_if], [[-.]], [_]), + [b4_percent_define_default([m4_default([$2], [$1])], [[false]])dnl +b4_percent_define_flag_if(m4_default([$2], [$1]), + [$3], [$4])])]) + +m4_define([b4_percent_define_if_define], +[_b4_percent_define_if_define([$1], [$2], $[1], $[2])]) + + +# b4_percent_define_check_kind(VARIABLE, KIND, [DIAGNOSTIC = complain]) +# --------------------------------------------------------------------- +m4_define([b4_percent_define_check_kind], +[_b4_percent_define_ifdef([$1], + [m4_if(b4_percent_define_get_kind([$1]), [$2], [], + [b4_error([m4_default([$3], [complain])], + b4_percent_define_get_loc([$1]), + [m4_case([$2], + [code], [[%%define variable '%s' requires '{...}' values]], + [keyword], [[%%define variable '%s' requires keyword values]], + [string], [[%%define variable '%s' requires '"..."' values]])], + [$1])])])dnl +]) + + +# b4_percent_define_check_values(VALUES) +# -------------------------------------- +# Mimic muscle_percent_define_check_values in ../src/muscle-tab.h exactly +# except that the VALUES structure is more appropriate for M4. That is, VALUES +# is a list of sublists of strings. For each sublist, the first string is the +# name of a %define variable, and all remaining strings in that sublist are the +# valid values for that variable. Complain if such a variable is undefined (a +# Bison error since the default value should have been set already) or defined +# to any other value (possibly a user error). Don't record this as a Bison +# usage of the variable as there's no reason to suspect that the value has yet +# influenced the output. +# +# For example: +# +# b4_percent_define_check_values([[[[foo]], [[foo-value1]], [[foo-value2]]]], +# [[[[bar]], [[bar-value1]]]]) +m4_define([b4_percent_define_check_values], +[m4_foreach([b4_sublist], m4_quote($@), + [_b4_percent_define_check_values(b4_sublist)])]) + +m4_define([_b4_percent_define_check_values], +[_b4_percent_define_ifdef([$1], + [b4_percent_define_check_kind(]$1[, [keyword], [deprecated])dnl + m4_pushdef([b4_good_value], [0])dnl + m4_if($#, 1, [], + [m4_foreach([b4_value], m4_dquote(m4_shift($@)), + [m4_if(m4_indir([b4_percent_define(]$1[)]), b4_value, + [m4_define([b4_good_value], [1])])])])dnl + m4_if(b4_good_value, [0], + [b4_complain_at(b4_percent_define_get_loc([$1]), + [[invalid value for %%define variable '%s': '%s']], + [$1], + m4_dquote(m4_indir([b4_percent_define(]$1[)]))) + m4_foreach([b4_value], m4_dquote(m4_shift($@)), + [b4_error([[note]], b4_percent_define_get_loc([$1]), [] + [[accepted value: '%s']], + m4_dquote(b4_value))])])dnl + m4_popdef([b4_good_value])], + [b4_fatal([[$0: undefined %%define variable '%s']], [$1])])]) + +# b4_percent_code_get([QUALIFIER]) +# -------------------------------- +# If any %code blocks for QUALIFIER are defined, emit them beginning with a +# comment and ending with synclines and a newline. If QUALIFIER is not +# specified or empty, do this for the unqualified %code blocks. Also, record +# Bison's usage of QUALIFIER (if specified) by defining +# b4_percent_code_bison_qualifiers(QUALIFIER). +# +# For example, to emit any unqualified %code blocks followed by any %code +# blocks for the qualifier foo: +# +# b4_percent_code_get +# b4_percent_code_get([[foo]]) +m4_define([b4_percent_code_get], +[m4_pushdef([b4_macro_name], [[b4_percent_code(]$1[)]])dnl +m4_ifval([$1], [m4_define([b4_percent_code_bison_qualifiers(]$1[)])])dnl +m4_ifdef(b4_macro_name, +[b4_comment(m4_if([$#], [0], [[[Unqualified %code blocks.]]], + [[["%code ]$1[" blocks.]]])) +b4_user_code([m4_indir(b4_macro_name)])])dnl +m4_popdef([b4_macro_name])]) + +# b4_percent_code_ifdef(QUALIFIER, IF-TRUE, [IF-FALSE]) +# ----------------------------------------------------- +# If any %code blocks for QUALIFIER (or unqualified %code blocks if +# QUALIFIER is empty) are defined, expand IF-TRUE, else expand IF-FALSE. +# Also, record Bison's usage of QUALIFIER (if specified) by defining +# b4_percent_code_bison_qualifiers(QUALIFIER). +m4_define([b4_percent_code_ifdef], +[m4_ifdef([b4_percent_code(]$1[)], + [m4_ifval([$1], [m4_define([b4_percent_code_bison_qualifiers(]$1[)])])$2], + [$3])]) + + +## ------------------ ## +## Common variables. ## +## ------------------ ## + + +# b4_parse_assert_if([IF-ASSERTIONS-ARE-USED], [IF-NOT]) +# b4_parse_trace_if([IF-DEBUG-TRACES-ARE-ENABLED], [IF-NOT]) +# b4_token_ctor_if([IF-YYLEX-RETURNS-A-TOKEN], [IF-NOT]) +# ---------------------------------------------------------- +b4_percent_define_if_define([api.token.raw]) +b4_percent_define_if_define([token_ctor], [api.token.constructor]) +b4_percent_define_if_define([locations]) # Whether locations are tracked. +b4_percent_define_if_define([parse.assert]) +b4_percent_define_if_define([parse.trace]) +b4_percent_define_if_define([posix]) + + +# b4_bison_locations_if([IF-TRUE]) +# -------------------------------- +# Expand IF-TRUE if using locations, and using the default location +# type. +m4_define([b4_bison_locations_if], +[b4_locations_if([b4_percent_define_ifdef([[api.location.type]], [], [$1])])]) + + + +# %define parse.error "(custom|detailed|simple|verbose)" +# ------------------------------------------------------ +b4_percent_define_default([[parse.error]], [[simple]]) +b4_percent_define_check_values([[[[parse.error]], + [[custom]], [[detailed]], [[simple]], [[verbose]]]]) + +# b4_parse_error_case(CASE1, THEN1, CASE2, THEN2, ..., ELSE) +# ---------------------------------------------------------- +m4_define([b4_parse_error_case], +[m4_case(b4_percent_define_get([[parse.error]]), $@)]) + +# b4_parse_error_bmatch(PATTERN1, THEN1, PATTERN2, THEN2, ..., ELSE) +# ------------------------------------------------------------------ +m4_define([b4_parse_error_bmatch], +[m4_bmatch(b4_percent_define_get([[parse.error]]), $@)]) + + + +# b4_union_if([IF-UNION-ARE-USED], [IF-NOT]) +# b4_variant_if([IF-VARIANT-ARE-USED], [IF-NOT]) +# ---------------------------------------------- +# Depend on whether api.value.type is union, or variant. +m4_define([b4_union_flag], [[0]]) +m4_define([b4_variant_flag], [[0]]) +b4_percent_define_ifdef([[api.value.type]], + [m4_case(b4_percent_define_get_kind([[api.value.type]]), [keyword], + [m4_case(b4_percent_define_get([[api.value.type]]), + [union], [m4_define([b4_union_flag], [[1]])], + [variant], [m4_define([b4_variant_flag], [[1]])])])]) +b4_define_flag_if([union]) +b4_define_flag_if([variant]) + + +## ----------------------------------------------------------- ## +## After processing the skeletons, check that all the user's ## +## %define variables and %code qualifiers were used by Bison. ## +## ----------------------------------------------------------- ## + +m4_define([b4_check_user_names_wrap], +[m4_ifdef([b4_percent_]$1[_user_]$2[s], + [b4_check_user_names([[%]$1 $2], + [b4_percent_]$1[_user_]$2[s], + [[b4_percent_]$1[_bison_]$2[s]])])]) + +m4_wrap_lifo([ +b4_check_user_names_wrap([[define]], [[variable]]) +b4_check_user_names_wrap([[code]], [[qualifier]]) +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# m4_define_default([b4_lex_param], []) dnl breaks other skeletons +m4_define_default([b4_epilogue], []) +m4_define_default([b4_parse_param], []) + +# The initial column and line. +m4_define_default([b4_location_initial_column], [1]) +m4_define_default([b4_location_initial_line], [1]) + + +## --------------- ## +## Sanity checks. ## +## --------------- ## + +# api.location.type={...} (C, C++ and Java). +b4_percent_define_check_kind([api.location.type], [code], [deprecated]) + +# api.position.type={...} (Java). +b4_percent_define_check_kind([api.position.type], [code], [deprecated]) + +# api.prefix >< %name-prefix. +b4_percent_define_check_kind([api.prefix], [code], [deprecated]) +b4_percent_define_ifdef([api.prefix], +[m4_ifdef([b4_prefix], +[b4_complain_at(b4_percent_define_get_loc([api.prefix]), + [['%s' and '%s' cannot be used together]], + [%name-prefix], + [%define api.prefix])])]) + +# api.token.prefix={...} +# Make it a warning for those who used betas of Bison 3.0. +b4_percent_define_check_kind([api.token.prefix], [code], [deprecated]) + +# api.value.type >< %union. +b4_percent_define_ifdef([api.value.type], +[m4_ifdef([b4_union_members], +[b4_complain_at(b4_percent_define_get_loc([api.value.type]), + [['%s' and '%s' cannot be used together]], + [%union], + [%define api.value.type])])]) + +# api.value.type=union >< %yacc. +b4_percent_define_ifdef([api.value.type], +[m4_if(b4_percent_define_get([api.value.type]), [union], +[b4_yacc_if(dnl +[b4_complain_at(b4_percent_define_get_loc([api.value.type]), + [['%s' and '%s' cannot be used together]], + [%yacc], + [%define api.value.type "union"])])])]) + +# api.value.union.name. +b4_percent_define_check_kind([api.value.union.name], [keyword]) + +# parse.error (custom|detailed) >< token-table. +b4_token_table_if( +[b4_parse_error_bmatch([custom\|detailed], +[b4_complain_at(b4_percent_define_get_loc([parse.error]), + [['%s' and '%s' cannot be used together]], + [%token-table], + [%define parse.error (custom|detailed)])])]) diff --git a/bison/RelWithDebInfo/data/skeletons/c++-skel.m4 b/bison/RelWithDebInfo/data/skeletons/c++-skel.m4 new file mode 100644 index 0000000..f22002b --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/c++-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# C++ skeleton dispatching for Bison. + +# Copyright (C) 2006-2007, 2009-2015, 2018-2021 Free Software +# Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.cc]])]) +b4_nondeterministic_if([m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.cc]])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.cc]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/bison/RelWithDebInfo/data/skeletons/c++.m4 b/bison/RelWithDebInfo/data/skeletons/c++.m4 new file mode 100644 index 0000000..2ae8423 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/c++.m4 @@ -0,0 +1,778 @@ + -*- Autoconf -*- + +# C++ skeleton for Bison + +# Copyright (C) 2002-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Sanity checks, before defaults installed by c.m4. +b4_percent_define_ifdef([[api.value.union.name]], + [b4_complain_at(b4_percent_define_get_loc([[api.value.union.name]]), + [named %union is invalid in C++])]) + +b4_percent_define_default([[api.symbol.prefix]], [[S_]]) + +m4_include(b4_skeletonsdir/[c.m4]) + +b4_percent_define_check_kind([api.namespace], [code], [deprecated]) +b4_percent_define_check_kind([api.parser.class], [code], [deprecated]) + + +## ----- ## +## C++. ## +## ----- ## + +# b4_comment(TEXT, [PREFIX]) +# -------------------------- +# Put TEXT in comment. Prefix all the output lines with PREFIX. +m4_define([b4_comment], +[_b4_comment([$1], [$2// ], [$2// ])]) + + +# b4_inline(hh|cc) +# ---------------- +# Expand to `inline\n ` if $1 is hh. +m4_define([b4_inline], +[m4_case([$1], + [cc], [], + [hh], [[inline + ]], + [m4_fatal([$0: invalid argument: $1])])]) + + +# b4_cxx_portability +# ------------------ +m4_define([b4_cxx_portability], +[#if defined __cplusplus +# define YY_CPLUSPLUS __cplusplus +#else +# define YY_CPLUSPLUS 199711L +#endif + +// Support move semantics when possible. +#if 201103L <= YY_CPLUSPLUS +# define YY_MOVE std::move +# define YY_MOVE_OR_COPY move +# define YY_MOVE_REF(Type) Type&& +# define YY_RVREF(Type) Type&& +# define YY_COPY(Type) Type +#else +# define YY_MOVE +# define YY_MOVE_OR_COPY copy +# define YY_MOVE_REF(Type) Type& +# define YY_RVREF(Type) const Type& +# define YY_COPY(Type) const Type& +#endif + +// Support noexcept when possible. +#if 201103L <= YY_CPLUSPLUS +# define YY_NOEXCEPT noexcept +# define YY_NOTHROW +#else +# define YY_NOEXCEPT +# define YY_NOTHROW throw () +#endif + +// Support constexpr when possible. +#if 201703 <= YY_CPLUSPLUS +# define YY_CONSTEXPR constexpr +#else +# define YY_CONSTEXPR +#endif[]dnl +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +b4_percent_define_default([[api.parser.class]], [[parser]]) + +# Don't do that so that we remember whether we're using a user +# request, or the default value. +# +# b4_percent_define_default([[api.location.type]], [[location]]) + +b4_percent_define_default([[api.filename.type]], [[const std::string]]) +# Make it a warning for those who used betas of Bison 3.0. +b4_percent_define_default([[api.namespace]], m4_defn([b4_prefix])) + +b4_percent_define_default([[define_location_comparison]], + [m4_if(b4_percent_define_get([[filename_type]]), + [std::string], [[true]], [[false]])]) + + + +## ----------- ## +## Namespace. ## +## ----------- ## + +m4_define([b4_namespace_ref], [b4_percent_define_get([[api.namespace]])]) + + +# Don't permit an empty b4_namespace_ref. Any '::parser::foo' appended to it +# would compile as an absolute reference with 'parser' in the global namespace. +# b4_namespace_open would open an anonymous namespace and thus establish +# internal linkage. This would compile. However, it's cryptic, and internal +# linkage for the parser would be specified in all translation units that +# include the header, which is always generated. If we ever need to permit +# internal linkage somehow, surely we can find a cleaner approach. +m4_if(m4_bregexp(b4_namespace_ref, [^[ ]*$]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference is empty]])]) + +# Instead of assuming the C++ compiler will do it, Bison should reject any +# invalid b4_namespace_ref that would be converted to a valid +# b4_namespace_open. The problem is that Bison doesn't always output +# b4_namespace_ref to uncommented code but should reserve the ability to do so +# in future releases without risking breaking any existing user grammars. +# Specifically, don't allow empty names as b4_namespace_open would just convert +# those into anonymous namespaces, and that might tempt some users. +m4_if(m4_bregexp(b4_namespace_ref, [::[ ]*::]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference has consecutive "::"]])]) +m4_if(m4_bregexp(b4_namespace_ref, [::[ ]*$]), [-1], [], +[b4_complain_at(b4_percent_define_get_loc([[api.namespace]]), + [[namespace reference has a trailing "::"]])]) + +m4_define([b4_namespace_open], +[b4_user_code([b4_percent_define_get_syncline([[api.namespace]])dnl +[namespace ]m4_bpatsubst(m4_dquote(m4_bpatsubst(m4_dquote(b4_namespace_ref), + [^\(.\)[ ]*::], [\1])), + [::], [ { namespace ])[ {]])]) + +m4_define([b4_namespace_close], +[b4_user_code([b4_percent_define_get_syncline([[api.namespace]])dnl +m4_bpatsubst(m4_dquote(m4_bpatsubst(m4_dquote(b4_namespace_ref[ ]), + [^\(.\)[ ]*\(::\)?\([^][:]\|:[^:]\)*], + [\1])), + [::\([^][:]\|:[^:]\)*], [} ])[} // ]b4_namespace_ref])]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + + +# b4_token_enums +# -------------- +# Output the definition of the token kinds. +m4_define([b4_token_enums], +[[enum token_kind_type + { + ]b4_symbol([-2], [id])[ = -2, +]b4_symbol_foreach([b4_token_enum])dnl +[ };]dnl +]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[enum symbol_kind_type + { + YYNTOKENS = ]b4_tokens_number[, ///< Number of tokens. + ]b4_symbol(empty, kind_base)[ = -2, +]b4_symbol_foreach([ b4_symbol_enum])dnl +[ };]]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + + +# b4_value_type_declare +# --------------------- +# Declare value_type. +m4_define([b4_value_type_declare], +[b4_value_type_setup[]dnl +[ /// Symbol semantic values. +]m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), +[code], +[[ typedef ]b4_percent_define_get([[api.value.type]])[ value_type;]], +[m4_bmatch(b4_percent_define_get([[api.value.type]]), +[union\|union-directive], +[[ union value_type + { +]b4_user_union_members[ + };]])])dnl +]) + + +# b4_public_types_declare +# ----------------------- +# Define the public types: token, semantic value, location, and so forth. +# Depending on %define token_lex, may be output in the header or source file. +m4_define([b4_public_types_declare], +[b4_glr2_cc_if( +[b4_value_type_declare], +[[#ifdef ]b4_api_PREFIX[STYPE +# ifdef __GNUC__ +# pragma GCC message "bison: do not #define ]b4_api_PREFIX[STYPE in C++, use %define api.value.type" +# endif + typedef ]b4_api_PREFIX[STYPE value_type; +#else +]b4_value_type_declare[ +#endif + /// Backward compatibility (Bison 3.8). + typedef value_type semantic_type; +]])[]b4_locations_if([ + /// Symbol locations. + typedef b4_percent_define_get([[api.location.type]], + [[location]]) location_type;])[ + + /// Syntax errors thrown from user actions. + struct syntax_error : std::runtime_error + { + syntax_error (]b4_locations_if([const location_type& l, ])[const std::string& m) + : std::runtime_error (m)]b4_locations_if([ + , location (l)])[ + {} + + syntax_error (const syntax_error& s) + : std::runtime_error (s.what ())]b4_locations_if([ + , location (s.location)])[ + {} + + ~syntax_error () YY_NOEXCEPT YY_NOTHROW;]b4_locations_if([ + + location_type location;])[ + }; + + /// Token kinds. + struct token + { + ]b4_token_enums[]b4_glr2_cc_if([], [[ + /// Backward compatibility alias (Bison 3.6). + typedef token_kind_type yytokentype;]])[ + }; + + /// Token kind, as returned by yylex. + typedef token::token_kind_type token_kind_type;]b4_glr2_cc_if([], [[ + + /// Backward compatibility alias (Bison 3.6). + typedef token_kind_type token_type;]])[ + + /// Symbol kinds. + struct symbol_kind + { + ]b4_declare_symbol_enum[ + }; + + /// (Internal) symbol kind. + typedef symbol_kind::symbol_kind_type symbol_kind_type; + + /// The number of tokens. + static const symbol_kind_type YYNTOKENS = symbol_kind::YYNTOKENS; +]]) + + +# b4_symbol_type_define +# --------------------- +# Define symbol_type, the external type for symbols used for symbol +# constructors. +m4_define([b4_symbol_type_define], +[[ /// A complete symbol. + /// + /// Expects its Base type to provide access to the symbol kind + /// via kind (). + /// + /// Provide access to semantic value]b4_locations_if([ and location])[. + template + struct basic_symbol : Base + { + /// Alias to Base. + typedef Base super_type; + + /// Default constructor. + basic_symbol () YY_NOEXCEPT + : value ()]b4_locations_if([ + , location ()])[ + {} + +#if 201103L <= YY_CPLUSPLUS + /// Move constructor. + basic_symbol (basic_symbol&& that) + : Base (std::move (that)) + , value (]b4_variant_if([], [std::move (that.value)]))b4_locations_if([ + , location (std::move (that.location))])[ + {]b4_variant_if([ + b4_symbol_variant([this->kind ()], [value], [move], + [std::move (that.value)]) + ])[} +#endif + + /// Copy constructor. + basic_symbol (const basic_symbol& that);]b4_variant_if([[ + + /// Constructors for typed symbols. +]b4_type_foreach([b4_basic_symbol_constructor_define], [ +])], [[ + /// Constructor for valueless symbols. + basic_symbol (typename Base::kind_type t]b4_locations_if([, + YY_MOVE_REF (location_type) l])[); + + /// Constructor for symbols with semantic value. + basic_symbol (typename Base::kind_type t, + YY_RVREF (value_type) v]b4_locations_if([, + YY_RVREF (location_type) l])[); +]])[ + /// Destroy the symbol. + ~basic_symbol () + { + clear (); + } + +]b4_glr2_cc_if([[ + /// Copy assignment. + basic_symbol& operator= (const basic_symbol& that) + { + Base::operator= (that);]b4_variant_if([[ + ]b4_symbol_variant([this->kind ()], [value], [copy], + [that.value])], [[ + value = that.value]])[;]b4_locations_if([[ + location = that.location;]])[ + return *this; + } + + /// Move assignment. + basic_symbol& operator= (basic_symbol&& that) + { + Base::operator= (std::move (that));]b4_variant_if([[ + ]b4_symbol_variant([this->kind ()], [value], [move], + [std::move (that.value)])], [[ + value = std::move (that.value)]])[;]b4_locations_if([[ + location = std::move (that.location);]])[ + return *this; + } +]])[ + + /// Destroy contents, and record that is empty. + void clear () YY_NOEXCEPT + {]b4_variant_if([[ + // User destructor. + symbol_kind_type yykind = this->kind (); + basic_symbol& yysym = *this; + (void) yysym; + switch (yykind) + { +]b4_symbol_foreach([b4_symbol_destructor])dnl +[ default: + break; + } + + // Value type destructor. +]b4_symbol_variant([[yykind]], [[value]], [[template destroy]])])[ + Base::clear (); + } + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of this symbol. + const char *name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + }]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of this symbol. + const char *name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of this symbol. + std::string name () const YY_NOEXCEPT + { + return ]b4_parser_class[::symbol_name (this->kind ()); + }]])[]b4_glr2_cc_if([], [[ + + /// Backward compatibility (Bison 3.6). + symbol_kind_type type_get () const YY_NOEXCEPT;]])[ + + /// Whether empty. + bool empty () const YY_NOEXCEPT; + + /// Destructive move, \a s is emptied into this. + void move (basic_symbol& s); + + /// The semantic value. + value_type value;]b4_locations_if([ + + /// The location. + location_type location;])[ + + private: +#if YY_CPLUSPLUS < 201103L + /// Assignment operator. + basic_symbol& operator= (const basic_symbol& that); +#endif + }; + + /// Type access provider for token (enum) based symbols. + struct by_kind + { + /// The symbol kind as needed by the constructor. + typedef token_kind_type kind_type; + + /// Default constructor. + by_kind () YY_NOEXCEPT; + +#if 201103L <= YY_CPLUSPLUS + /// Move constructor. + by_kind (by_kind&& that) YY_NOEXCEPT; +#endif + + /// Copy constructor. + by_kind (const by_kind& that) YY_NOEXCEPT; + + /// Constructor from (external) token numbers. + by_kind (kind_type t) YY_NOEXCEPT; + +]b4_glr2_cc_if([[ + /// Copy assignment. + by_kind& operator= (const by_kind& that); + + /// Move assignment. + by_kind& operator= (by_kind&& that); +]])[ + + /// Record that this symbol is empty. + void clear () YY_NOEXCEPT; + + /// Steal the symbol kind from \a that. + void move (by_kind& that); + + /// The (internal) type number (corresponding to \a type). + /// \a empty when empty. + symbol_kind_type kind () const YY_NOEXCEPT;]b4_glr2_cc_if([], [[ + + /// Backward compatibility (Bison 3.6). + symbol_kind_type type_get () const YY_NOEXCEPT;]])[ + + /// The symbol kind. + /// \a ]b4_symbol_prefix[YYEMPTY when empty. + symbol_kind_type kind_; + };]b4_glr2_cc_if([], [[ + + /// Backward compatibility for a private implementation detail (Bison 3.6). + typedef by_kind by_type;]])[ + + /// "External" symbols: returned by the scanner. + struct symbol_type : basic_symbol + {]b4_variant_if([[ + /// Superclass. + typedef basic_symbol super_type; + + /// Empty symbol. + symbol_type () YY_NOEXCEPT {} + + /// Constructor for valueless symbols, and symbols from each type. +]b4_type_foreach([_b4_symbol_constructor_define])dnl + ])[}; +]]) + + +# b4_public_types_define(hh|cc) +# ----------------------------- +# Provide the implementation needed by the public types. +m4_define([b4_public_types_define], +[[ // basic_symbol. + template + ]b4_parser_class[::basic_symbol::basic_symbol (const basic_symbol& that) + : Base (that) + , value (]b4_variant_if([], [that.value]))b4_locations_if([ + , location (that.location)])[ + {]b4_variant_if([ + b4_symbol_variant([this->kind ()], [value], [copy], + [YY_MOVE (that.value)]) + ])[} + +]b4_variant_if([], [[ + /// Constructor for valueless symbols. + template + ]b4_parser_class[::basic_symbol::basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_locations_if([YY_MOVE_REF (location_type) l]))[) + : Base (t) + , value ()]b4_locations_if([ + , location (l)])[ + {} + + template + ]b4_parser_class[::basic_symbol::basic_symbol (]b4_join( + [typename Base::kind_type t], + [YY_RVREF (value_type) v], + b4_locations_if([YY_RVREF (location_type) l]))[) + : Base (t) + , value (]b4_variant_if([], [YY_MOVE (v)])[)]b4_locations_if([ + , location (YY_MOVE (l))])[ + {]b4_variant_if([[ + (void) v; + ]b4_symbol_variant([this->kind ()], [value], [YY_MOVE_OR_COPY], [YY_MOVE (v)])])[}]])[ + +]b4_glr2_cc_if([], [[ + template + ]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::basic_symbol::type_get () const YY_NOEXCEPT + { + return this->kind (); + } +]])[ + + template + bool + ]b4_parser_class[::basic_symbol::empty () const YY_NOEXCEPT + { + return this->kind () == ]b4_symbol(empty, kind)[; + } + + template + void + ]b4_parser_class[::basic_symbol::move (basic_symbol& s) + { + super_type::move (s); + ]b4_variant_if([b4_symbol_variant([this->kind ()], [value], [move], + [YY_MOVE (s.value)])], + [value = YY_MOVE (s.value);])[]b4_locations_if([ + location = YY_MOVE (s.location);])[ + } + + // by_kind. + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind () YY_NOEXCEPT + : kind_ (]b4_symbol(empty, kind)[) + {} + +#if 201103L <= YY_CPLUSPLUS + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (by_kind&& that) YY_NOEXCEPT + : kind_ (that.kind_) + { + that.clear (); + } +#endif + + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (const by_kind& that) YY_NOEXCEPT + : kind_ (that.kind_) + {} + + ]b4_inline([$1])b4_parser_class[::by_kind::by_kind (token_kind_type t) YY_NOEXCEPT + : kind_ (yytranslate_ (t)) + {} + +]b4_glr2_cc_if([[ + ]b4_inline([$1])]b4_parser_class[::by_kind& + b4_parser_class[::by_kind::by_kind::operator= (const by_kind& that) + { + kind_ = that.kind_; + return *this; + } + + ]b4_inline([$1])]b4_parser_class[::by_kind& + b4_parser_class[::by_kind::by_kind::operator= (by_kind&& that) + { + kind_ = that.kind_; + that.clear (); + return *this; + } +]])[ + + ]b4_inline([$1])[void + ]b4_parser_class[::by_kind::clear () YY_NOEXCEPT + { + kind_ = ]b4_symbol(empty, kind)[; + } + + ]b4_inline([$1])[void + ]b4_parser_class[::by_kind::move (by_kind& that) + { + kind_ = that.kind_; + that.clear (); + } + + ]b4_inline([$1])[]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_kind::kind () const YY_NOEXCEPT + { + return kind_; + } + +]b4_glr2_cc_if([], [[ + ]b4_inline([$1])[]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_kind::type_get () const YY_NOEXCEPT + { + return this->kind (); + } +]])[ +]]) + + +# b4_token_constructor_define +# ---------------------------- +# Define make_FOO for all the token kinds. +# Use at class-level. Redefined in variant.hh. +m4_define([b4_token_constructor_define], []) + + +# b4_yytranslate_define(cc|hh) +# ---------------------------- +# Define yytranslate_. Sometimes used in the header file ($1=hh), +# sometimes in the cc file. +m4_define([b4_yytranslate_define], +[ b4_inline([$1])b4_parser_class[::symbol_kind_type + ]b4_parser_class[::yytranslate_ (int t) YY_NOEXCEPT + { +]b4_api_token_raw_if( +[[ return static_cast (t);]], +[[ // YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to + // TOKEN-NUM as returned by yylex. + static + const ]b4_int_type_for([b4_translate])[ + translate_table[] = + { + ]b4_translate[ + }; + // Last valid token kind. + const int code_max = ]b4_code_max[; + + if (t <= 0) + return symbol_kind::]b4_symbol_prefix[YYEOF; + else if (t <= code_max) + return static_cast (translate_table[t]); + else + return symbol_kind::]b4_symbol_prefix[YYUNDEF;]])[ + } +]]) + + +# b4_lhs_value([TYPE]) +# -------------------- +m4_define([b4_lhs_value], +[b4_symbol_value([yyval], [$1])]) + + +# b4_rhs_value(RULE-LENGTH, POS, [TYPE]) +# -------------------------------------- +# FIXME: Dead code. +m4_define([b4_rhs_value], +[b4_symbol_value([yysemantic_stack_@{($1) - ($2)@}], [$3])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(yylocation_stack_@{($1) - ($2)@})]) + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +# Change the parameter names from "foo" into "foo_yyarg", so that +# there is no collision bw the user chosen attribute name, and the +# argument name in the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [m4_map_sep([b4_parse_param_decl_1], [, ], [b4_parse_param])])]) + +m4_define([b4_parse_param_decl_1], +[$1_yyarg]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [ + b4_cc_constructor_calls(b4_parse_param)])]) +m4_define([b4_cc_constructor_calls], + [m4_map_sep([b4_cc_constructor_call], [, + ], [$@])]) +m4_define([b4_cc_constructor_call], + [$2 ($2_yyarg)]) + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + // User arguments. +b4_cc_var_decls(b4_parse_param)])]) +m4_define([b4_cc_var_decls], + [m4_map_sep([b4_cc_var_decl], [ +], [$@])]) +m4_define([b4_cc_var_decl], + [ $1;]) + + +## ---------## +## Values. ## +## ---------## + +# b4_yylloc_default_define +# ------------------------ +# Define YYLLOC_DEFAULT. +m4_define([b4_yylloc_default_define], +[[/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +# ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).begin = YYRHSLOC (Rhs, 1).begin; \ + (Current).end = YYRHSLOC (Rhs, N).end; \ + } \ + else \ + { \ + (Current).begin = (Current).end = YYRHSLOC (Rhs, 0).end; \ + } \ + while (false) +# endif +]]) + +## -------- ## +## Checks. ## +## -------- ## + +b4_token_ctor_if([b4_variant_if([], + [b4_fatal_at(b4_percent_define_get_loc(api.token.constructor), + [cannot use '%s' without '%s'], + [%define api.token.constructor], + [%define api.value.type variant]))])]) diff --git a/bison/RelWithDebInfo/data/skeletons/c-like.m4 b/bison/RelWithDebInfo/data/skeletons/c-like.m4 new file mode 100644 index 0000000..a9bbc2e --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/c-like.m4 @@ -0,0 +1,72 @@ + -*- Autoconf -*- + +# Common code for C-like languages (C, C++, Java, etc.) + +# Copyright (C) 2012-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# _b4_comment(TEXT, OPEN, CONTINUE, END) +# -------------------------------------- +# Put TEXT in comment. Avoid trailing spaces: don't indent empty lines. +# Avoid adding indentation to the first line, as the indentation comes +# from OPEN. That's why we don't patsubst([$1], [^\(.\)], [ \1]). +# Turn "*/" in TEXT into "* /" so that we don't unexpectedly close +# the comments before its end. +# +# Prefix all the output lines with PREFIX. +m4_define([_b4_comment], +[$2[]b4_gsub(m4_expand([$1]), + [[*]/], [*\\/], + [/[*]], [/\\*], + [ +\(.\)], [ +$3\1])$4]) + + +# b4_comment(TEXT, [PREFIX]) +# -------------------------- +# Put TEXT in comment. Prefix all the output lines with PREFIX. +m4_define([b4_comment], +[_b4_comment([$1], [$2/* ], [$2 ], [ */])]) + + + + +# _b4_dollar_dollar(VALUE, SYMBOL-NUM, FIELD, DEFAULT-FIELD) +# ---------------------------------------------------------- +# If FIELD (or DEFAULT-FIELD) is non-null, return "VALUE.FIELD", +# otherwise just VALUE. Be sure to pass "(VALUE)" if VALUE is a +# pointer. +m4_define([_b4_dollar_dollar], +[b4_symbol_value([$1], + [$2], + m4_if([$3], [[]], + [[$4]], [[$3]]))]) + +# b4_dollar_pushdef(VALUE-POINTER, SYMBOL-NUM, [TYPE_TAG], LOCATION) +# b4_dollar_popdef +# ------------------------------------------------------------------ +# Define b4_dollar_dollar for VALUE-POINTER and DEFAULT-FIELD, +# and b4_at_dollar for LOCATION. +m4_define([b4_dollar_pushdef], +[m4_pushdef([b4_dollar_dollar], + [_b4_dollar_dollar([$1], [$2], m4_dquote($][1), [$3])])dnl +m4_pushdef([b4_at_dollar], [$4])dnl +]) +m4_define([b4_dollar_popdef], +[m4_popdef([b4_at_dollar])dnl +m4_popdef([b4_dollar_dollar])dnl +]) diff --git a/bison/RelWithDebInfo/data/skeletons/c-skel.m4 b/bison/RelWithDebInfo/data/skeletons/c-skel.m4 new file mode 100644 index 0000000..ac6ddd6 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/c-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# C skeleton dispatching for Bison. + +# Copyright (C) 2006-2007, 2009-2015, 2018-2021 Free Software +# Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.c]])]) +b4_nondeterministic_if([m4_define([b4_used_skeleton], [b4_skeletonsdir/[glr.c]])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[yacc.c]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/bison/RelWithDebInfo/data/skeletons/c.m4 b/bison/RelWithDebInfo/data/skeletons/c.m4 new file mode 100644 index 0000000..2425b07 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/c.m4 @@ -0,0 +1,1125 @@ + -*- Autoconf -*- + +# C M4 Macros for Bison. + +# Copyright (C) 2002, 2004-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c-like.m4]) + +# b4_tocpp(STRING) +# ---------------- +# Convert STRING into a valid C macro name. +m4_define([b4_tocpp], +[m4_toupper(m4_bpatsubst(m4_quote($1), [[^a-zA-Z0-9]+], [_]))]) + + +# b4_cpp_guard(FILE) +# ------------------ +# A valid C macro name to use as a CPP header guard for FILE. +m4_define([b4_cpp_guard], +[[YY_]b4_tocpp(m4_defn([b4_prefix])/[$1])[_INCLUDED]]) + + +# b4_cpp_guard_open(FILE) +# b4_cpp_guard_close(FILE) +# ------------------------ +# If FILE does not expand to nothing, open/close CPP inclusion guards for FILE. +m4_define([b4_cpp_guard_open], +[m4_ifval(m4_quote($1), +[#ifndef b4_cpp_guard([$1]) +# define b4_cpp_guard([$1])])]) + +m4_define([b4_cpp_guard_close], +[m4_ifval(m4_quote($1), +[#endif b4_comment([!b4_cpp_guard([$1])])])]) + + +## ---------------- ## +## Identification. ## +## ---------------- ## + +# b4_identification +# ----------------- +# Depends on individual skeletons to define b4_pure_flag, b4_push_flag, or +# b4_pull_flag if they use the values of the %define variables api.pure or +# api.push-pull. +m4_define([b4_identification], +[[/* Identify Bison output, and Bison version. */ +#define YYBISON ]b4_version[ + +/* Bison version string. */ +#define YYBISON_VERSION "]b4_version_string[" + +/* Skeleton name. */ +#define YYSKELETON_NAME ]b4_skeleton[]m4_ifdef([b4_pure_flag], [[ + +/* Pure parsers. */ +#define YYPURE ]b4_pure_flag])[]m4_ifdef([b4_push_flag], [[ + +/* Push parsers. */ +#define YYPUSH ]b4_push_flag])[]m4_ifdef([b4_pull_flag], [[ + +/* Pull parsers. */ +#define YYPULL ]b4_pull_flag])[ +]]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# b4_api_prefix, b4_api_PREFIX +# ---------------------------- +# Corresponds to %define api.prefix +b4_percent_define_default([[api.prefix]], [[yy]]) +m4_define([b4_api_prefix], +[b4_percent_define_get([[api.prefix]])]) +m4_define([b4_api_PREFIX], +[m4_toupper(b4_api_prefix)]) + + +# b4_prefix +# --------- +# If the %name-prefix is not given, it is api.prefix. +m4_define_default([b4_prefix], [b4_api_prefix]) + +# If the %union is not named, its name is YYSTYPE. +b4_percent_define_default([[api.value.union.name]], + [b4_api_PREFIX[][STYPE]]) + +b4_percent_define_default([[api.symbol.prefix]], [[YYSYMBOL_]]) + +## ------------------------ ## +## Pure/impure interfaces. ## +## ------------------------ ## + +# b4_yylex_formals +# ---------------- +# All the yylex formal arguments. +# b4_lex_param arrives quoted twice, but we want to keep only one level. +m4_define([b4_yylex_formals], +[b4_pure_if([[[b4_api_PREFIX[STYPE *yylvalp]], [[&yylval]]][]dnl +b4_locations_if([, [b4_api_PREFIX[LTYPE *yyllocp], [&yylloc]]])])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param)]) + + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_function_call([yylex], [int], b4_yylex_formals)]) + + +# b4_user_args +# ------------ +m4_define([b4_user_args], +[m4_ifset([b4_parse_param], [, b4_user_args_no_comma])]) + +# b4_user_args_no_comma +# --------------------- +m4_define([b4_user_args_no_comma], +[m4_ifset([b4_parse_param], [b4_args(b4_parse_param)])]) + + +# b4_user_formals +# --------------- +# The possible parse-params formal arguments preceded by a comma. +m4_define([b4_user_formals], +[m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])]) + + +# b4_parse_param +# -------------- +# If defined, b4_parse_param arrives double quoted, but below we prefer +# it to be single quoted. +m4_define([b4_parse_param], +b4_parse_param) + + +# b4_parse_param_for(DECL, FORMAL, BODY) +# --------------------------------------- +# Iterate over the user parameters, binding the declaration to DECL, +# the formal name to FORMAL, and evaluating the BODY. +m4_define([b4_parse_param_for], +[m4_foreach([$1_$2], m4_defn([b4_parse_param]), +[m4_pushdef([$1], m4_unquote(m4_car($1_$2)))dnl +m4_pushdef([$2], m4_shift($1_$2))dnl +$3[]dnl +m4_popdef([$2])dnl +m4_popdef([$1])dnl +])]) + + +# b4_use(EXPR) +# ------------ +# Pacify the compiler about some maybe unused value. +m4_define([b4_use], +[YY_USE ($1)]) + +# b4_parse_param_use([VAL], [LOC]) +# -------------------------------- +# 'YY_USE' VAL, LOC if locations are enabled, and all the parse-params. +m4_define([b4_parse_param_use], +[m4_ifvaln([$1], [ b4_use([$1]);])dnl +b4_locations_if([m4_ifvaln([$2], [ b4_use([$2]);])])dnl +b4_parse_param_for([Decl], [Formal], [ b4_use(Formal); +])dnl +]) + + +## ------------ ## +## Data Types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return a narrow int type able to handle integers ranging from MIN +# to MAX (included) in portable C code. Assume MIN and MAX fall in +# 'int' range. +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-127], [127]), [1], [signed char], + b4_ints_in($@, [0], [255]), [1], [unsigned char], + + b4_ints_in($@, [-32767], [32767]), [1], [short], + b4_ints_in($@, [0], [65535]), [1], [unsigned short], + + [int])]) + +# b4_c99_int_type(MIN, MAX) +# ------------------------- +# Like b4_int_type, but for C99. +# b4_c99_int_type_define replaces b4_int_type with this. +m4_define([b4_c99_int_type], +[m4_if(b4_ints_in($@, [-127], [127]), [1], [yytype_int8], + b4_ints_in($@, [0], [255]), [1], [yytype_uint8], + + b4_ints_in($@, [-32767], [32767]), [1], [yytype_int16], + b4_ints_in($@, [0], [65535]), [1], [yytype_uint16], + + [int])]) + +# b4_c99_int_type_define +# ---------------------- +# Define private types suitable for holding small integers in C99 or later. +m4_define([b4_c99_int_type_define], +[m4_copy_force([b4_c99_int_type], [b4_int_type])dnl +[#ifdef short +# undef short +#endif + +/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure + and (if available) are included + so that the code can choose integer types of a good width. */ + +#ifndef __PTRDIFF_MAX__ +# include /* INFRINGES ON USER NAME SPACE */ +# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_STDINT_H +# endif +#endif + +/* Narrow types that promote to a signed type and that can represent a + signed or unsigned integer of at least N bits. In tables they can + save space and decrease cache pressure. Promoting to a signed type + helps avoid bugs in integer arithmetic. */ + +#ifdef __INT_LEAST8_MAX__ +typedef __INT_LEAST8_TYPE__ yytype_int8; +#elif defined YY_STDINT_H +typedef int_least8_t yytype_int8; +#else +typedef signed char yytype_int8; +#endif + +#ifdef __INT_LEAST16_MAX__ +typedef __INT_LEAST16_TYPE__ yytype_int16; +#elif defined YY_STDINT_H +typedef int_least16_t yytype_int16; +#else +typedef short yytype_int16; +#endif + +/* Work around bug in HP-UX 11.23, which defines these macros + incorrectly for preprocessor constants. This workaround can likely + be removed in 2023, as HPE has promised support for HP-UX 11.23 + (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of + . */ +#ifdef __hpux +# undef UINT_LEAST8_MAX +# undef UINT_LEAST16_MAX +# define UINT_LEAST8_MAX 255 +# define UINT_LEAST16_MAX 65535 +#endif + +#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST8_TYPE__ yytype_uint8; +#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST8_MAX <= INT_MAX) +typedef uint_least8_t yytype_uint8; +#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX +typedef unsigned char yytype_uint8; +#else +typedef short yytype_uint8; +#endif + +#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST16_TYPE__ yytype_uint16; +#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST16_MAX <= INT_MAX) +typedef uint_least16_t yytype_uint16; +#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX +typedef unsigned short yytype_uint16; +#else +typedef int yytype_uint16; +#endif]]) + + +# b4_sizes_types_define +# --------------------- +# Define YYPTRDIFF_T/YYPTRDIFF_MAXIMUM, YYSIZE_T/YYSIZE_MAXIMUM, +# and YYSIZEOF. +m4_define([b4_sizes_types_define], +[[#ifndef YYPTRDIFF_T +# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__ +# define YYPTRDIFF_T __PTRDIFF_TYPE__ +# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__ +# elif defined PTRDIFF_MAX +# ifndef ptrdiff_t +# include /* INFRINGES ON USER NAME SPACE */ +# endif +# define YYPTRDIFF_T ptrdiff_t +# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX +# else +# define YYPTRDIFF_T long +# define YYPTRDIFF_MAXIMUM LONG_MAX +# endif +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# else +# define YYSIZE_T unsigned +# endif +#endif + +#define YYSIZE_MAXIMUM \ + YY_CAST (YYPTRDIFF_T, \ + (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \ + ? YYPTRDIFF_MAXIMUM \ + : YY_CAST (YYSIZE_T, -1))) + +#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X)) +]]) + + +# b4_int_type_for(NAME) +# --------------------- +# Return a narrow int type able to handle numbers ranging from +# 'NAME_min' to 'NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + + +# b4_table_value_equals(TABLE, VALUE, LITERAL, SYMBOL) +# ---------------------------------------------------- +# Without inducing a comparison warning from the compiler, check if the +# literal value LITERAL equals VALUE from table TABLE, which must have +# TABLE_min and TABLE_max defined. SYMBOL denotes +m4_define([b4_table_value_equals], +[m4_if(m4_eval($3 < m4_indir([b4_]$1[_min]) + || m4_indir([b4_]$1[_max]) < $3), [1], + [[0]], + [(($2) == $4)])]) + + +## ----------------- ## +## Compiler issues. ## +## ----------------- ## + +# b4_attribute_define([noreturn]) +# ------------------------------- +# Provide portable compiler "attributes". If "noreturn" is passed, define +# _Noreturn. +m4_define([b4_attribute_define], +[[#ifndef YY_ATTRIBUTE_PURE +# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define YY_ATTRIBUTE_PURE +# endif +#endif + +#ifndef YY_ATTRIBUTE_UNUSED +# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +# else +# define YY_ATTRIBUTE_UNUSED +# endif +#endif + +]m4_bmatch([$1], [\bnoreturn\b], [[/* The _Noreturn keyword of C11. */ +]dnl This is close to lib/_Noreturn.h, except that we do enable +dnl the use of [[noreturn]], because _Noreturn is used in places +dnl where [[noreturn]] works in C++. We need this in particular +dnl because of glr.cc which compiles code from glr.c in C++. +dnl And the C++ compiler chokes on _Noreturn. Also, we do not +dnl use C' _Noreturn in C++, to avoid -Wc11-extensions warnings. +[#ifndef _Noreturn +# if (defined __cplusplus \ + && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \ + || (defined _MSC_VER && 1900 <= _MSC_VER))) +# define _Noreturn [[noreturn]] +# elif ((!defined __cplusplus || defined __clang__) \ + && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ + || (!defined __STRICT_ANSI__ \ + && (4 < __GNUC__ + (7 <= __GNUC_MINOR__) \ + || (defined __apple_build_version__ \ + ? 6000000 <= __apple_build_version__ \ + : 3 < __clang_major__ + (5 <= __clang_minor__)))))) + /* _Noreturn works as-is. */ +# elif (2 < __GNUC__ + (8 <= __GNUC_MINOR__) || defined __clang__ \ + || 0x5110 <= __SUNPRO_C) +# define _Noreturn __attribute__ ((__noreturn__)) +# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0) +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif + +]])[/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YY_USE(E) ((void) (E)) +#else +# define YY_USE(E) /* empty */ +#endif + +/* Suppress an incorrect diagnostic about yylval being uninitialized. */ +#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# if __GNUC__ * 100 + __GNUC_MINOR__ < 407 +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") +# else +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \ + _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") +# endif +# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ + _Pragma ("GCC diagnostic pop") +#else +# define YY_INITIAL_VALUE(Value) Value +#endif +#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_END +#endif +#ifndef YY_INITIAL_VALUE +# define YY_INITIAL_VALUE(Value) /* Nothing. */ +#endif + +#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_USELESS_CAST_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"") +# define YY_IGNORE_USELESS_CAST_END \ + _Pragma ("GCC diagnostic pop") +#endif +#ifndef YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_END +#endif +]]) + + +# b4_cast_define +# -------------- +m4_define([b4_cast_define], +[# ifndef YY_CAST +# ifdef __cplusplus +# define YY_CAST(Type, Val) static_cast (Val) +# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast (Val) +# else +# define YY_CAST(Type, Val) ((Type) (Val)) +# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val)) +# endif +# endif[]dnl +]) + + +# b4_null_define +# -------------- +# Portability issues: define a YY_NULLPTR appropriate for the current +# language (C, C++98, or C++11). +# +# In C++ pre C++11 it is standard practice to use 0 (not NULL) for the +# null pointer. In C, prefer ((void*)0) to avoid having to include stdlib.h. +m4_define([b4_null_define], +[# ifndef YY_NULLPTR +# if defined __cplusplus +# if 201103L <= __cplusplus +# define YY_NULLPTR nullptr +# else +# define YY_NULLPTR 0 +# endif +# else +# define YY_NULLPTR ((void*)0) +# endif +# endif[]dnl +]) + + +# b4_null +# ------- +# Return a null pointer constant. +m4_define([b4_null], [YY_NULLPTR]) + + + +## ---------## +## Values. ## +## ---------## + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "yy" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [b4_comment([$3])])dnl +static const b4_int_type_for([$2]) yy$1[[]] = +{ + $2 +};dnl +]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + +# Because C enums are not scoped, because tokens are exposed in the +# header, and because these tokens are common to all the parsers, we +# need to make sure their names don't collide: use the api.prefix. +# YYEOF is special, since the user may give it a different name. +m4_define([b4_symbol(-2, id)], [b4_api_PREFIX[][EMPTY]]) +m4_define([b4_symbol(-2, tag)], [[No symbol.]]) + +m4_if(b4_symbol(eof, id), [YYEOF], + [m4_define([b4_symbol(0, id)], [b4_api_PREFIX[][EOF]])]) +m4_define([b4_symbol(1, id)], [b4_api_PREFIX[][error]]) +m4_define([b4_symbol(2, id)], [b4_api_PREFIX[][UNDEF]]) + + +# b4_token_define(TOKEN-NUM) +# -------------------------- +# Output the definition of this token as #define. +m4_define([b4_token_define], +[b4_token_format([#define %s %s], [$1])]) + +# b4_token_defines +# ---------------- +# Output the definition of the tokens. +m4_define([b4_token_defines], +[[/* Token kinds. */ +#define ]b4_symbol(empty, [id])[ -2 +]m4_join([ +], b4_symbol_map([b4_token_define])) +]) + + +# b4_token_enum(TOKEN-NUM) +# ------------------------ +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_visible_if([$1], + [m4_format([ %-30s %s], + m4_format([[%s = %s%s%s]], + b4_symbol([$1], [id]), + b4_symbol([$1], b4_api_token_raw_if([[number]], [[code]])), + m4_if([$1], b4_last_enum_token, [], [[,]])), + [b4_symbol_tag_comment([$1])])])]) + + +# b4_token_enums +# -------------- +# The definition of the token kinds. +m4_define([b4_token_enums], +[b4_any_token_visible_if([[/* Token kinds. */ +#ifndef ]b4_api_PREFIX[TOKENTYPE +# define ]b4_api_PREFIX[TOKENTYPE + enum ]b4_api_prefix[tokentype + { + ]b4_symbol(empty, [id])[ = -2, +]b4_symbol_foreach([b4_token_enum])dnl +[ }; + typedef enum ]b4_api_prefix[tokentype ]b4_api_prefix[token_kind_t; +#endif +]])]) + + +# b4_token_enums_defines +# ---------------------- +# The definition of the tokens (if there are any) as enums and, +# if POSIX Yacc is enabled, as #defines. +m4_define([b4_token_enums_defines], +[b4_token_enums[]b4_yacc_if([b4_token_defines])]) + + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[N_($1)]]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-40s %s], + m4_format([[%s = %s%s%s]], + b4_symbol([$1], [kind_base]), + [$1], + m4_if([$1], b4_last_symbol, [], [[,]])), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[/* Symbol kind. */ +enum yysymbol_kind_t +{ + ]b4_symbol(empty, [kind_base])[ = -2, +]b4_symbol_foreach([b4_symbol_enum])dnl +[}; +typedef enum yysymbol_kind_t yysymbol_kind_t; +]])]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [($1.$3)], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type]))], + [$1])], + [$1])])]) + + +## ---------------------- ## +## Defining C functions. ## +## ---------------------- ## + + +# b4_formals([DECL1, NAME1], ...) +# ------------------------------- +# The formal arguments of a C function definition. +m4_define([b4_formals], +[m4_if([$#], [0], [void], + [$#$1], [1], [void], + [m4_map_sep([b4_formal], [, ], [$@])])]) + +m4_define([b4_formal], +[$1]) + + +# b4_function_declare(NAME, RETURN-VALUE, [DECL1, NAME1], ...) +# ------------------------------------------------------------ +# Declare the function NAME. +m4_define([b4_function_declare], +[$2 $1 (b4_formals(m4_shift2($@)));[]dnl +]) + + + +## --------------------- ## +## Calling C functions. ## +## --------------------- ## + + +# b4_function_call(NAME, RETURN-VALUE, [DECL1, NAME1], ...) +# ----------------------------------------------------------- +# Call the function NAME with arguments NAME1, NAME2 etc. +m4_define([b4_function_call], +[$1 (b4_args(m4_shift2($@)))[]dnl +]) + + +# b4_args([DECL1, NAME1], ...) +# ---------------------------- +# Output the arguments NAME1, NAME2... +m4_define([b4_args], +[m4_map_sep([b4_arg], [, ], [$@])]) + +m4_define([b4_arg], +[$2]) + + +## ----------- ## +## Synclines. ## +## ----------- ## + +# b4_sync_start(LINE, FILE) +# ------------------------- +m4_define([b4_sync_start], [[#]line $1 $2]) + + +## -------------- ## +## User actions. ## +## -------------- ## + +# b4_case(LABEL, STATEMENTS, [COMMENTS]) +# -------------------------------------- +m4_define([b4_case], +[ case $1:m4_ifval([$3], [ b4_comment([$3])]) +$2 +b4_syncline([@oline@], [@ofile@])dnl + break;]) + + +# b4_predicate_case(LABEL, CONDITIONS) +# ------------------------------------ +m4_define([b4_predicate_case], +[ case $1: + if (! ( +$2)) YYERROR; +b4_syncline([@oline@], [@ofile@])dnl + break;]) + + +# b4_yydestruct_define +# -------------------- +# Define the "yydestruct" function. +m4_define_default([b4_yydestruct_define], +[[/*-----------------------------------------------. +| Release the memory associated to this symbol. | +`-----------------------------------------------*/ + +static void +yydestruct (const char *yymsg, + yysymbol_kind_t yykind, YYSTYPE *yyvaluep]b4_locations_if(dnl +[[, YYLTYPE *yylocationp]])[]b4_user_formals[) +{ +]b4_parse_param_use([yyvaluep], [yylocationp])dnl +[ if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp); + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + ]b4_symbol_actions([destructor])[ + YY_IGNORE_MAYBE_UNINITIALIZED_END +}]dnl +]) + + +# b4_yy_symbol_print_define +# ------------------------- +# Define the "yy_symbol_print" function. +m4_define_default([b4_yy_symbol_print_define], +[[ +/*-----------------------------------. +| Print this symbol's value on YYO. | +`-----------------------------------*/ + +static void +yy_symbol_value_print (FILE *yyo, + yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep]b4_locations_if(dnl +[[, YYLTYPE const * const yylocationp]])[]b4_user_formals[) +{ + FILE *yyoutput = yyo; +]b4_parse_param_use([yyoutput], [yylocationp])dnl +[ if (!yyvaluep) + return;] +b4_percent_code_get([[pre-printer]])dnl + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + b4_symbol_actions([printer]) + YY_IGNORE_MAYBE_UNINITIALIZED_END +b4_percent_code_get([[post-printer]])dnl +[} + + +/*---------------------------. +| Print this symbol on YYO. | +`---------------------------*/ + +static void +yy_symbol_print (FILE *yyo, + yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep]b4_locations_if(dnl +[[, YYLTYPE const * const yylocationp]])[]b4_user_formals[) +{ + YYFPRINTF (yyo, "%s %s (", + yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind)); + +]b4_locations_if([ YYLOCATION_PRINT (yyo, yylocationp); + YYFPRINTF (yyo, ": "); +])dnl +[ yy_symbol_value_print (yyo, yykind, yyvaluep]dnl +b4_locations_if([, yylocationp])[]b4_user_args[); + YYFPRINTF (yyo, ")"); +}]dnl +]) + + +## ---------------- ## +## api.value.type. ## +## ---------------- ## + + +# ---------------------- # +# api.value.type=union. # +# ---------------------- # + +# b4_symbol_type_register(SYMBOL-NUM) +# ----------------------------------- +# Symbol SYMBOL-NUM has a type (for variant) instead of a type-tag. +# Extend the definition of %union's body (b4_union_members) with a +# field of that type, and extend the symbol's "type" field to point to +# the field name, instead of the type name. +m4_define([b4_symbol_type_register], +[m4_define([b4_symbol($1, type_tag)], + [b4_symbol_if([$1], [has_id], + [b4_symbol([$1], [id])], + [yykind_[]b4_symbol([$1], [number])])])dnl +m4_append([b4_union_members], +m4_expand([m4_format([ %-40s %s], + m4_expand([b4_symbol([$1], [type]) b4_symbol([$1], [type_tag]);]), + [b4_symbol_tag_comment([$1])])])) +]) + + +# b4_type_define_tag(SYMBOL1-NUM, ...) +# ------------------------------------ +# For the batch of symbols SYMBOL1-NUM... (which all have the same +# type), enhance the %union definition for each of them, and set +# there "type" field to the field tag name, instead of the type name. +m4_define([b4_type_define_tag], +[b4_symbol_if([$1], [has_type], + [m4_map([b4_symbol_type_register], [$@])]) +]) + + +# b4_symbol_value_union(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------------- +# Same of b4_symbol_value, but when api.value.type=union. +m4_define([b4_symbol_value_union], +[m4_ifval([$3], + [(*($3*)(&$1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type_tag]))], + [$1])], + [$1])])]) + + +# b4_value_type_setup_union +# ------------------------- +# Setup support for api.value.type=union. Symbols are defined with a +# type instead of a union member name: build the corresponding union, +# and give the symbols their tag. +m4_define([b4_value_type_setup_union], +[m4_define([b4_union_members]) +b4_type_foreach([b4_type_define_tag]) +m4_copy_force([b4_symbol_value_union], [b4_symbol_value]) +]) + + +# -------------------------- # +# api.value.type = variant. # +# -------------------------- # + +# b4_value_type_setup_variant +# --------------------------- +# Setup support for api.value.type=variant. By default, fail, specialized +# by other skeletons. +m4_define([b4_value_type_setup_variant], +[b4_complain_at(b4_percent_define_get_loc([[api.value.type]]), + [['%s' does not support '%s']], + [b4_skeleton], + [%define api.value.type variant])]) + + +# _b4_value_type_setup_keyword +# ---------------------------- +# api.value.type is defined with a keyword/string syntax. Check if +# that is properly defined, and prepare its use. +m4_define([_b4_value_type_setup_keyword], +[b4_percent_define_check_values([[[[api.value.type]], + [[none]], + [[union]], + [[union-directive]], + [[variant]], + [[yystype]]]])dnl +m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_value_type_setup_union], + [variant], [b4_value_type_setup_variant])]) + + +# b4_value_type_setup +# ------------------- +# Check if api.value.type is properly defined, and possibly prepare +# its use. +b4_define_silent([b4_value_type_setup], +[# Define default value. +b4_percent_define_ifdef([[api.value.type]], [], +[# %union => api.value.type=union-directive +m4_ifdef([b4_union_members], +[m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [union-directive])], +[# no tag seen => api.value.type={int} +m4_if(b4_tag_seen_flag, 0, +[m4_define([b4_percent_define_kind(api.value.type)], [code]) +m4_define([b4_percent_define(api.value.type)], [int])], +[# otherwise api.value.type=yystype +m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [yystype])])])]) + +# Set up. +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), + [keyword\|string], [_b4_value_type_setup_keyword]) +]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + + +# b4_value_type_define +# -------------------- +m4_define([b4_value_type_define], +[b4_value_type_setup[]dnl +/* Value type. */ +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), +[code], +[[#if ! defined ]b4_api_PREFIX[STYPE && ! defined ]b4_api_PREFIX[STYPE_IS_DECLARED +typedef ]b4_percent_define_get([[api.value.type]])[ ]b4_api_PREFIX[STYPE; +# define ]b4_api_PREFIX[STYPE_IS_TRIVIAL 1 +# define ]b4_api_PREFIX[STYPE_IS_DECLARED 1 +#endif +]], +[m4_bmatch(b4_percent_define_get([[api.value.type]]), +[union\|union-directive], +[[#if ! defined ]b4_api_PREFIX[STYPE && ! defined ]b4_api_PREFIX[STYPE_IS_DECLARED +]b4_percent_define_get_syncline([[api.value.union.name]])dnl +[union ]b4_percent_define_get([[api.value.union.name]])[ +{ +]b4_user_union_members[ +}; +]b4_percent_define_get_syncline([[api.value.union.name]])dnl +[typedef union ]b4_percent_define_get([[api.value.union.name]])[ ]b4_api_PREFIX[STYPE; +# define ]b4_api_PREFIX[STYPE_IS_TRIVIAL 1 +# define ]b4_api_PREFIX[STYPE_IS_DECLARED 1 +#endif +]])])]) + + +# b4_location_type_define +# ----------------------- +m4_define([b4_location_type_define], +[[/* Location type. */ +]b4_percent_define_ifdef([[api.location.type]], +[[typedef ]b4_percent_define_get([[api.location.type]])[ ]b4_api_PREFIX[LTYPE; +]], +[[#if ! defined ]b4_api_PREFIX[LTYPE && ! defined ]b4_api_PREFIX[LTYPE_IS_DECLARED +typedef struct ]b4_api_PREFIX[LTYPE ]b4_api_PREFIX[LTYPE; +struct ]b4_api_PREFIX[LTYPE +{ + int first_line; + int first_column; + int last_line; + int last_column; +}; +# define ]b4_api_PREFIX[LTYPE_IS_DECLARED 1 +# define ]b4_api_PREFIX[LTYPE_IS_TRIVIAL 1 +#endif +]])]) + + +# b4_declare_yylstype +# ------------------- +# Declarations that might either go into the header (if --header) or +# in the parser body. Declare YYSTYPE/YYLTYPE, and yylval/yylloc. +m4_define([b4_declare_yylstype], +[b4_value_type_define[]b4_locations_if([ +b4_location_type_define]) + +b4_pure_if([], [[extern ]b4_api_PREFIX[STYPE ]b4_prefix[lval; +]b4_locations_if([[extern ]b4_api_PREFIX[LTYPE ]b4_prefix[lloc;]])])[]dnl +]) + + +# b4_YYDEBUG_define +# ----------------- +m4_define([b4_YYDEBUG_define], +[[/* Debug traces. */ +]m4_if(b4_api_prefix, [yy], +[[#ifndef YYDEBUG +# define YYDEBUG ]b4_parse_trace_if([1], [0])[ +#endif]], +[[#ifndef ]b4_api_PREFIX[DEBUG +# if defined YYDEBUG +#if YYDEBUG +# define ]b4_api_PREFIX[DEBUG 1 +# else +# define ]b4_api_PREFIX[DEBUG 0 +# endif +# else /* ! defined YYDEBUG */ +# define ]b4_api_PREFIX[DEBUG ]b4_parse_trace_if([1], [0])[ +# endif /* ! defined YYDEBUG */ +#endif /* ! defined ]b4_api_PREFIX[DEBUG */]])[]dnl +]) + +# b4_declare_yydebug +# ------------------ +m4_define([b4_declare_yydebug], +[b4_YYDEBUG_define[ +#if ]b4_api_PREFIX[DEBUG +extern int ]b4_prefix[debug; +#endif][]dnl +]) + +# b4_yylloc_default_define +# ------------------------ +# Define YYLLOC_DEFAULT. +m4_define([b4_yylloc_default_define], +[[/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +#ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (N) \ + { \ + (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ + (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ + (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ + (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ + } \ + else \ + { \ + (Current).first_line = (Current).last_line = \ + YYRHSLOC (Rhs, 0).last_line; \ + (Current).first_column = (Current).last_column = \ + YYRHSLOC (Rhs, 0).last_column; \ + } \ + while (0) +#endif +]]) + +# b4_yylocation_print_define +# -------------------------- +# Define YYLOCATION_PRINT. +m4_define([b4_yylocation_print_define], +[b4_locations_if([[ +/* YYLOCATION_PRINT -- Print the location on the stream. + This macro was not mandated originally: define only if we know + we won't break user code: when these are the locations we know. */ + +# ifndef YYLOCATION_PRINT + +# if defined YY_LOCATION_PRINT + + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YYLOCATION_PRINT(File, Loc) YY_LOCATION_PRINT(File, *(Loc)) + +# elif defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL + +/* Print *YYLOCP on YYO. Private, do not rely on its existence. */ + +YY_ATTRIBUTE_UNUSED +static int +yy_location_print_ (FILE *yyo, YYLTYPE const * const yylocp) +{ + int res = 0; + int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; + if (0 <= yylocp->first_line) + { + res += YYFPRINTF (yyo, "%d", yylocp->first_line); + if (0 <= yylocp->first_column) + res += YYFPRINTF (yyo, ".%d", yylocp->first_column); + } + if (0 <= yylocp->last_line) + { + if (yylocp->first_line < yylocp->last_line) + { + res += YYFPRINTF (yyo, "-%d", yylocp->last_line); + if (0 <= end_col) + res += YYFPRINTF (yyo, ".%d", end_col); + } + else if (0 <= end_col && yylocp->first_column < end_col) + res += YYFPRINTF (yyo, "-%d", end_col); + } + return res; +} + +# define YYLOCATION_PRINT yy_location_print_ + + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YY_LOCATION_PRINT(File, Loc) YYLOCATION_PRINT(File, &(Loc)) + +# else + +# define YYLOCATION_PRINT(File, Loc) ((void) 0) + /* Temporary convenience wrapper in case some people defined the + undocumented and private YY_LOCATION_PRINT macros. */ +# define YY_LOCATION_PRINT YYLOCATION_PRINT + +# endif +# endif /* !defined YYLOCATION_PRINT */]]) +]) + +# b4_yyloc_default +# ---------------- +# Expand to a possible default value for yylloc. +m4_define([b4_yyloc_default], +[[ +# if defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL + = { ]m4_join([, ], + m4_defn([b4_location_initial_line]), + m4_defn([b4_location_initial_column]), + m4_defn([b4_location_initial_line]), + m4_defn([b4_location_initial_column]))[ } +# endif +]]) diff --git a/bison/RelWithDebInfo/data/skeletons/d-skel.m4 b/bison/RelWithDebInfo/data/skeletons/d-skel.m4 new file mode 100644 index 0000000..2a38f02 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/d-skel.m4 @@ -0,0 +1,26 @@ + -*- Autoconf -*- + +# D skeleton dispatching for Bison. + +# Copyright (C) 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [b4_complain([%%glr-parser not supported for D])]) +b4_nondeterministic_if([b4_complain([%%nondeterministic-parser not supported for D])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.d]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/bison/RelWithDebInfo/data/skeletons/d.m4 b/bison/RelWithDebInfo/data/skeletons/d.m4 new file mode 100644 index 0000000..c0632e4 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/d.m4 @@ -0,0 +1,628 @@ + -*- Autoconf -*- + +# D language support for Bison + +# Copyright (C) 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +m4_include(b4_skeletonsdir/[c-like.m4]) + + +# b4_symbol_action(SYMBOL-NUM, ACTION) +# ------------------------------------ +# Run the action ACTION ("destructor" or "printer") for SYMBOL-NUM. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([yyval], + [$1], + [], + [yyloc])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl +b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_use(EXPR) +# ------------ +# Pacify the compiler about some maybe unused value. +m4_define([b4_use], +[]) + + +# b4_sync_start(LINE, FILE) +# ------------------------- +m4_define([b4_sync_start], [[#]line $1 $2]) + + +# b4_list2(LIST1, LIST2) +# ---------------------- +# Join two lists with a comma if necessary. +m4_define([b4_list2], + [$1[]m4_ifval(m4_quote($1), [m4_ifval(m4_quote($2), [[, ]])])[]$2]) + + +# b4_percent_define_get3(DEF, PRE, POST, NOT) +# ------------------------------------------- +# Expand to the value of DEF surrounded by PRE and POST if it's %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_get3], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$2[]b4_percent_define_get([$1])[]$3], [$4])]) + +# b4_percent_define_if_get2(ARG1, ARG2, DEF, NOT) +# ----------------------------------------------- +# Expand to the value of DEF if ARG1 or ARG2 are %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_if_get2], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$3], [m4_ifval(m4_quote(b4_percent_define_get([$2])), + [$3], [$4])])]) + +# b4_percent_define_class_before_interface(CLASS, INTERFACE) +# ---------------------------------------------------------- +# Expand to a ', ' if both a class and an interface have been %define'ed +m4_define([b4_percent_define_class_before_interface], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [m4_ifval(m4_quote(b4_percent_define_get([$2])), + [, ])])]) + + +# b4_flag_value(BOOLEAN-FLAG) +# --------------------------- +m4_define([b4_flag_value], [b4_flag_if([$1], [true], [false])]) + + +# b4_parser_class_declaration +# --------------------------- +# The declaration of the parser class ("class YYParser"), with all its +# qualifiers/annotations. +b4_percent_define_default([[api.parser.abstract]], [[false]]) +b4_percent_define_default([[api.parser.final]], [[false]]) +b4_percent_define_default([[api.parser.public]], [[false]]) + +m4_define([b4_parser_class_declaration], +[b4_percent_define_get3([api.parser.annotations], [], [ ])dnl +b4_percent_define_flag_if([api.parser.public], [public ])dnl +b4_percent_define_flag_if([api.parser.abstract], [abstract ])dnl +b4_percent_define_flag_if([api.parser.final], [final ])dnl +[class ]b4_parser_class[]dnl +b4_percent_define_if_get2([api.parser.extends], [api.parser.implements], [ : ])dnl +b4_percent_define_get([api.parser.extends])dnl +b4_percent_define_class_before_interface([api.parser.extends], [api.parser.implements])dnl +b4_percent_define_get([api.parser.implements])]) + + +# b4_lexer_if(TRUE, FALSE) +# ------------------------ +m4_define([b4_lexer_if], +[b4_percent_code_ifdef([[lexer]], [$1], [$2])]) + + +# b4_position_type_if(TRUE, FALSE) +# -------------------------------- +m4_define([b4_position_type_if], +[b4_percent_define_ifdef([[position_type]], [$1], [$2])]) + + +# b4_location_type_if(TRUE, FALSE) +# -------------------------------- +m4_define([b4_location_type_if], +[b4_percent_define_ifdef([[location_type]], [$1], [$2])]) + + +# b4_identification +# ----------------- +m4_define([b4_identification], +[[/** Version number for the Bison executable that generated this parser. */ + public static immutable string yy_bison_version = "]b4_version_string["; + + /** Name of the skeleton that generated this parser. */ + public static immutable string yy_bison_skeleton = ]b4_skeleton[; +]]) + + +## ------------ ## +## Data types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# MIN to MAX (included). +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-128], [127]), [1], [byte], + b4_ints_in($@, [-32768], [32767]), [1], [short], + [int])]) + +# b4_int_type_for(NAME) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# `NAME_min' to `NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + +# b4_null +# ------- +m4_define([b4_null], [null]) + + +# b4_integral_parser_table_define(NAME, DATA, COMMENT) +#----------------------------------------------------- +# Define "yy" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [b4_comment([$3], [ ])])dnl +private static immutable b4_int_type_for([$2])[[]] yy$1_ = +@{ + $2 +@};dnl +]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + +m4_define([b4_symbol(-2, id)], [[YYEMPTY]]) +b4_percent_define_default([[api.token.raw]], [[true]]) + +# b4_token_enum(TOKEN-NAME, TOKEN-NUMBER) +# --------------------------------------- +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_format([ %s = %s, +], [$1])]) + +# b4_token_enums +# -------------- +# Output the definition of the tokens as enums. +m4_define([b4_token_enums], +[/* Token kinds. */ +public enum TokenKind { + ]b4_symbol(empty, id)[ = -2, +b4_symbol_foreach([b4_token_enum])dnl +} +]) + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[_($1)]]) + + +# _b4_token_constructor_define(SYMBOL-NUM) +# ---------------------------------------- +# Define Symbol.FOO for SYMBOL-NUM. +m4_define([_b4_token_constructor_define], +[b4_token_visible_if([$1], +[[ + static auto ]b4_symbol([$1], [id])[(]b4_symbol_if([$1], [has_type], +[b4_union_if([b4_symbol([$1], [type]], +[[typeof(YYSemanticType.]b4_symbol([$1], [type])[]])) [val]])dnl +[]b4_locations_if([b4_symbol_if([$1], [has_type], [[, ]])[Location l]])[) + { + return Symbol(TokenKind.]b4_symbol([$1], [id])[]b4_symbol_if([$1], [has_type], + [[, val]])[]b4_locations_if([[, l]])[); + }]])]) + +# b4_token_constructor_define +# --------------------------- +# Define Symbol.FOO for each token kind FOO. +m4_define([b4_token_constructor_define], +[[ + /* Implementation of token constructors for each symbol type visible to + * the user. The code generates static methods that have the same names + * as the TokenKinds. + */]b4_symbol_foreach([_b4_token_constructor_define])dnl +]) + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[SymbolKind.b4_symbol_kind_base($@)]) + + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-30s %s], + m4_format([[%s = %s,]], + b4_symbol([$1], [kind_base]), + [$1]), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +# Defining YYEMPTY here is important: it forces the compiler +# to use a signed type, which matters for yytoken. +m4_define([b4_declare_symbol_enum], +[[ /* Symbol kinds. */ + struct SymbolKind + { + enum + { + ]b4_symbol(empty, kind_base)[ = -2, /* No symbol. */ +]b4_symbol_foreach([b4_symbol_enum])dnl +[ } + + private int yycode_; + alias yycode_ this; + + this(int code) + { + yycode_ = code; + } + + /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + final void toString(W)(W sink) const + if (isOutputRange!(W, char)) + { + immutable string[] yy_sname = @{ + ]b4_symbol_names[ + @};]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + immutable ]b4_int_type_for([b4_translatable])[[] yytranslatable = @{ + ]b4_translatable[ + @};]])[ + + put(sink, yy_sname[yycode_]); + } + } +]]) + + +# b4_case(ID, CODE, [COMMENTS]) +# ----------------------------- +m4_define([b4_case], [ case $1:m4_ifval([$3], [ b4_comment([$3])]) +$2 + break;]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +m4_define([b4_yystype], [b4_percent_define_get([[stype]])]) +b4_percent_define_default([[stype]], [[YYSemanticType]])]) + +# %name-prefix +m4_define_default([b4_prefix], [[YY]]) + +b4_percent_define_default([[api.parser.class]], [b4_prefix[]Parser])]) +m4_define([b4_parser_class], [b4_percent_define_get([[api.parser.class]])]) + +#b4_percent_define_default([[location_type]], [Location])]) +m4_define([b4_location_type], b4_percent_define_ifdef([[location_type]],[b4_percent_define_get([[location_type]])],[YYLocation])) + +#b4_percent_define_default([[position_type]], [Position])]) +m4_define([b4_position_type], b4_percent_define_ifdef([[position_type]],[b4_percent_define_get([[position_type]])],[YYPosition])) + + +## ---------------- ## +## api.value.type. ## +## ---------------- ## + + +# ---------------------- # +# api.value.type=union. # +# ---------------------- # + +# b4_symbol_type_register(SYMBOL-NUM) +# ----------------------------------- +# Symbol SYMBOL-NUM has a type (for union) instead of a type-tag. +# Extend the definition of %union's body (b4_union_members) with a +# field of that type, and extend the symbol's "type" field to point to +# the field name, instead of the type name. +m4_define([b4_symbol_type_register], +[m4_define([b4_symbol($1, type_tag)], + [b4_symbol_if([$1], [has_id], + [b4_symbol([$1], [id])], + [yykind_[]b4_symbol([$1], [number])])])dnl +m4_append([b4_union_members], +m4_expand([m4_format([ %-40s %s], + m4_expand([b4_symbol([$1], [type]) b4_symbol([$1], [type_tag]);]), + [b4_symbol_tag_comment([$1])])])) +]) + + +# b4_type_define_tag(SYMBOL1-NUM, ...) +# ------------------------------------ +# For the batch of symbols SYMBOL1-NUM... (which all have the same +# type), enhance the %union definition for each of them, and set +# there "type" field to the field tag name, instead of the type name. +m4_define([b4_type_define_tag], +[b4_symbol_if([$1], [has_type], + [m4_map([b4_symbol_type_register], [$@])]) +]) + + +# b4_symbol_value_union(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------------- +# Same of b4_symbol_value, but when api.value.type=union. +m4_define([b4_symbol_value_union], +[m4_ifval([$3], + [(*($3*)(&$1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type_tag]))], + [$1])], + [$1])])]) + + +# b4_value_type_setup_union +# ------------------------- +# Setup support for api.value.type=union. Symbols are defined with a +# type instead of a union member name: build the corresponding union, +# and give the symbols their tag. +m4_define([b4_value_type_setup_union], +[m4_define([b4_union_members]) +b4_type_foreach([b4_type_define_tag]) +m4_copy_force([b4_symbol_value_union], [b4_symbol_value]) +]) + + +# _b4_value_type_setup_keyword +# ---------------------------- +# api.value.type is defined with a keyword/string syntax. Check if +# that is properly defined, and prepare its use. +m4_define([_b4_value_type_setup_keyword], +[b4_percent_define_check_values([[[[api.value.type]], + [[none]], + [[union]], + [[union-directive]], + [[yystype]]]])dnl +m4_case(b4_percent_define_get([[api.value.type]]), + [union], [b4_value_type_setup_union])]) + + +# b4_value_type_setup +# ------------------- +# Check if api.value.type is properly defined, and possibly prepare +# its use. +b4_define_silent([b4_value_type_setup], +[ +# Define default value. +b4_percent_define_ifdef([[api.value.type]], [], +[# %union => api.value.type=union-directive +m4_ifdef([b4_union_members], +[m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [union-directive])], +[# no tag seen => api.value.type={int} +m4_if(b4_tag_seen_flag, 0, +[m4_define([b4_percent_define_kind(api.value.type)], [code]) +m4_define([b4_percent_define(api.value.type)], [int])], +[# otherwise api.value.type=yystype +m4_define([b4_percent_define_kind(api.value.type)], [keyword]) +m4_define([b4_percent_define(api.value.type)], [yystype])])])]) + +# Set up. +m4_bmatch(b4_percent_define_get_kind([[api.value.type]]), + [keyword], [_b4_value_type_setup_keyword]) +]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. FIXME: factor in c-like? +m4_define([b4_symbol_value], +[m4_ifval([$3], + [($1.$3)], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [($1.b4_symbol([$2], [type]))], + [$1])], + [$1])])]) + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([yyval], [$1], [$2])]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +# +# In this simple implementation, %token and %type have class names +# between the angle brackets. +m4_define([b4_rhs_value], +[b4_symbol_value([(yystack.valueAt (b4_subtract([$1], [$2])))], [$3], [$4])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[yystack.locationAt (b4_subtract($@))]) + + +# b4_lex_param +# b4_parse_param +# -------------- +# If defined, b4_lex_param arrives double quoted, but below we prefer +# it to be single quoted. Same for b4_parse_param. + +# TODO: should be in bison.m4 +m4_define_default([b4_lex_param], [[]])) +m4_define([b4_lex_param], b4_lex_param)) +m4_define([b4_parse_param], b4_parse_param)) + +# b4_lex_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_lex_param_decl], +[m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_decls(b4_lex_param))], + [$1])]) + +m4_define([b4_param_decls], + [m4_map([b4_param_decl], [$@])]) +m4_define([b4_param_decl], [, $1]) + +m4_define([b4_remove_comma], [m4_ifval(m4_quote($1), [$1, ], [])m4_shift2($@)]) + + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [b4_remove_comma([$1], + b4_param_decls(b4_parse_param))], + [$1])]) + + + +# b4_lex_param_call +# ------------------- +# Delegating the lexer parameters to the lexer constructor. +m4_define([b4_lex_param_call], + [m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_calls(b4_lex_param))], + [$1])]) +m4_define([b4_param_calls], + [m4_map([b4_param_call], [$@])]) +m4_define([b4_param_call], [, $2]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [b4_constructor_calls(b4_parse_param)])]) + +m4_define([b4_constructor_calls], + [m4_map([b4_constructor_call], [$@])]) +m4_define([b4_constructor_call], + [this.$2 = $2; + ]) + + + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + /* User arguments. */ +b4_var_decls(b4_parse_param)])]) + +m4_define([b4_var_decls], + [m4_map_sep([b4_var_decl], [ +], [$@])]) +m4_define([b4_var_decl], + [ protected $1;]) + + +# b4_public_types_declare +# ----------------------- +# Define the public types: token, semantic value, location, and so forth. +# Depending on %define token_lex, may be output in the header or source file. +m4_define([b4_public_types_declare], +[[ +alias Symbol = ]b4_parser_class[.Symbol; +alias Value = ]b4_yystype[;]b4_locations_if([[ +alias Location = ]b4_location_type[; +alias Position = ]b4_position_type[;]b4_push_if([[ +alias PUSH_MORE = ]b4_parser_class[.YYPUSH_MORE; +alias ABORT = ]b4_parser_class[.YYABORT; +alias ACCEPT = ]b4_parser_class[.YYACCEPT;]])[]])[ +]]) + + +# b4_basic_symbol_constructor_define +# ---------------------------------- +# Create Symbol struct constructors for all the visible types. +m4_define([b4_basic_symbol_constructor_define], +[b4_token_visible_if([$1], +[[ this(TokenKind token]b4_symbol_if([$1], [has_type], +[[, ]b4_union_if([], [[typeof(YYSemanticType.]])b4_symbol([$1], [type])dnl +[]b4_union_if([], [[) ]])[ val]])[]b4_locations_if([[, Location loc]])[) + { + kind = yytranslate_(token);]b4_union_if([b4_symbol_if([$1], [has_type], [[ + static foreach (member; __traits(allMembers, YYSemanticType)) + { + static if (is(typeof(mixin("value_." ~ member)) == ]b4_symbol([$1], [type])[)) + { + mixin("value_." ~ member ~ " = val;"); + } + }]])], [b4_symbol_if([$1], [has_type], [[ + value_.]b4_symbol([$1], [type])[ = val;]])])[]b4_locations_if([ + location_ = loc;])[ + } +]])]) + + +# b4_symbol_type_define +# --------------------- +# Define symbol_type, the external type for symbols used for symbol +# constructors. +m4_define([b4_symbol_type_define], +[[ + /** + * A complete symbol + */ + struct Symbol + { + private SymbolKind kind; + private Value value_;]b4_locations_if([[ + private Location location_;]])[ + +]b4_type_foreach([b4_basic_symbol_constructor_define])[ + SymbolKind token() { return kind; } + Value value() { return value_; }]b4_locations_if([[ + Location location() { return location_; }]])[ +]b4_token_ctor_if([b4_token_constructor_define])[ + } +]]) diff --git a/bison/RelWithDebInfo/data/skeletons/glr.c b/bison/RelWithDebInfo/data/skeletons/glr.c new file mode 100644 index 0000000..fab3733 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/glr.c @@ -0,0 +1,2763 @@ +# -*- C -*- + +# GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# If we are loaded by glr.cc, do not override c++.m4 definitions by +# those of c.m4. +m4_if(b4_skeleton, ["glr.c"], + [m4_include(b4_skeletonsdir/[c.m4])]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + +# Included header. +b4_percent_define_default([[api.header.include]], + [["@basename(]b4_spec_header_file[@)"]]) + +## ------------------------ ## +## Pure/impure interfaces. ## +## ------------------------ ## + +b4_define_flag_if([pure]) +# If glr.cc is including this file and thus has already set b4_pure_flag, +# do not change the value of b4_pure_flag, and do not record a use of api.pure. +m4_ifndef([b4_pure_flag], +[b4_percent_define_default([[api.pure]], [[false]]) + m4_define([b4_pure_flag], + [b4_percent_define_flag_if([[api.pure]], [[1]], [[0]])])]) + +# b4_yyerror_args +# --------------- +# Optional effective arguments passed to yyerror: user args plus yylloc, and +# a trailing comma. +m4_define([b4_yyerror_args], +[b4_pure_if([b4_locations_if([yylocp, ])])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + +# b4_lyyerror_args +# ---------------- +# Same as above, but on the lookahead, hence &yylloc instead of yylocp. +m4_define([b4_lyyerror_args], +[b4_pure_if([b4_locations_if([&yylloc, ])])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + +# b4_pure_args +# ------------ +# Same as b4_yyerror_args, but with a leading comma. +m4_define([b4_pure_args], +[b4_pure_if([b4_locations_if([, yylocp])])[]b4_user_args]) + + +# b4_lpure_args +# ------------- +# Same as above, but on the lookahead, hence &yylloc instead of yylocp. +m4_define([b4_lpure_args], +[b4_pure_if([b4_locations_if([, &yylloc])])[]b4_user_args]) + + + +# b4_pure_formals +# --------------- +# Arguments passed to yyerror: user formals plus yylocp with leading comma. +m4_define([b4_pure_formals], +[b4_pure_if([b4_locations_if([, YYLTYPE *yylocp])])[]b4_user_formals]) + + +# b4_locuser_formals(LOC = yylocp) +# -------------------------------- +# User formal arguments, possibly preceded by location argument. +m4_define([b4_locuser_formals], +[b4_locations_if([, YYLTYPE *m4_default([$1], [yylocp])])[]b4_user_formals]) + + +# b4_locuser_args(LOC = yylocp) +# ----------------------------- +m4_define([b4_locuser_args], +[b4_locations_if([, m4_default([$1], [yylocp])])[]b4_user_args]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([(*yyvalp)], [$1], [$2])]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[YY_CAST (yyGLRStackItem const *, yyvsp)@{YYFILL (b4_subtract([$2], [$1]))@}.yystate]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# Expansion of $$ or $$, for symbol SYMBOL-NUM. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).yysemantics.yyval], [$3], [$4])]) + + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(*yylocp)]) + + +# b4_rhs_location(RULE-LENGTH, NUM) +# --------------------------------- +# Expansion of @NUM, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(b4_rhs_data([$1], [$2]).yyloc)]) + + +# b4_call_merger(MERGER-NUM, MERGER-NAME, SYMBOL-SUM) +# --------------------------------------------------- +m4_define([b4_call_merger], +[b4_case([$1], + [ b4_symbol_if([$3], [has_type], + [yy0->b4_symbol($3, slot) = $2 (*yy0, *yy1);], + [*yy0 = $2 (*yy0, *yy1);])])]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + +# b4_shared_declarations +# ---------------------- +# Declaration that might either go into the header (if --header) +# or open coded in the parser body. glr.cc has its own definition. +m4_if(b4_skeleton, ["glr.c"], +[m4_define([b4_shared_declarations], +[b4_declare_yydebug[ +]b4_percent_code_get([[requires]])[ +]b4_token_enums[ +]b4_declare_yylstype[ +int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]b4_percent_code_get([[provides]])[]dnl +]) +]) + +## -------------- ## +## Output files. ## +## -------------- ## + +# Unfortunately the order of generation between the header and the +# implementation file matters (for glr.c) because of the current +# implementation of api.value.type=union. In that case we still use a +# union for YYSTYPE, but we generate the contents of this union when +# setting up YYSTYPE. This is needed for other aspects, such as +# defining yy_symbol_value_print, since we need to now the name of the +# members of this union. +# +# To avoid this issue, just generate the header before the +# implementation file. But we should also make them more independent. + +# ----------------- # +# The header file. # +# ----------------- # + +# glr.cc produces its own header. +b4_glr_cc_if([], +[b4_header_if( +[b4_output_begin([b4_spec_header_file]) +b4_copyright([Skeleton interface for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end[ +]])]) + + +# ------------------------- # +# The implementation file. # +# ------------------------- # + +b4_output_begin([b4_parser_file_name]) +b4_copyright([Skeleton implementation for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +/* C GLR parser skeleton written by Paul Hilfinger. */ + +]b4_disclaimer[ +]b4_identification[ + +]b4_percent_code_get([[top]])[ +]m4_if(b4_api_prefix, [yy], [], +[[/* Substitute the type names. */ +#define YYSTYPE ]b4_api_PREFIX[STYPE]b4_locations_if([[ +#define YYLTYPE ]b4_api_PREFIX[LTYPE]])])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define ]b4_glr_cc_if([yy_parse_impl], [yyparse])[ ]b4_prefix[]b4_glr_cc_if([_parse_impl], [parse])[ +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug]]b4_pure_if([], [[ +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char +#define yynerrs ]b4_prefix[nerrs]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])]))[ + +]b4_user_pre_prologue[ +]b4_cast_define[ +]b4_null_define[ + +]b4_header_if([[#include ]b4_percent_define_get([[api.header.include]])], + [b4_shared_declarations])[ + +]b4_glr_cc_if([b4_glr_cc_setup], + [b4_declare_symbol_enum])[ + +/* Default (constant) value used for initialization for null + right-hand sides. Unlike the standard yacc.c template, here we set + the default value of $$ to a zeroed-out value. Since the default + value is undefined, this behavior is technically correct. */ +static YYSTYPE yyval_default;]b4_locations_if([[ +static YYLTYPE yyloc_default][]b4_yyloc_default;])[ + +]b4_user_post_prologue[ +]b4_percent_code_get[]dnl + +[#include +#include +#include +#include +#include + +]b4_c99_int_type_define[ +]b4_sizes_types_define[ + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +#ifndef YYFREE +# define YYFREE free +#endif +#ifndef YYMALLOC +# define YYMALLOC malloc +#endif +#ifndef YYREALLOC +# define YYREALLOC realloc +#endif + +#ifdef __cplusplus + typedef bool yybool; +# define yytrue true +# define yyfalse false +#else + /* When we move to stdbool, get rid of the various casts to yybool. */ + typedef signed char yybool; +# define yytrue 1 +# define yyfalse 0 +#endif + +#ifndef YYSETJMP +# include +# define YYJMP_BUF jmp_buf +# define YYSETJMP(Env) setjmp (Env) +/* Pacify Clang and ICC. */ +# define YYLONGJMP(Env, Val) \ + do { \ + longjmp (Env, Val); \ + YY_ASSERT (0); \ + } while (yyfalse) +#endif + +]b4_attribute_define([noreturn])[ + +]b4_parse_assert_if([[#ifdef NDEBUG +# define YY_ASSERT(E) ((void) (0 && (E))) +#else +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_ASSERT(E) assert (E) +#endif +]], +[[#define YY_ASSERT(E) ((void) (0 && (E)))]])[ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ +/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */ +#define YYMAXRHS ]b4_r2_max[ +/* YYMAXLEFT -- Maximum number of symbols to the left of a handle + accessed by $0, $-1, etc., in any rule. */ +#define YYMAXLEFT ]b4_max_left_semantic_context[ + +/* YYMAXUTOK -- Last valid token kind. */ +#define YYMAXUTOK ]b4_code_max[ + +/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ +]b4_api_token_raw_if(dnl +[[#define YYTRANSLATE(YYX) YY_CAST (yysymbol_kind_t, YYX)]], +[[#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK \ + ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \ + : ]b4_symbol_prefix[YYUNDEF) + +/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM + as returned by yylex. */ +static const ]b4_int_type_for([b4_translate])[ yytranslate[] = +{ + ]b4_translate[ +};]])[ + +#if ]b4_api_PREFIX[DEBUG +/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ +static const ]b4_int_type_for([b4_rline])[ yyrline[] = +{ + ]b4_rline[ +}; +#endif + +#define YYPACT_NINF (]b4_pact_ninf[) +#define YYTABLE_NINF (]b4_table_ninf[) + +]b4_parser_tables_define[ + +/* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */ +static const ]b4_int_type_for([b4_dprec])[ yydprec[] = +{ + ]b4_dprec[ +}; + +/* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */ +static const ]b4_int_type_for([b4_merger])[ yymerger[] = +{ + ]b4_merger[ +}; + +/* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as + in the case of predicates. */ +static const yybool yyimmediate[] = +{ + ]b4_immediate[ +}; + +/* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of + list of conflicting reductions corresponding to action entry for + state STATE-NUM in yytable. 0 means no conflicts. The list in + yyconfl is terminated by a rule number of 0. */ +static const ]b4_int_type_for([b4_conflict_list_heads])[ yyconflp[] = +{ + ]b4_conflict_list_heads[ +}; + +/* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by + 0, pointed into by YYCONFLP. */ +]dnl Do not use b4_int_type_for here, since there are places where +dnl pointers onto yyconfl are taken, whose type is "short*". +dnl We probably ought to introduce a type for confl. +[static const short yyconfl[] = +{ + ]b4_conflicting_rules[ +}; + +]b4_locations_if([[ +]b4_yylloc_default_define[ +# define YYRHSLOC(Rhs, K) ((Rhs)[K].yystate.yyloc) +]])[ + +]b4_pure_if( +[ +#undef yynerrs +#define yynerrs (yystackp->yyerrcnt) +#undef yychar +#define yychar (yystackp->yyrawchar) +#undef yylval +#define yylval (yystackp->yyval) +#undef yylloc +#define yylloc (yystackp->yyloc) +m4_if(b4_prefix[], [yy], [], +[#define b4_prefix[]nerrs yynerrs +#define b4_prefix[]char yychar +#define b4_prefix[]lval yylval +#define b4_prefix[]lloc yylloc])], +[YYSTYPE yylval;]b4_locations_if([[ +YYLTYPE yylloc;]])[ + +int yynerrs; +int yychar;])[ + +enum { YYENOMEM = -2 }; + +typedef enum { yyok, yyaccept, yyabort, yyerr, yynomem } YYRESULTTAG; + +#define YYCHK(YYE) \ + do { \ + YYRESULTTAG yychk_flag = YYE; \ + if (yychk_flag != yyok) \ + return yychk_flag; \ + } while (0) + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif + +/* Minimum number of free items on the stack allowed after an + allocation. This is to allow allocation and initialization + to be completed by functions that call yyexpandGLRStack before the + stack is expanded, thus insuring that all necessary pointers get + properly redirected to new data. */ +#define YYHEADROOM 2 + +#ifndef YYSTACKEXPANDABLE +# define YYSTACKEXPANDABLE 1 +#endif + +#if YYSTACKEXPANDABLE +# define YY_RESERVE_GLRSTACK(Yystack) \ + do { \ + if (Yystack->yyspaceLeft < YYHEADROOM) \ + yyexpandGLRStack (Yystack); \ + } while (0) +#else +# define YY_RESERVE_GLRSTACK(Yystack) \ + do { \ + if (Yystack->yyspaceLeft < YYHEADROOM) \ + yyMemoryExhausted (Yystack); \ + } while (0) +#endif + +/** State numbers. */ +typedef int yy_state_t; + +/** Rule numbers. */ +typedef int yyRuleNum; + +/** Item references. */ +typedef short yyItemNum; + +typedef struct yyGLRState yyGLRState; +typedef struct yyGLRStateSet yyGLRStateSet; +typedef struct yySemanticOption yySemanticOption; +typedef union yyGLRStackItem yyGLRStackItem; +typedef struct yyGLRStack yyGLRStack; + +struct yyGLRState +{ + /** Type tag: always true. */ + yybool yyisState; + /** Type tag for yysemantics. If true, yyval applies, otherwise + * yyfirstVal applies. */ + yybool yyresolved; + /** Number of corresponding LALR(1) machine state. */ + yy_state_t yylrState; + /** Preceding state in this stack */ + yyGLRState* yypred; + /** Source position of the last token produced by my symbol */ + YYPTRDIFF_T yyposn; + union { + /** First in a chain of alternative reductions producing the + * nonterminal corresponding to this state, threaded through + * yynext. */ + yySemanticOption* yyfirstVal; + /** Semantic value for this state. */ + YYSTYPE yyval; + } yysemantics;]b4_locations_if([[ + /** Source location for this state. */ + YYLTYPE yyloc;]])[ +}; + +struct yyGLRStateSet +{ + yyGLRState** yystates; + /** During nondeterministic operation, yylookaheadNeeds tracks which + * stacks have actually needed the current lookahead. During deterministic + * operation, yylookaheadNeeds[0] is not maintained since it would merely + * duplicate yychar != ]b4_symbol(empty, id)[. */ + yybool* yylookaheadNeeds; + YYPTRDIFF_T yysize; + YYPTRDIFF_T yycapacity; +}; + +struct yySemanticOption +{ + /** Type tag: always false. */ + yybool yyisState; + /** Rule number for this reduction */ + yyRuleNum yyrule; + /** The last RHS state in the list of states to be reduced. */ + yyGLRState* yystate; + /** The lookahead for this reduction. */ + int yyrawchar; + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ + /** Next sibling in chain of options. To facilitate merging, + * options are chained in decreasing order by address. */ + yySemanticOption* yynext; +}; + +/** Type of the items in the GLR stack. The yyisState field + * indicates which item of the union is valid. */ +union yyGLRStackItem { + yyGLRState yystate; + yySemanticOption yyoption; +}; + +struct yyGLRStack { + int yyerrState; +]b4_locations_if([[ /* To compute the location of the error token. */ + yyGLRStackItem yyerror_range[3];]])[ +]b4_pure_if( +[ + int yyerrcnt; + int yyrawchar; + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ +])[ + YYJMP_BUF yyexception_buffer; + yyGLRStackItem* yyitems; + yyGLRStackItem* yynextFree; + YYPTRDIFF_T yyspaceLeft; + yyGLRState* yysplitPoint; + yyGLRState* yylastDeleted; + yyGLRStateSet yytops; +}; + +#if YYSTACKEXPANDABLE +static void yyexpandGLRStack (yyGLRStack* yystackp); +#endif + +_Noreturn static void +yyFail (yyGLRStack* yystackp]b4_pure_formals[, const char* yymsg) +{ + if (yymsg != YY_NULLPTR) + yyerror (]b4_yyerror_args[yymsg); + YYLONGJMP (yystackp->yyexception_buffer, 1); +} + +_Noreturn static void +yyMemoryExhausted (yyGLRStack* yystackp) +{ + YYLONGJMP (yystackp->yyexception_buffer, 2); +} + +/** Accessing symbol of state YYSTATE. */ +static inline yysymbol_kind_t +yy_accessing_symbol (yy_state_t yystate) +{ + return YY_CAST (yysymbol_kind_t, yystos[yystate]); +} + +#if ]b4_parse_error_case([simple], [b4_api_PREFIX[DEBUG || ]b4_token_table_flag], [[1]])[ +/* The user-facing name of the symbol whose (internal) number is + YYSYMBOL. No bounds checking. */ +static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED; + +]b4_parse_error_bmatch([simple\|verbose], +[[/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + ]b4_tname[ +}; + +static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + return yytname[yysymbol]; +}]], +[[static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ +}]])[ +#endif + +/** Left-hand-side symbol for rule #YYRULE. */ +static inline yysymbol_kind_t +yylhsNonterm (yyRuleNum yyrule) +{ + return YY_CAST (yysymbol_kind_t, yyr1[yyrule]); +} + +#if ]b4_api_PREFIX[DEBUG + +# ifndef YYFPRINTF +# define YYFPRINTF fprintf +# endif + +# define YY_FPRINTF \ + YY_IGNORE_USELESS_CAST_BEGIN YY_FPRINTF_ + +# define YY_FPRINTF_(Args) \ + do { \ + YYFPRINTF Args; \ + YY_IGNORE_USELESS_CAST_END \ + } while (0) + +# define YY_DPRINTF \ + YY_IGNORE_USELESS_CAST_BEGIN YY_DPRINTF_ + +# define YY_DPRINTF_(Args) \ + do { \ + if (yydebug) \ + YYFPRINTF Args; \ + YY_IGNORE_USELESS_CAST_END \ + } while (0) + +]b4_yylocation_print_define[ + +]b4_yy_symbol_print_define[ + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ + do { \ + if (yydebug) \ + { \ + YY_FPRINTF ((stderr, "%s ", Title)); \ + yy_symbol_print (stderr, Kind, Value]b4_locuser_args([Location])[); \ + YY_FPRINTF ((stderr, "\n")); \ + } \ + } while (0) + +static inline void +yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, YYPTRDIFF_T yyk, + yyRuleNum yyrule]b4_user_formals[); + +# define YY_REDUCE_PRINT(Args) \ + do { \ + if (yydebug) \ + yy_reduce_print Args; \ + } while (0) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; + +static void yypstack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) + YY_ATTRIBUTE_UNUSED; +static void yypdumpstack (yyGLRStack* yystackp) + YY_ATTRIBUTE_UNUSED; + +#else /* !]b4_api_PREFIX[DEBUG */ + +# define YY_DPRINTF(Args) do {} while (yyfalse) +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) +# define YY_REDUCE_PRINT(Args) + +#endif /* !]b4_api_PREFIX[DEBUG */ + +]b4_parse_error_case( + [simple], +[[]], +[[#ifndef yystrlen +# define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S))) +#endif + +]b4_parse_error_bmatch( + [detailed\|verbose], +[[#ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +static char * +yystpcpy (char *yydest, const char *yysrc) +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +#endif]])[ + +]b4_parse_error_case( + [verbose], +[[#ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYPTRDIFF_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYPTRDIFF_T yyn = 0; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else + return yystrlen (yystr); +} +#endif +]])])[ + +/** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting + * at YYVSP[YYLOW0].yystate.yypred. Leaves YYVSP[YYLOW1].yystate.yypred + * containing the pointer to the next state in the chain. */ +static void yyfillin (yyGLRStackItem *, int, int) YY_ATTRIBUTE_UNUSED; +static void +yyfillin (yyGLRStackItem *yyvsp, int yylow0, int yylow1) +{ + int i; + yyGLRState *s = yyvsp[yylow0].yystate.yypred; + for (i = yylow0-1; i >= yylow1; i -= 1) + { +#if ]b4_api_PREFIX[DEBUG + yyvsp[i].yystate.yylrState = s->yylrState; +#endif + yyvsp[i].yystate.yyresolved = s->yyresolved; + if (s->yyresolved) + yyvsp[i].yystate.yysemantics.yyval = s->yysemantics.yyval; + else + /* The effect of using yyval or yyloc (in an immediate rule) is + * undefined. */ + yyvsp[i].yystate.yysemantics.yyfirstVal = YY_NULLPTR;]b4_locations_if([[ + yyvsp[i].yystate.yyloc = s->yyloc;]])[ + s = yyvsp[i].yystate.yypred = s->yypred; + } +} + +]m4_define([b4_yygetToken_call], + [[yygetToken (&yychar][]b4_pure_if([, yystackp])[]b4_user_args[)]])[ +/** If yychar is empty, fetch the next token. */ +static inline yysymbol_kind_t +yygetToken (int *yycharp][]b4_pure_if([, yyGLRStack* yystackp])[]b4_user_formals[) +{ + yysymbol_kind_t yytoken; +]b4_parse_param_use()dnl +[ if (*yycharp == ]b4_symbol(empty, id)[) + { + YY_DPRINTF ((stderr, "Reading a token\n"));]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + try + { +#endif // YY_EXCEPTIONS + *yycharp = ]b4_yylex[; +#if YY_EXCEPTIONS + } + catch (const ]b4_namespace_ref[::]b4_parser_class[::syntax_error& yyexc) + { + YY_DPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ + yylloc = yyexc.location;])[ + yyerror (]b4_lyyerror_args[yyexc.what ()); + // Map errors caught in the scanner to the undefined token, + // so that error handling is started. However, record this + // with this special value of yychar. + *yycharp = ]b4_symbol(error, id)[; + } +#endif // YY_EXCEPTIONS]], [[ + *yycharp = ]b4_yylex[;]])[ + } + if (*yycharp <= ]b4_symbol(eof, [id])[) + { + *yycharp = ]b4_symbol(eof, [id])[; + yytoken = ]b4_symbol_prefix[YYEOF; + YY_DPRINTF ((stderr, "Now at end of input.\n")); + } + else + { + yytoken = YYTRANSLATE (*yycharp); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + return yytoken; +} + +/* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in + * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1. + * For convenience, always return YYLOW1. */ +static inline int yyfill (yyGLRStackItem *, int *, int, yybool) + YY_ATTRIBUTE_UNUSED; +static inline int +yyfill (yyGLRStackItem *yyvsp, int *yylow, int yylow1, yybool yynormal) +{ + if (!yynormal && yylow1 < *yylow) + { + yyfillin (yyvsp, *yylow, yylow1); + *yylow = yylow1; + } + return yylow1; +} + +/** Perform user action for rule number YYN, with RHS length YYRHSLEN, + * and top stack item YYVSP. YYLVALP points to place to put semantic + * value ($$), and yylocp points to place for location information + * (@@$). Returns yyok for normal return, yyaccept for YYACCEPT, + * yyerr for YYERROR, yyabort for YYABORT, yynomem for YYNOMEM. */ +static YYRESULTTAG +yyuserAction (yyRuleNum yyrule, int yyrhslen, yyGLRStackItem* yyvsp, + yyGLRStack* yystackp, YYPTRDIFF_T yyk, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + const yybool yynormal YY_ATTRIBUTE_UNUSED = yystackp->yysplitPoint == YY_NULLPTR; + int yylow = 1; +]b4_parse_param_use([yyvalp], [yylocp])dnl +[ YY_USE (yyk); + YY_USE (yyrhslen); +# undef yyerrok +# define yyerrok (yystackp->yyerrState = 0) +# undef YYACCEPT +# define YYACCEPT return yyaccept +# undef YYABORT +# define YYABORT return yyabort +# undef YYNOMEM +# define YYNOMEM return yynomem +# undef YYERROR +# define YYERROR return yyerrok, yyerr +# undef YYRECOVERING +# define YYRECOVERING() (yystackp->yyerrState != 0) +# undef yyclearin +# define yyclearin (yychar = ]b4_symbol(empty, id)[) +# undef YYFILL +# define YYFILL(N) yyfill (yyvsp, &yylow, (N), yynormal) +# undef YYBACKUP +# define YYBACKUP(Token, Value) \ + return yyerror (]b4_yyerror_args[YY_("syntax error: cannot back up")), \ + yyerrok, yyerr + + if (yyrhslen == 0) + *yyvalp = yyval_default; + else + *yyvalp = yyvsp[YYFILL (1-yyrhslen)].yystate.yysemantics.yyval;]b4_locations_if([[ + /* Default location. */ + YYLLOC_DEFAULT ((*yylocp), (yyvsp - yyrhslen), yyrhslen); + yystackp->yyerror_range[1].yystate.yyloc = *yylocp;]])[ + /* If yyk == -1, we are running a deferred action on a temporary + stack. In that case, YY_REDUCE_PRINT must not play with YYFILL, + so pretend the stack is "normal". */ + YY_REDUCE_PRINT ((yynormal || yyk == -1, yyvsp, yyk, yyrule]b4_user_args[));]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + typedef ]b4_namespace_ref[::]b4_parser_class[::syntax_error syntax_error; + try + { +#endif // YY_EXCEPTIONS]])[ + switch (yyrule) + { +]b4_user_actions[ + default: break; + }]b4_glr_cc_if([[ +#if YY_EXCEPTIONS + } + catch (const syntax_error& yyexc) + { + YY_DPRINTF ((stderr, "Caught exception: %s\n", yyexc.what()));]b4_locations_if([ + *yylocp = yyexc.location;])[ + yyerror (]b4_yyerror_args[yyexc.what ()); + YYERROR; + } +#endif // YY_EXCEPTIONS]])[ + YY_SYMBOL_PRINT ("-> $$ =", yylhsNonterm (yyrule), yyvalp, yylocp); + + return yyok; +# undef yyerrok +# undef YYABORT +# undef YYACCEPT +# undef YYNOMEM +# undef YYERROR +# undef YYBACKUP +# undef yyclearin +# undef YYRECOVERING +} + + +static void +yyuserMerge (int yyn, YYSTYPE* yy0, YYSTYPE* yy1) +{ + YY_USE (yy0); + YY_USE (yy1); + + switch (yyn) + { +]b4_mergers[ + default: break; + } +} + + /* Bison grammar-table manipulation. */ + +]b4_yydestruct_define[ + +/** Number of symbols composing the right hand side of rule #RULE. */ +static inline int +yyrhsLength (yyRuleNum yyrule) +{ + return yyr2[yyrule]; +} + +static void +yydestroyGLRState (char const *yymsg, yyGLRState *yys]b4_user_formals[) +{ + if (yys->yyresolved) + yydestruct (yymsg, yy_accessing_symbol (yys->yylrState), + &yys->yysemantics.yyval]b4_locuser_args([&yys->yyloc])[); + else + { +#if ]b4_api_PREFIX[DEBUG + if (yydebug) + { + if (yys->yysemantics.yyfirstVal) + YY_FPRINTF ((stderr, "%s unresolved", yymsg)); + else + YY_FPRINTF ((stderr, "%s incomplete", yymsg)); + YY_SYMBOL_PRINT ("", yy_accessing_symbol (yys->yylrState), YY_NULLPTR, &yys->yyloc); + } +#endif + + if (yys->yysemantics.yyfirstVal) + { + yySemanticOption *yyoption = yys->yysemantics.yyfirstVal; + yyGLRState *yyrh; + int yyn; + for (yyrh = yyoption->yystate, yyn = yyrhsLength (yyoption->yyrule); + yyn > 0; + yyrh = yyrh->yypred, yyn -= 1) + yydestroyGLRState (yymsg, yyrh]b4_user_args[); + } + } +} + +#define yypact_value_is_default(Yyn) \ + ]b4_table_value_equals([[pact]], [[Yyn]], [b4_pact_ninf], [YYPACT_NINF])[ + +/** True iff LR state YYSTATE has only a default reduction (regardless + * of token). */ +static inline yybool +yyisDefaultedState (yy_state_t yystate) +{ + return yypact_value_is_default (yypact[yystate]); +} + +/** The default reduction for YYSTATE, assuming it has one. */ +static inline yyRuleNum +yydefaultAction (yy_state_t yystate) +{ + return yydefact[yystate]; +} + +#define yytable_value_is_error(Yyn) \ + ]b4_table_value_equals([[table]], [[Yyn]], [b4_table_ninf], [YYTABLE_NINF])[ + +/** The action to take in YYSTATE on seeing YYTOKEN. + * Result R means + * R < 0: Reduce on rule -R. + * R = 0: Error. + * R > 0: Shift to state R. + * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list + * of conflicting reductions. + */ +static inline int +yygetLRActions (yy_state_t yystate, yysymbol_kind_t yytoken, const short** yyconflicts) +{ + int yyindex = yypact[yystate] + yytoken; + if (yytoken == ]b4_symbol(error, kind)[) + { + // This is the error token. + *yyconflicts = yyconfl; + return 0; + } + else if (yyisDefaultedState (yystate) + || yyindex < 0 || YYLAST < yyindex || yycheck[yyindex] != yytoken) + { + *yyconflicts = yyconfl; + return -yydefact[yystate]; + } + else if (! yytable_value_is_error (yytable[yyindex])) + { + *yyconflicts = yyconfl + yyconflp[yyindex]; + return yytable[yyindex]; + } + else + { + *yyconflicts = yyconfl + yyconflp[yyindex]; + return 0; + } +} + +/** Compute post-reduction state. + * \param yystate the current state + * \param yysym the nonterminal to push on the stack + */ +static inline yy_state_t +yyLRgotoState (yy_state_t yystate, yysymbol_kind_t yysym) +{ + int yyr = yypgoto[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= YYLAST && yycheck[yyr] == yystate) + return yytable[yyr]; + else + return yydefgoto[yysym - YYNTOKENS]; +} + +static inline yybool +yyisShiftAction (int yyaction) +{ + return 0 < yyaction; +} + +static inline yybool +yyisErrorAction (int yyaction) +{ + return yyaction == 0; +} + + /* GLRStates */ + +/** Return a fresh GLRStackItem in YYSTACKP. The item is an LR state + * if YYISSTATE, and otherwise a semantic option. Callers should call + * YY_RESERVE_GLRSTACK afterwards to make sure there is sufficient + * headroom. */ + +static inline yyGLRStackItem* +yynewGLRStackItem (yyGLRStack* yystackp, yybool yyisState) +{ + yyGLRStackItem* yynewItem = yystackp->yynextFree; + yystackp->yyspaceLeft -= 1; + yystackp->yynextFree += 1; + yynewItem->yystate.yyisState = yyisState; + return yynewItem; +} + +/** Add a new semantic action that will execute the action for rule + * YYRULE on the semantic values in YYRHS to the list of + * alternative actions for YYSTATE. Assumes that YYRHS comes from + * stack #YYK of *YYSTACKP. */ +static void +yyaddDeferredAction (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyGLRState* yystate, + yyGLRState* yyrhs, yyRuleNum yyrule) +{ + yySemanticOption* yynewOption = + &yynewGLRStackItem (yystackp, yyfalse)->yyoption; + YY_ASSERT (!yynewOption->yyisState); + yynewOption->yystate = yyrhs; + yynewOption->yyrule = yyrule; + if (yystackp->yytops.yylookaheadNeeds[yyk]) + { + yynewOption->yyrawchar = yychar; + yynewOption->yyval = yylval;]b4_locations_if([ + yynewOption->yyloc = yylloc;])[ + } + else + yynewOption->yyrawchar = ]b4_symbol(empty, id)[; + yynewOption->yynext = yystate->yysemantics.yyfirstVal; + yystate->yysemantics.yyfirstVal = yynewOption; + + YY_RESERVE_GLRSTACK (yystackp); +} + + /* GLRStacks */ + +/** Initialize YYSET to a singleton set containing an empty stack. */ +static yybool +yyinitStateSet (yyGLRStateSet* yyset) +{ + yyset->yysize = 1; + yyset->yycapacity = 16; + yyset->yystates + = YY_CAST (yyGLRState**, + YYMALLOC (YY_CAST (YYSIZE_T, yyset->yycapacity) + * sizeof yyset->yystates[0])); + if (! yyset->yystates) + return yyfalse; + yyset->yystates[0] = YY_NULLPTR; + yyset->yylookaheadNeeds + = YY_CAST (yybool*, + YYMALLOC (YY_CAST (YYSIZE_T, yyset->yycapacity) + * sizeof yyset->yylookaheadNeeds[0])); + if (! yyset->yylookaheadNeeds) + { + YYFREE (yyset->yystates); + return yyfalse; + } + memset (yyset->yylookaheadNeeds, + 0, + YY_CAST (YYSIZE_T, yyset->yycapacity) * sizeof yyset->yylookaheadNeeds[0]); + return yytrue; +} + +static void yyfreeStateSet (yyGLRStateSet* yyset) +{ + YYFREE (yyset->yystates); + YYFREE (yyset->yylookaheadNeeds); +} + +/** Initialize *YYSTACKP to a single empty stack, with total maximum + * capacity for all stacks of YYSIZE. */ +static yybool +yyinitGLRStack (yyGLRStack* yystackp, YYPTRDIFF_T yysize) +{ + yystackp->yyerrState = 0; + yynerrs = 0; + yystackp->yyspaceLeft = yysize; + yystackp->yyitems + = YY_CAST (yyGLRStackItem*, + YYMALLOC (YY_CAST (YYSIZE_T, yysize) + * sizeof yystackp->yynextFree[0])); + if (!yystackp->yyitems) + return yyfalse; + yystackp->yynextFree = yystackp->yyitems; + yystackp->yysplitPoint = YY_NULLPTR; + yystackp->yylastDeleted = YY_NULLPTR; + return yyinitStateSet (&yystackp->yytops); +} + + +#if YYSTACKEXPANDABLE +# define YYRELOC(YYFROMITEMS, YYTOITEMS, YYX, YYTYPE) \ + &((YYTOITEMS) \ + - ((YYFROMITEMS) - YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX))))->YYTYPE + +/** If *YYSTACKP is expandable, extend it. WARNING: Pointers into the + stack from outside should be considered invalid after this call. + We always expand when there are 1 or fewer items left AFTER an + allocation, so that we can avoid having external pointers exist + across an allocation. */ +static void +yyexpandGLRStack (yyGLRStack* yystackp) +{ + yyGLRStackItem* yynewItems; + yyGLRStackItem* yyp0, *yyp1; + YYPTRDIFF_T yynewSize; + YYPTRDIFF_T yyn; + YYPTRDIFF_T yysize = yystackp->yynextFree - yystackp->yyitems; + if (YYMAXDEPTH - YYHEADROOM < yysize) + yyMemoryExhausted (yystackp); + yynewSize = 2*yysize; + if (YYMAXDEPTH < yynewSize) + yynewSize = YYMAXDEPTH; + yynewItems + = YY_CAST (yyGLRStackItem*, + YYMALLOC (YY_CAST (YYSIZE_T, yynewSize) + * sizeof yynewItems[0])); + if (! yynewItems) + yyMemoryExhausted (yystackp); + for (yyp0 = yystackp->yyitems, yyp1 = yynewItems, yyn = yysize; + 0 < yyn; + yyn -= 1, yyp0 += 1, yyp1 += 1) + { + *yyp1 = *yyp0; + if (*YY_REINTERPRET_CAST (yybool *, yyp0)) + { + yyGLRState* yys0 = &yyp0->yystate; + yyGLRState* yys1 = &yyp1->yystate; + if (yys0->yypred != YY_NULLPTR) + yys1->yypred = + YYRELOC (yyp0, yyp1, yys0->yypred, yystate); + if (! yys0->yyresolved && yys0->yysemantics.yyfirstVal != YY_NULLPTR) + yys1->yysemantics.yyfirstVal = + YYRELOC (yyp0, yyp1, yys0->yysemantics.yyfirstVal, yyoption); + } + else + { + yySemanticOption* yyv0 = &yyp0->yyoption; + yySemanticOption* yyv1 = &yyp1->yyoption; + if (yyv0->yystate != YY_NULLPTR) + yyv1->yystate = YYRELOC (yyp0, yyp1, yyv0->yystate, yystate); + if (yyv0->yynext != YY_NULLPTR) + yyv1->yynext = YYRELOC (yyp0, yyp1, yyv0->yynext, yyoption); + } + } + if (yystackp->yysplitPoint != YY_NULLPTR) + yystackp->yysplitPoint = YYRELOC (yystackp->yyitems, yynewItems, + yystackp->yysplitPoint, yystate); + + for (yyn = 0; yyn < yystackp->yytops.yysize; yyn += 1) + if (yystackp->yytops.yystates[yyn] != YY_NULLPTR) + yystackp->yytops.yystates[yyn] = + YYRELOC (yystackp->yyitems, yynewItems, + yystackp->yytops.yystates[yyn], yystate); + YYFREE (yystackp->yyitems); + yystackp->yyitems = yynewItems; + yystackp->yynextFree = yynewItems + yysize; + yystackp->yyspaceLeft = yynewSize - yysize; +} +#endif + +static void +yyfreeGLRStack (yyGLRStack* yystackp) +{ + YYFREE (yystackp->yyitems); + yyfreeStateSet (&yystackp->yytops); +} + +/** Assuming that YYS is a GLRState somewhere on *YYSTACKP, update the + * splitpoint of *YYSTACKP, if needed, so that it is at least as deep as + * YYS. */ +static inline void +yyupdateSplit (yyGLRStack* yystackp, yyGLRState* yys) +{ + if (yystackp->yysplitPoint != YY_NULLPTR && yystackp->yysplitPoint > yys) + yystackp->yysplitPoint = yys; +} + +/** Invalidate stack #YYK in *YYSTACKP. */ +static inline void +yymarkStackDeleted (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + if (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + yystackp->yylastDeleted = yystackp->yytops.yystates[yyk]; + yystackp->yytops.yystates[yyk] = YY_NULLPTR; +} + +/** Undelete the last stack in *YYSTACKP that was marked as deleted. Can + only be done once after a deletion, and only when all other stacks have + been deleted. */ +static void +yyundeleteLastStack (yyGLRStack* yystackp) +{ + if (yystackp->yylastDeleted == YY_NULLPTR || yystackp->yytops.yysize != 0) + return; + yystackp->yytops.yystates[0] = yystackp->yylastDeleted; + yystackp->yytops.yysize = 1; + YY_DPRINTF ((stderr, "Restoring last deleted stack as stack #0.\n")); + yystackp->yylastDeleted = YY_NULLPTR; +} + +static inline void +yyremoveDeletes (yyGLRStack* yystackp) +{ + YYPTRDIFF_T yyi, yyj; + yyi = yyj = 0; + while (yyj < yystackp->yytops.yysize) + { + if (yystackp->yytops.yystates[yyi] == YY_NULLPTR) + { + if (yyi == yyj) + YY_DPRINTF ((stderr, "Removing dead stacks.\n")); + yystackp->yytops.yysize -= 1; + } + else + { + yystackp->yytops.yystates[yyj] = yystackp->yytops.yystates[yyi]; + /* In the current implementation, it's unnecessary to copy + yystackp->yytops.yylookaheadNeeds[yyi] since, after + yyremoveDeletes returns, the parser immediately either enters + deterministic operation or shifts a token. However, it doesn't + hurt, and the code might evolve to need it. */ + yystackp->yytops.yylookaheadNeeds[yyj] = + yystackp->yytops.yylookaheadNeeds[yyi]; + if (yyj != yyi) + YY_DPRINTF ((stderr, "Rename stack %ld -> %ld.\n", + YY_CAST (long, yyi), YY_CAST (long, yyj))); + yyj += 1; + } + yyi += 1; + } +} + +/** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic + * value *YYVALP and source location *YYLOCP. */ +static inline void +yyglrShift (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yy_state_t yylrState, + YYPTRDIFF_T yyposn, + YYSTYPE* yyvalp]b4_locations_if([, YYLTYPE* yylocp])[) +{ + yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate; + + yynewState->yylrState = yylrState; + yynewState->yyposn = yyposn; + yynewState->yyresolved = yytrue; + yynewState->yypred = yystackp->yytops.yystates[yyk]; + yynewState->yysemantics.yyval = *yyvalp;]b4_locations_if([ + yynewState->yyloc = *yylocp;])[ + yystackp->yytops.yystates[yyk] = yynewState; + + YY_RESERVE_GLRSTACK (yystackp); +} + +/** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with the (unresolved) + * semantic value of YYRHS under the action for YYRULE. */ +static inline void +yyglrShiftDefer (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yy_state_t yylrState, + YYPTRDIFF_T yyposn, yyGLRState* yyrhs, yyRuleNum yyrule) +{ + yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate; + YY_ASSERT (yynewState->yyisState); + + yynewState->yylrState = yylrState; + yynewState->yyposn = yyposn; + yynewState->yyresolved = yyfalse; + yynewState->yypred = yystackp->yytops.yystates[yyk]; + yynewState->yysemantics.yyfirstVal = YY_NULLPTR; + yystackp->yytops.yystates[yyk] = yynewState; + + /* Invokes YY_RESERVE_GLRSTACK. */ + yyaddDeferredAction (yystackp, yyk, yynewState, yyrhs, yyrule); +} + +#if ]b4_api_PREFIX[DEBUG + +/*----------------------------------------------------------------------. +| Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. | +`----------------------------------------------------------------------*/ + +static inline void +yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, YYPTRDIFF_T yyk, + yyRuleNum yyrule]b4_user_formals[) +{ + int yynrhs = yyrhsLength (yyrule);]b4_locations_if([ + int yylow = 1;])[ + int yyi; + YY_FPRINTF ((stderr, "Reducing stack %ld by rule %d (line %d):\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule])); + if (! yynormal) + yyfillin (yyvsp, 1, -yynrhs); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YY_FPRINTF ((stderr, " $%d = ", yyi + 1)); + yy_symbol_print (stderr, + yy_accessing_symbol (yyvsp[yyi - yynrhs + 1].yystate.yylrState), + &yyvsp[yyi - yynrhs + 1].yystate.yysemantics.yyval]b4_locations_if([, + &]b4_rhs_location(yynrhs, yyi + 1))[]dnl + b4_user_args[); + if (!yyvsp[yyi - yynrhs + 1].yystate.yyresolved) + YY_FPRINTF ((stderr, " (unresolved)")); + YY_FPRINTF ((stderr, "\n")); + } +} +#endif + +/** Pop the symbols consumed by reduction #YYRULE from the top of stack + * #YYK of *YYSTACKP, and perform the appropriate semantic action on their + * semantic values. Assumes that all ambiguities in semantic values + * have been previously resolved. Set *YYVALP to the resulting value, + * and *YYLOCP to the computed location (if any). Return value is as + * for userAction. */ +static inline YYRESULTTAG +yydoAction (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyRuleNum yyrule, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + int yynrhs = yyrhsLength (yyrule); + + if (yystackp->yysplitPoint == YY_NULLPTR) + { + /* Standard special case: single stack. */ + yyGLRStackItem* yyrhs + = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yytops.yystates[yyk]); + YY_ASSERT (yyk == 0); + yystackp->yynextFree -= yynrhs; + yystackp->yyspaceLeft += yynrhs; + yystackp->yytops.yystates[0] = & yystackp->yynextFree[-1].yystate; + return yyuserAction (yyrule, yynrhs, yyrhs, yystackp, yyk, + yyvalp]b4_locuser_args[); + } + else + { + yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + yyGLRState* yys = yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred + = yystackp->yytops.yystates[yyk]; + int yyi;]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].yystate.yyloc = yys->yyloc;]])[ + for (yyi = 0; yyi < yynrhs; yyi += 1) + { + yys = yys->yypred; + YY_ASSERT (yys); + } + yyupdateSplit (yystackp, yys); + yystackp->yytops.yystates[yyk] = yys; + return yyuserAction (yyrule, yynrhs, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yystackp, yyk, yyvalp]b4_locuser_args[); + } +} + +/** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE, + * and push back on the resulting nonterminal symbol. Perform the + * semantic action associated with YYRULE and store its value with the + * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently + * unambiguous. Otherwise, store the deferred semantic action with + * the new state. If the new state would have an identical input + * position, LR state, and predecessor to an existing state on the stack, + * it is identified with that existing state, eliminating stack #YYK from + * *YYSTACKP. In this case, the semantic value is + * added to the options for the existing state's semantic value. + */ +static inline YYRESULTTAG +yyglrReduce (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyRuleNum yyrule, + yybool yyforceEval]b4_user_formals[) +{ + YYPTRDIFF_T yyposn = yystackp->yytops.yystates[yyk]->yyposn; + + if (yyforceEval || yystackp->yysplitPoint == YY_NULLPTR) + { + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc;]])[ + + YYRESULTTAG yyflag = yydoAction (yystackp, yyk, yyrule, &yyval]b4_locuser_args([&yyloc])[); + if (yyflag == yyerr && yystackp->yysplitPoint != YY_NULLPTR) + YY_DPRINTF ((stderr, + "Parse on stack %ld rejected by rule %d (line %d).\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule])); + if (yyflag != yyok) + return yyflag; + yyglrShift (yystackp, yyk, + yyLRgotoState (yystackp->yytops.yystates[yyk]->yylrState, + yylhsNonterm (yyrule)), + yyposn, &yyval]b4_locations_if([, &yyloc])[); + } + else + { + YYPTRDIFF_T yyi; + int yyn; + yyGLRState* yys, *yys0 = yystackp->yytops.yystates[yyk]; + yy_state_t yynewLRState; + + for (yys = yystackp->yytops.yystates[yyk], yyn = yyrhsLength (yyrule); + 0 < yyn; yyn -= 1) + { + yys = yys->yypred; + YY_ASSERT (yys); + } + yyupdateSplit (yystackp, yys); + yynewLRState = yyLRgotoState (yys->yylrState, yylhsNonterm (yyrule)); + YY_DPRINTF ((stderr, + "Reduced stack %ld by rule %d (line %d); action deferred. " + "Now in state %d.\n", + YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule], + yynewLRState)); + for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) + if (yyi != yyk && yystackp->yytops.yystates[yyi] != YY_NULLPTR) + { + yyGLRState *yysplit = yystackp->yysplitPoint; + yyGLRState *yyp = yystackp->yytops.yystates[yyi]; + while (yyp != yys && yyp != yysplit && yyp->yyposn >= yyposn) + { + if (yyp->yylrState == yynewLRState && yyp->yypred == yys) + { + yyaddDeferredAction (yystackp, yyk, yyp, yys0, yyrule); + yymarkStackDeleted (yystackp, yyk); + YY_DPRINTF ((stderr, "Merging stack %ld into stack %ld.\n", + YY_CAST (long, yyk), YY_CAST (long, yyi))); + return yyok; + } + yyp = yyp->yypred; + } + } + yystackp->yytops.yystates[yyk] = yys; + yyglrShiftDefer (yystackp, yyk, yynewLRState, yyposn, yys0, yyrule); + } + return yyok; +} + +static YYPTRDIFF_T +yysplitStack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + if (yystackp->yysplitPoint == YY_NULLPTR) + { + YY_ASSERT (yyk == 0); + yystackp->yysplitPoint = yystackp->yytops.yystates[yyk]; + } + if (yystackp->yytops.yycapacity <= yystackp->yytops.yysize) + { + YYPTRDIFF_T state_size = YYSIZEOF (yystackp->yytops.yystates[0]); + YYPTRDIFF_T half_max_capacity = YYSIZE_MAXIMUM / 2 / state_size; + if (half_max_capacity < yystackp->yytops.yycapacity) + yyMemoryExhausted (yystackp); + yystackp->yytops.yycapacity *= 2; + + { + yyGLRState** yynewStates + = YY_CAST (yyGLRState**, + YYREALLOC (yystackp->yytops.yystates, + (YY_CAST (YYSIZE_T, yystackp->yytops.yycapacity) + * sizeof yynewStates[0]))); + if (yynewStates == YY_NULLPTR) + yyMemoryExhausted (yystackp); + yystackp->yytops.yystates = yynewStates; + } + + { + yybool* yynewLookaheadNeeds + = YY_CAST (yybool*, + YYREALLOC (yystackp->yytops.yylookaheadNeeds, + (YY_CAST (YYSIZE_T, yystackp->yytops.yycapacity) + * sizeof yynewLookaheadNeeds[0]))); + if (yynewLookaheadNeeds == YY_NULLPTR) + yyMemoryExhausted (yystackp); + yystackp->yytops.yylookaheadNeeds = yynewLookaheadNeeds; + } + } + yystackp->yytops.yystates[yystackp->yytops.yysize] + = yystackp->yytops.yystates[yyk]; + yystackp->yytops.yylookaheadNeeds[yystackp->yytops.yysize] + = yystackp->yytops.yylookaheadNeeds[yyk]; + yystackp->yytops.yysize += 1; + return yystackp->yytops.yysize - 1; +} + +/** True iff YYY0 and YYY1 represent identical options at the top level. + * That is, they represent the same rule applied to RHS symbols + * that produce the same terminal symbols. */ +static yybool +yyidenticalOptions (yySemanticOption* yyy0, yySemanticOption* yyy1) +{ + if (yyy0->yyrule == yyy1->yyrule) + { + yyGLRState *yys0, *yys1; + int yyn; + for (yys0 = yyy0->yystate, yys1 = yyy1->yystate, + yyn = yyrhsLength (yyy0->yyrule); + yyn > 0; + yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1) + if (yys0->yyposn != yys1->yyposn) + return yyfalse; + return yytrue; + } + else + return yyfalse; +} + +/** Assuming identicalOptions (YYY0,YYY1), destructively merge the + * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */ +static void +yymergeOptionSets (yySemanticOption* yyy0, yySemanticOption* yyy1) +{ + yyGLRState *yys0, *yys1; + int yyn; + for (yys0 = yyy0->yystate, yys1 = yyy1->yystate, + yyn = yyrhsLength (yyy0->yyrule); + 0 < yyn; + yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1) + { + if (yys0 == yys1) + break; + else if (yys0->yyresolved) + { + yys1->yyresolved = yytrue; + yys1->yysemantics.yyval = yys0->yysemantics.yyval; + } + else if (yys1->yyresolved) + { + yys0->yyresolved = yytrue; + yys0->yysemantics.yyval = yys1->yysemantics.yyval; + } + else + { + yySemanticOption** yyz0p = &yys0->yysemantics.yyfirstVal; + yySemanticOption* yyz1 = yys1->yysemantics.yyfirstVal; + while (yytrue) + { + if (yyz1 == *yyz0p || yyz1 == YY_NULLPTR) + break; + else if (*yyz0p == YY_NULLPTR) + { + *yyz0p = yyz1; + break; + } + else if (*yyz0p < yyz1) + { + yySemanticOption* yyz = *yyz0p; + *yyz0p = yyz1; + yyz1 = yyz1->yynext; + (*yyz0p)->yynext = yyz; + } + yyz0p = &(*yyz0p)->yynext; + } + yys1->yysemantics.yyfirstVal = yys0->yysemantics.yyfirstVal; + } + } +} + +/** Y0 and Y1 represent two possible actions to take in a given + * parsing state; return 0 if no combination is possible, + * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */ +static int +yypreference (yySemanticOption* y0, yySemanticOption* y1) +{ + yyRuleNum r0 = y0->yyrule, r1 = y1->yyrule; + int p0 = yydprec[r0], p1 = yydprec[r1]; + + if (p0 == p1) + { + if (yymerger[r0] == 0 || yymerger[r0] != yymerger[r1]) + return 0; + else + return 1; + } + if (p0 == 0 || p1 == 0) + return 0; + if (p0 < p1) + return 3; + if (p1 < p0) + return 2; + return 0; +} + +static YYRESULTTAG +yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp]b4_user_formals[); + + +/** Resolve the previous YYN states starting at and including state YYS + * on *YYSTACKP. If result != yyok, some states may have been left + * unresolved possibly with empty semantic option chains. Regardless + * of whether result = yyok, each state has been left with consistent + * data so that yydestroyGLRState can be invoked if necessary. */ +static YYRESULTTAG +yyresolveStates (yyGLRState* yys, int yyn, + yyGLRStack* yystackp]b4_user_formals[) +{ + if (0 < yyn) + { + YY_ASSERT (yys->yypred); + YYCHK (yyresolveStates (yys->yypred, yyn-1, yystackp]b4_user_args[)); + if (! yys->yyresolved) + YYCHK (yyresolveValue (yys, yystackp]b4_user_args[)); + } + return yyok; +} + +/** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its + * user action, and return the semantic value and location in *YYVALP + * and *YYLOCP. Regardless of whether result = yyok, all RHS states + * have been destroyed (assuming the user action destroys all RHS + * semantic values if invoked). */ +static YYRESULTTAG +yyresolveAction (yySemanticOption* yyopt, yyGLRStack* yystackp, + YYSTYPE* yyvalp]b4_locuser_formals[) +{ + yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + int yynrhs = yyrhsLength (yyopt->yyrule); + YYRESULTTAG yyflag = + yyresolveStates (yyopt->yystate, yynrhs, yystackp]b4_user_args[); + if (yyflag != yyok) + { + yyGLRState *yys; + for (yys = yyopt->yystate; yynrhs > 0; yys = yys->yypred, yynrhs -= 1) + yydestroyGLRState ("Cleanup: popping", yys]b4_user_args[); + return yyflag; + } + + yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred = yyopt->yystate;]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].yystate.yyloc = yyopt->yystate->yyloc;]])[ + { + int yychar_current = yychar; + YYSTYPE yylval_current = yylval;]b4_locations_if([ + YYLTYPE yylloc_current = yylloc;])[ + yychar = yyopt->yyrawchar; + yylval = yyopt->yyval;]b4_locations_if([ + yylloc = yyopt->yyloc;])[ + yyflag = yyuserAction (yyopt->yyrule, yynrhs, + yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yystackp, -1, yyvalp]b4_locuser_args[); + yychar = yychar_current; + yylval = yylval_current;]b4_locations_if([ + yylloc = yylloc_current;])[ + } + return yyflag; +} + +#if ]b4_api_PREFIX[DEBUG +static void +yyreportTree (yySemanticOption* yyx, int yyindent) +{ + int yynrhs = yyrhsLength (yyx->yyrule); + int yyi; + yyGLRState* yys; + yyGLRState* yystates[1 + YYMAXRHS]; + yyGLRState yyleftmost_state; + + for (yyi = yynrhs, yys = yyx->yystate; 0 < yyi; yyi -= 1, yys = yys->yypred) + yystates[yyi] = yys; + if (yys == YY_NULLPTR) + { + yyleftmost_state.yyposn = 0; + yystates[0] = &yyleftmost_state; + } + else + yystates[0] = yys; + + if (yyx->yystate->yyposn < yys->yyposn + 1) + YY_FPRINTF ((stderr, "%*s%s -> \n", + yyindent, "", yysymbol_name (yylhsNonterm (yyx->yyrule)), + yyx->yyrule - 1)); + else + YY_FPRINTF ((stderr, "%*s%s -> \n", + yyindent, "", yysymbol_name (yylhsNonterm (yyx->yyrule)), + yyx->yyrule - 1, YY_CAST (long, yys->yyposn + 1), + YY_CAST (long, yyx->yystate->yyposn))); + for (yyi = 1; yyi <= yynrhs; yyi += 1) + { + if (yystates[yyi]->yyresolved) + { + if (yystates[yyi-1]->yyposn+1 > yystates[yyi]->yyposn) + YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "", + yysymbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)))); + else + YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "", + yysymbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)), + YY_CAST (long, yystates[yyi-1]->yyposn + 1), + YY_CAST (long, yystates[yyi]->yyposn))); + } + else + yyreportTree (yystates[yyi]->yysemantics.yyfirstVal, yyindent+2); + } +} +#endif + +static YYRESULTTAG +yyreportAmbiguity (yySemanticOption* yyx0, + yySemanticOption* yyx1]b4_pure_formals[) +{ + YY_USE (yyx0); + YY_USE (yyx1); + +#if ]b4_api_PREFIX[DEBUG + YY_FPRINTF ((stderr, "Ambiguity detected.\n")); + YY_FPRINTF ((stderr, "Option 1,\n")); + yyreportTree (yyx0, 2); + YY_FPRINTF ((stderr, "\nOption 2,\n")); + yyreportTree (yyx1, 2); + YY_FPRINTF ((stderr, "\n")); +#endif + + yyerror (]b4_yyerror_args[YY_("syntax is ambiguous")); + return yyabort; +}]b4_locations_if([[ + +/** Resolve the locations for each of the YYN1 states in *YYSTACKP, + * ending at YYS1. Has no effect on previously resolved states. + * The first semantic option of a state is always chosen. */ +static void +yyresolveLocations (yyGLRState *yys1, int yyn1, + yyGLRStack *yystackp]b4_user_formals[) +{ + if (0 < yyn1) + { + yyresolveLocations (yys1->yypred, yyn1 - 1, yystackp]b4_user_args[); + if (!yys1->yyresolved) + { + yyGLRStackItem yyrhsloc[1 + YYMAXRHS]; + int yynrhs; + yySemanticOption *yyoption = yys1->yysemantics.yyfirstVal; + YY_ASSERT (yyoption); + yynrhs = yyrhsLength (yyoption->yyrule); + if (0 < yynrhs) + { + yyGLRState *yys; + int yyn; + yyresolveLocations (yyoption->yystate, yynrhs, + yystackp]b4_user_args[); + for (yys = yyoption->yystate, yyn = yynrhs; + yyn > 0; + yys = yys->yypred, yyn -= 1) + yyrhsloc[yyn].yystate.yyloc = yys->yyloc; + } + else + { + /* Both yyresolveAction and yyresolveLocations traverse the GSS + in reverse rightmost order. It is only necessary to invoke + yyresolveLocations on a subforest for which yyresolveAction + would have been invoked next had an ambiguity not been + detected. Thus the location of the previous state (but not + necessarily the previous state itself) is guaranteed to be + resolved already. */ + yyGLRState *yyprevious = yyoption->yystate; + yyrhsloc[0].yystate.yyloc = yyprevious->yyloc; + } + YYLLOC_DEFAULT ((yys1->yyloc), yyrhsloc, yynrhs); + } + } +}]])[ + +/** Resolve the ambiguity represented in state YYS in *YYSTACKP, + * perform the indicated actions, and set the semantic value of YYS. + * If result != yyok, the chain of semantic options in YYS has been + * cleared instead or it has been left unmodified except that + * redundant options may have been removed. Regardless of whether + * result = yyok, YYS has been left with consistent data so that + * yydestroyGLRState can be invoked if necessary. */ +static YYRESULTTAG +yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp]b4_user_formals[) +{ + yySemanticOption* yyoptionList = yys->yysemantics.yyfirstVal; + yySemanticOption* yybest = yyoptionList; + yySemanticOption** yypp; + yybool yymerge = yyfalse; + YYSTYPE yyval; + YYRESULTTAG yyflag;]b4_locations_if([ + YYLTYPE *yylocp = &yys->yyloc;])[ + + for (yypp = &yyoptionList->yynext; *yypp != YY_NULLPTR; ) + { + yySemanticOption* yyp = *yypp; + + if (yyidenticalOptions (yybest, yyp)) + { + yymergeOptionSets (yybest, yyp); + *yypp = yyp->yynext; + } + else + { + switch (yypreference (yybest, yyp)) + { + case 0:]b4_locations_if([[ + yyresolveLocations (yys, 1, yystackp]b4_user_args[);]])[ + return yyreportAmbiguity (yybest, yyp]b4_pure_args[); + break; + case 1: + yymerge = yytrue; + break; + case 2: + break; + case 3: + yybest = yyp; + yymerge = yyfalse; + break; + default: + /* This cannot happen so it is not worth a YY_ASSERT (yyfalse), + but some compilers complain if the default case is + omitted. */ + break; + } + yypp = &yyp->yynext; + } + } + + if (yymerge) + { + yySemanticOption* yyp; + int yyprec = yydprec[yybest->yyrule]; + yyflag = yyresolveAction (yybest, yystackp, &yyval]b4_locuser_args[); + if (yyflag == yyok) + for (yyp = yybest->yynext; yyp != YY_NULLPTR; yyp = yyp->yynext) + { + if (yyprec == yydprec[yyp->yyrule]) + { + YYSTYPE yyval_other;]b4_locations_if([ + YYLTYPE yydummy;])[ + yyflag = yyresolveAction (yyp, yystackp, &yyval_other]b4_locuser_args([&yydummy])[); + if (yyflag != yyok) + { + yydestruct ("Cleanup: discarding incompletely merged value for", + yy_accessing_symbol (yys->yylrState), + &yyval]b4_locuser_args[); + break; + } + yyuserMerge (yymerger[yyp->yyrule], &yyval, &yyval_other); + } + } + } + else + yyflag = yyresolveAction (yybest, yystackp, &yyval]b4_locuser_args([yylocp])[); + + if (yyflag == yyok) + { + yys->yyresolved = yytrue; + yys->yysemantics.yyval = yyval; + } + else + yys->yysemantics.yyfirstVal = YY_NULLPTR; + return yyflag; +} + +static YYRESULTTAG +yyresolveStack (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yysplitPoint != YY_NULLPTR) + { + yyGLRState* yys; + int yyn; + + for (yyn = 0, yys = yystackp->yytops.yystates[0]; + yys != yystackp->yysplitPoint; + yys = yys->yypred, yyn += 1) + continue; + YYCHK (yyresolveStates (yystackp->yytops.yystates[0], yyn, yystackp + ]b4_user_args[)); + } + return yyok; +} + +/** Called when returning to deterministic operation to clean up the extra + * stacks. */ +static void +yycompressStack (yyGLRStack* yystackp) +{ + /* yyr is the state after the split point. */ + yyGLRState *yyr; + + if (yystackp->yytops.yysize != 1 || yystackp->yysplitPoint == YY_NULLPTR) + return; + + { + yyGLRState *yyp, *yyq; + for (yyp = yystackp->yytops.yystates[0], yyq = yyp->yypred, yyr = YY_NULLPTR; + yyp != yystackp->yysplitPoint; + yyr = yyp, yyp = yyq, yyq = yyp->yypred) + yyp->yypred = yyr; + } + + yystackp->yyspaceLeft += yystackp->yynextFree - yystackp->yyitems; + yystackp->yynextFree = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yysplitPoint) + 1; + yystackp->yyspaceLeft -= yystackp->yynextFree - yystackp->yyitems; + yystackp->yysplitPoint = YY_NULLPTR; + yystackp->yylastDeleted = YY_NULLPTR; + + while (yyr != YY_NULLPTR) + { + yystackp->yynextFree->yystate = *yyr; + yyr = yyr->yypred; + yystackp->yynextFree->yystate.yypred = &yystackp->yynextFree[-1].yystate; + yystackp->yytops.yystates[0] = &yystackp->yynextFree->yystate; + yystackp->yynextFree += 1; + yystackp->yyspaceLeft -= 1; + } +} + +static YYRESULTTAG +yyprocessOneStack (yyGLRStack* yystackp, YYPTRDIFF_T yyk, + YYPTRDIFF_T yyposn]b4_pure_formals[) +{ + while (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + { + yy_state_t yystate = yystackp->yytops.yystates[yyk]->yylrState; + YY_DPRINTF ((stderr, "Stack %ld Entering state %d\n", + YY_CAST (long, yyk), yystate)); + + YY_ASSERT (yystate != YYFINAL); + + if (yyisDefaultedState (yystate)) + { + YYRESULTTAG yyflag; + yyRuleNum yyrule = yydefaultAction (yystate); + if (yyrule == 0) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + return yyok; + } + yyflag = yyglrReduce (yystackp, yyk, yyrule, yyimmediate[yyrule]]b4_user_args[); + if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, + "Stack %ld dies " + "(predicate failure or explicit user error).\n", + YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + return yyok; + } + if (yyflag != yyok) + return yyflag; + } + else + { + yysymbol_kind_t yytoken = ]b4_yygetToken_call[; + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts); + yystackp->yytops.yylookaheadNeeds[yyk] = yytrue; + + for (/* nothing */; *yyconflicts; yyconflicts += 1) + { + YYRESULTTAG yyflag; + YYPTRDIFF_T yynewStack = yysplitStack (yystackp, yyk); + YY_DPRINTF ((stderr, "Splitting off stack %ld from %ld.\n", + YY_CAST (long, yynewStack), YY_CAST (long, yyk))); + yyflag = yyglrReduce (yystackp, yynewStack, + *yyconflicts, + yyimmediate[*yyconflicts]]b4_user_args[); + if (yyflag == yyok) + YYCHK (yyprocessOneStack (yystackp, yynewStack, + yyposn]b4_pure_args[)); + else if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yynewStack))); + yymarkStackDeleted (yystackp, yynewStack); + } + else + return yyflag; + } + + if (yyisShiftAction (yyaction)) + break; + else if (yyisErrorAction (yyaction)) + { + YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + break; + } + else + { + YYRESULTTAG yyflag = yyglrReduce (yystackp, yyk, -yyaction, + yyimmediate[-yyaction]]b4_user_args[); + if (yyflag == yyerr) + { + YY_DPRINTF ((stderr, + "Stack %ld dies " + "(predicate failure or explicit user error).\n", + YY_CAST (long, yyk))); + yymarkStackDeleted (yystackp, yyk); + break; + } + else if (yyflag != yyok) + return yyflag; + } + } + } + return yyok; +} + +]b4_parse_error_case([simple], [], +[[/* Put in YYARG at most YYARGN of the expected tokens given the + current YYSTACKP, and return the number of tokens stored in YYARG. If + YYARG is null, return the number of expected tokens (guaranteed to + be less than YYNTOKENS). */ +static int +yypcontext_expected_tokens (const yyGLRStack* yystackp, + yysymbol_kind_t yyarg[], int yyargn) +{ + /* Actual size of YYARG. */ + int yycount = 0; + int yyn = yypact[yystackp->yytops.yystates[0]->yylrState]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (yysymbol_kind_t, yyx); + } + } + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; +}]])[ + +]b4_parse_error_bmatch( + [custom], +[[/* User defined function to report a syntax error. */ +typedef yyGLRStack yypcontext_t; +static int +yyreport_syntax_error (const yyGLRStack* yystackp]b4_user_formals[); + +/* The kind of the lookahead of this context. */ +static yysymbol_kind_t +yypcontext_token (const yyGLRStack *yystackp) YY_ATTRIBUTE_UNUSED; + +static yysymbol_kind_t +yypcontext_token (const yyGLRStack *yystackp) +{ + YY_USE (yystackp); + yysymbol_kind_t yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + return yytoken; +} + +]b4_locations_if([[/* The location of the lookahead of this context. */ +static const YYLTYPE * +yypcontext_location (const yyGLRStack *yystackp) YY_ATTRIBUTE_UNUSED; + +static const YYLTYPE * +yypcontext_location (const yyGLRStack *yystackp) +{ + YY_USE (yystackp); + return &yylloc; +}]])], + [detailed\|verbose], +[[static int +yy_syntax_error_arguments (const yyGLRStack* yystackp, + yysymbol_kind_t yyarg[], int yyargn) +{ + yysymbol_kind_t yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + /* Actual size of YYARG. */ + int yycount = 0; + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != ]b4_symbol(empty, kind)[) + { + int yyn; + if (yyarg) + yyarg[yycount] = yytoken; + ++yycount; + yyn = yypcontext_expected_tokens (yystackp, + yyarg ? yyarg + 1 : yyarg, yyargn - 1); + if (yyn == YYENOMEM) + return YYENOMEM; + else + yycount += yyn; + } + return yycount; +} +]])[ + + +static void +yyreportSyntaxError (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yyerrState != 0) + return; +]b4_parse_error_case( + [custom], +[[ if (yyreport_syntax_error (yystackp]b4_user_args[)) + yyMemoryExhausted (yystackp);]], + [simple], +[[ yyerror (]b4_lyyerror_args[YY_("syntax error"));]], +[[ { + yybool yysize_overflow = yyfalse; + char* yymsg = YY_NULLPTR; + enum { YYARGS_MAX = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULLPTR; + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ + yysymbol_kind_t yyarg[YYARGS_MAX]; + /* Cumulated lengths of YYARG. */ + YYPTRDIFF_T yysize = 0; + + /* Actual size of YYARG. */ + int yycount + = yy_syntax_error_arguments (yystackp, yyarg, YYARGS_MAX); + if (yycount == YYENOMEM) + yyMemoryExhausted (yystackp); + + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: /* Avoid compiler warnings. */ + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + /* Compute error message size. Don't count the "%s"s, but reserve + room for the terminator. */ + yysize = yystrlen (yyformat) - 2 * yycount + 1; + { + int yyi; + for (yyi = 0; yyi < yycount; ++yyi) + { + YYPTRDIFF_T yysz + = ]b4_parse_error_case( + [verbose], [[yytnamerr (YY_NULLPTR, yytname[yyarg[yyi]])]], + [[yystrlen (yysymbol_name (yyarg[yyi]))]]);[ + if (YYSIZE_MAXIMUM - yysize < yysz) + yysize_overflow = yytrue; + else + yysize += yysz; + } + } + + if (!yysize_overflow) + yymsg = YY_CAST (char *, YYMALLOC (YY_CAST (YYSIZE_T, yysize))); + + if (yymsg) + { + char *yyp = yymsg; + int yyi = 0; + while ((*yyp = *yyformat)) + { + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + {]b4_parse_error_case([verbose], [[ + yyp += yytnamerr (yyp, yytname[yyarg[yyi++]]);]], [[ + yyp = yystpcpy (yyp, yysymbol_name (yyarg[yyi++]));]])[ + yyformat += 2; + } + else + { + ++yyp; + ++yyformat; + } + } + yyerror (]b4_lyyerror_args[yymsg); + YYFREE (yymsg); + } + else + { + yyerror (]b4_lyyerror_args[YY_("syntax error")); + yyMemoryExhausted (yystackp); + } + }]])[ + yynerrs += 1; +} + +/* Recover from a syntax error on *YYSTACKP, assuming that *YYSTACKP->YYTOKENP, + yylval, and yylloc are the syntactic category, semantic value, and location + of the lookahead. */ +static void +yyrecoverSyntaxError (yyGLRStack* yystackp]b4_user_formals[) +{ + if (yystackp->yyerrState == 3) + /* We just shifted the error token and (perhaps) took some + reductions. Skip tokens until we can proceed. */ + while (yytrue) + { + yysymbol_kind_t yytoken; + int yyj; + if (yychar == ]b4_symbol(eof, [id])[) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); + if (yychar != ]b4_symbol(empty, id)[) + {]b4_locations_if([[ + /* We throw away the lookahead, but the error range + of the shifted error token must take it into account. */ + yyGLRState *yys = yystackp->yytops.yystates[0]; + yyGLRStackItem yyerror_range[3]; + yyerror_range[1].yystate.yyloc = yys->yyloc; + yyerror_range[2].yystate.yyloc = yylloc; + YYLLOC_DEFAULT ((yys->yyloc), yyerror_range, 2);]])[ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Error: discarding", + yytoken, &yylval]b4_locuser_args([&yylloc])[); + yychar = ]b4_symbol(empty, id)[; + } + yytoken = ]b4_yygetToken_call[; + yyj = yypact[yystackp->yytops.yystates[0]->yylrState]; + if (yypact_value_is_default (yyj)) + return; + yyj += yytoken; + if (yyj < 0 || YYLAST < yyj || yycheck[yyj] != yytoken) + { + if (yydefact[yystackp->yytops.yystates[0]->yylrState] != 0) + return; + } + else if (! yytable_value_is_error (yytable[yyj])) + return; + } + + /* Reduce to one stack. */ + { + YYPTRDIFF_T yyk; + for (yyk = 0; yyk < yystackp->yytops.yysize; yyk += 1) + if (yystackp->yytops.yystates[yyk] != YY_NULLPTR) + break; + if (yyk >= yystackp->yytops.yysize) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); + for (yyk += 1; yyk < yystackp->yytops.yysize; yyk += 1) + yymarkStackDeleted (yystackp, yyk); + yyremoveDeletes (yystackp); + yycompressStack (yystackp); + } + + /* Pop stack until we find a state that shifts the error token. */ + yystackp->yyerrState = 3; + while (yystackp->yytops.yystates[0] != YY_NULLPTR) + { + yyGLRState *yys = yystackp->yytops.yystates[0]; + int yyj = yypact[yys->yylrState]; + if (! yypact_value_is_default (yyj)) + { + yyj += ]b4_symbol(error, kind)[; + if (0 <= yyj && yyj <= YYLAST && yycheck[yyj] == ]b4_symbol(error, kind)[ + && yyisShiftAction (yytable[yyj])) + { + /* Shift the error token. */ + int yyaction = yytable[yyj];]b4_locations_if([[ + /* First adjust its location.*/ + YYLTYPE yyerrloc; + yystackp->yyerror_range[2].yystate.yyloc = yylloc; + YYLLOC_DEFAULT (yyerrloc, (yystackp->yyerror_range), 2);]])[ + YY_SYMBOL_PRINT ("Shifting", yy_accessing_symbol (yyaction), + &yylval, &yyerrloc); + yyglrShift (yystackp, 0, yyaction, + yys->yyposn, &yylval]b4_locations_if([, &yyerrloc])[); + yys = yystackp->yytops.yystates[0]; + break; + } + }]b4_locations_if([[ + yystackp->yyerror_range[1].yystate.yyloc = yys->yyloc;]])[ + if (yys->yypred != YY_NULLPTR) + yydestroyGLRState ("Error: popping", yys]b4_user_args[); + yystackp->yytops.yystates[0] = yys->yypred; + yystackp->yynextFree -= 1; + yystackp->yyspaceLeft += 1; + } + if (yystackp->yytops.yystates[0] == YY_NULLPTR) + yyFail (yystackp][]b4_lpure_args[, YY_NULLPTR); +} + +#define YYCHK1(YYE) \ + do { \ + switch (YYE) { \ + case yyok: break; \ + case yyabort: goto yyabortlab; \ + case yyaccept: goto yyacceptlab; \ + case yyerr: goto yyuser_error; \ + case yynomem: goto yyexhaustedlab; \ + default: goto yybuglab; \ + } \ + } while (0) + +/*----------. +| yyparse. | +`----------*/ + +int +]b4_glr_cc_if([yy_parse_impl], [yyparse])[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + int yyresult; + yyGLRStack yystack; + yyGLRStack* const yystackp = &yystack; + YYPTRDIFF_T yyposn; + + YY_DPRINTF ((stderr, "Starting parse\n")); + + yychar = ]b4_symbol(empty, id)[; + yylval = yyval_default;]b4_locations_if([ + yylloc = yyloc_default;])[ +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl +[ + if (! yyinitGLRStack (yystackp, YYINITDEPTH)) + goto yyexhaustedlab; + switch (YYSETJMP (yystack.yyexception_buffer)) + { + case 0: break; + case 1: goto yyabortlab; + case 2: goto yyexhaustedlab; + default: goto yybuglab; + } + yyglrShift (&yystack, 0, 0, 0, &yylval]b4_locations_if([, &yylloc])[); + yyposn = 0; + + while (yytrue) + { + /* For efficiency, we have two loops, the first of which is + specialized to deterministic operation (single stack, no + potential ambiguity). */ + /* Standard mode. */ + while (yytrue) + { + yy_state_t yystate = yystack.yytops.yystates[0]->yylrState; + YY_DPRINTF ((stderr, "Entering state %d\n", yystate)); + if (yystate == YYFINAL) + goto yyacceptlab; + if (yyisDefaultedState (yystate)) + { + yyRuleNum yyrule = yydefaultAction (yystate); + if (yyrule == 0) + {]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + YYCHK1 (yyglrReduce (&yystack, 0, yyrule, yytrue]b4_user_args[)); + } + else + { + yysymbol_kind_t yytoken = ]b4_yygetToken_call;[ + const short* yyconflicts; + int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts); + if (*yyconflicts) + /* Enter nondeterministic mode. */ + break; + if (yyisShiftAction (yyaction)) + { + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + yychar = ]b4_symbol(empty, id)[; + yyposn += 1; + yyglrShift (&yystack, 0, yyaction, yyposn, &yylval]b4_locations_if([, &yylloc])[); + if (0 < yystack.yyerrState) + yystack.yyerrState -= 1; + } + else if (yyisErrorAction (yyaction)) + {]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + /* Issue an error message unless the scanner already + did. */ + if (yychar != ]b4_symbol(error, id)[) + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + else + YYCHK1 (yyglrReduce (&yystack, 0, -yyaction, yytrue]b4_user_args[)); + } + } + + /* Nondeterministic mode. */ + while (yytrue) + { + yysymbol_kind_t yytoken_to_shift; + YYPTRDIFF_T yys; + + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + yystackp->yytops.yylookaheadNeeds[yys] = yychar != ]b4_symbol(empty, id)[; + + /* yyprocessOneStack returns one of three things: + + - An error flag. If the caller is yyprocessOneStack, it + immediately returns as well. When the caller is finally + yyparse, it jumps to an error label via YYCHK1. + + - yyok, but yyprocessOneStack has invoked yymarkStackDeleted + (&yystack, yys), which sets the top state of yys to NULL. Thus, + yyparse's following invocation of yyremoveDeletes will remove + the stack. + + - yyok, when ready to shift a token. + + Except in the first case, yyparse will invoke yyremoveDeletes and + then shift the next token onto all remaining stacks. This + synchronization of the shift (that is, after all preceding + reductions on all stacks) helps prevent double destructor calls + on yylval in the event of memory exhaustion. */ + + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + YYCHK1 (yyprocessOneStack (&yystack, yys, yyposn]b4_lpure_args[)); + yyremoveDeletes (&yystack); + if (yystack.yytops.yysize == 0) + { + yyundeleteLastStack (&yystack); + if (yystack.yytops.yysize == 0) + yyFail (&yystack][]b4_lpure_args[, YY_("syntax error")); + YYCHK1 (yyresolveStack (&yystack]b4_user_args[)); + YY_DPRINTF ((stderr, "Returning to deterministic operation.\n"));]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yylloc;]])[ + yyreportSyntaxError (&yystack]b4_user_args[); + goto yyuser_error; + } + + /* If any yyglrShift call fails, it will fail after shifting. Thus, + a copy of yylval will already be on stack 0 in the event of a + failure in the following loop. Thus, yychar is set to ]b4_symbol(empty, id)[ + before the loop to make sure the user destructor for yylval isn't + called twice. */ + yytoken_to_shift = YYTRANSLATE (yychar); + yychar = ]b4_symbol(empty, id)[; + yyposn += 1; + for (yys = 0; yys < yystack.yytops.yysize; yys += 1) + { + yy_state_t yystate = yystack.yytops.yystates[yys]->yylrState; + const short* yyconflicts; + int yyaction = yygetLRActions (yystate, yytoken_to_shift, + &yyconflicts); + /* Note that yyconflicts were handled by yyprocessOneStack. */ + YY_DPRINTF ((stderr, "On stack %ld, ", YY_CAST (long, yys))); + YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, &yylval, &yylloc); + yyglrShift (&yystack, yys, yyaction, yyposn, + &yylval]b4_locations_if([, &yylloc])[); + YY_DPRINTF ((stderr, "Stack %ld now in state %d\n", + YY_CAST (long, yys), + yystack.yytops.yystates[yys]->yylrState)); + } + + if (yystack.yytops.yysize == 1) + { + YYCHK1 (yyresolveStack (&yystack]b4_user_args[)); + YY_DPRINTF ((stderr, "Returning to deterministic operation.\n")); + yycompressStack (&yystack); + break; + } + } + continue; + yyuser_error: + yyrecoverSyntaxError (&yystack]b4_user_args[); + yyposn = yystack.yytops.yystates[0]->yyposn; + } + + yyacceptlab: + yyresult = 0; + goto yyreturnlab; + + yybuglab: + YY_ASSERT (yyfalse); + goto yyabortlab; + + yyabortlab: + yyresult = 1; + goto yyreturnlab; + + yyexhaustedlab: + yyerror (]b4_lyyerror_args[YY_("memory exhausted")); + yyresult = 2; + goto yyreturnlab; + + yyreturnlab: + if (yychar != ]b4_symbol(empty, id)[) + yydestruct ("Cleanup: discarding lookahead", + YYTRANSLATE (yychar), &yylval]b4_locuser_args([&yylloc])[); + + /* If the stack is well-formed, pop the stack until it is empty, + destroying its entries as we go. But free the stack regardless + of whether it is well-formed. */ + if (yystack.yyitems) + { + yyGLRState** yystates = yystack.yytops.yystates; + if (yystates) + { + YYPTRDIFF_T yysize = yystack.yytops.yysize; + YYPTRDIFF_T yyk; + for (yyk = 0; yyk < yysize; yyk += 1) + if (yystates[yyk]) + { + while (yystates[yyk]) + { + yyGLRState *yys = yystates[yyk];]b4_locations_if([[ + yystack.yyerror_range[1].yystate.yyloc = yys->yyloc;]])[ + if (yys->yypred != YY_NULLPTR) + yydestroyGLRState ("Cleanup: popping", yys]b4_user_args[); + yystates[yyk] = yys->yypred; + yystack.yynextFree -= 1; + yystack.yyspaceLeft += 1; + } + break; + } + } + yyfreeGLRStack (&yystack); + } + + return yyresult; +} + +/* DEBUGGING ONLY */ +#if ]b4_api_PREFIX[DEBUG +/* Print *YYS and its predecessors. */ +static void +yy_yypstack (yyGLRState* yys) +{ + if (yys->yypred) + { + yy_yypstack (yys->yypred); + YY_FPRINTF ((stderr, " -> ")); + } + YY_FPRINTF ((stderr, "%d@@%ld", yys->yylrState, YY_CAST (long, yys->yyposn))); +} + +/* Print YYS (possibly NULL) and its predecessors. */ +static void +yypstates (yyGLRState* yys) +{ + if (yys == YY_NULLPTR) + YY_FPRINTF ((stderr, "")); + else + yy_yypstack (yys); + YY_FPRINTF ((stderr, "\n")); +} + +/* Print the stack #YYK. */ +static void +yypstack (yyGLRStack* yystackp, YYPTRDIFF_T yyk) +{ + yypstates (yystackp->yytops.yystates[yyk]); +} + +/* Print all the stacks. */ +static void +yypdumpstack (yyGLRStack* yystackp) +{ +#define YYINDEX(YYX) \ + YY_CAST (long, \ + ((YYX) \ + ? YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX)) - yystackp->yyitems \ + : -1)) + + yyGLRStackItem* yyp; + for (yyp = yystackp->yyitems; yyp < yystackp->yynextFree; yyp += 1) + { + YY_FPRINTF ((stderr, "%3ld. ", + YY_CAST (long, yyp - yystackp->yyitems))); + if (*YY_REINTERPRET_CAST (yybool *, yyp)) + { + YY_ASSERT (yyp->yystate.yyisState); + YY_ASSERT (yyp->yyoption.yyisState); + YY_FPRINTF ((stderr, "Res: %d, LR State: %d, posn: %ld, pred: %ld", + yyp->yystate.yyresolved, yyp->yystate.yylrState, + YY_CAST (long, yyp->yystate.yyposn), + YYINDEX (yyp->yystate.yypred))); + if (! yyp->yystate.yyresolved) + YY_FPRINTF ((stderr, ", firstVal: %ld", + YYINDEX (yyp->yystate.yysemantics.yyfirstVal))); + } + else + { + YY_ASSERT (!yyp->yystate.yyisState); + YY_ASSERT (!yyp->yyoption.yyisState); + YY_FPRINTF ((stderr, "Option. rule: %d, state: %ld, next: %ld", + yyp->yyoption.yyrule - 1, + YYINDEX (yyp->yyoption.yystate), + YYINDEX (yyp->yyoption.yynext))); + } + YY_FPRINTF ((stderr, "\n")); + } + + YY_FPRINTF ((stderr, "Tops:")); + { + YYPTRDIFF_T yyi; + for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1) + YY_FPRINTF ((stderr, "%ld: %ld; ", YY_CAST (long, yyi), + YYINDEX (yystackp->yytops.yystates[yyi]))); + YY_FPRINTF ((stderr, "\n")); + } +#undef YYINDEX +} +#endif + +#undef yylval +#undef yychar +#undef yynerrs]b4_locations_if([ +#undef yylloc]) + +m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define yyparse ]b4_prefix[parse +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char +#define yydebug ]b4_prefix[debug +#define yynerrs ]b4_prefix[nerrs]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])])[ + +]b4_glr_cc_if([b4_glr_cc_pre_epilogue +b4_glr_cc_cleanup])[ +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/RelWithDebInfo/data/skeletons/glr.cc b/bison/RelWithDebInfo/data/skeletons/glr.cc new file mode 100644 index 0000000..7181402 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/glr.cc @@ -0,0 +1,397 @@ +# C++ GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# This skeleton produces a C++ class that encapsulates a C glr parser. +# This is in order to reduce the maintenance burden. The glr.c +# skeleton is clean and pure enough so that there are no real +# problems. The C++ interface is the same as that of lalr1.cc. In +# fact, glr.c can replace yacc.c without the user noticing any +# difference, and similarly for glr.cc replacing lalr1.cc. +# +# The passing of parse-params +# +# The additional arguments are stored as members of the parser +# object, yyparser. The C routines need to carry yyparser +# throughout the C parser; that's easy: make yyparser an +# additional parse-param. But because the C++ skeleton needs to +# know the "real" original parse-param, we save them +# (b4_parse_param_orig). Note that b4_parse_param is overquoted +# (and c.m4 strips one level of quotes). This is a PITA, and +# explains why there are so many levels of quotes. +# +# The locations +# +# We use location.cc just like lalr1.cc, but because glr.c stores +# the locations in a union, the position and location classes +# must not have a constructor. Therefore, contrary to lalr1.cc, we +# must not define "b4_location_constructors". As a consequence the +# user must initialize the first positions (in particular the +# filename member). + +# We require a pure interface. +m4_define([b4_pure_flag], [1]) + +m4_include(b4_skeletonsdir/[c++.m4]) +b4_bison_locations_if([m4_include(b4_skeletonsdir/[location.cc])]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +# Save the parse parameters. +m4_define([b4_parse_param_orig], m4_defn([b4_parse_param])) + +# b4_parse_param_wrap +# ------------------- +# New ones. +m4_ifset([b4_parse_param], +[m4_define([b4_parse_param_wrap], + [[b4_namespace_ref::b4_parser_class[& yyparser], [[yyparser]]],] +m4_defn([b4_parse_param]))], +[m4_define([b4_parse_param_wrap], + [[b4_namespace_ref::b4_parser_class[& yyparser], [[yyparser]]]]) +]) + + +# b4_yy_symbol_print_define +# ------------------------- +# Bypass the default implementation to generate the "yy_symbol_print" +# and "yy_symbol_value_print" functions. +m4_define([b4_yy_symbol_print_define], +[[/*--------------------. +| Print this symbol. | +`--------------------*/ + +static void +yy_symbol_print (FILE *, ]b4_namespace_ref::b4_parser_class[::symbol_kind_type yytoken, + const ]b4_namespace_ref::b4_parser_class[::value_type *yyvaluep]b4_locations_if([[, + const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp]])[]b4_user_formals[) +{ +]b4_parse_param_use[]dnl +[ yyparser.yy_symbol_print_ (yytoken, yyvaluep]b4_locations_if([, yylocationp])[); +} +]])[ + +# Hijack the initial action to initialize the locations. +]b4_bison_locations_if([m4_define([b4_initial_action], +[yylloc.initialize ();]m4_ifdef([b4_initial_action], [ +m4_defn([b4_initial_action])]))])[ + +# Hijack the post prologue to declare yyerror. +]m4_append([b4_post_prologue], +[b4_syncline([@oline@], [@ofile@])dnl +[static void +yyerror (]b4_locations_if([[const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp, + ]])[]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param), + ])[const char* msg);]])[ + +# Inserted before the epilogue to define implementations (yyerror, parser member +# functions etc.). +]m4_define([b4_glr_cc_pre_epilogue], +[b4_syncline([@oline@], [@ofile@])dnl +[ +/*------------------. +| Report an error. | +`------------------*/ + +static void +yyerror (]b4_locations_if([[const ]b4_namespace_ref::b4_parser_class[::location_type *yylocationp, + ]])[]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param), + ])[const char* msg) +{ +]b4_parse_param_use[]dnl +[ yyparser.error (]b4_locations_if([[*yylocationp, ]])[msg); +} + + +]b4_namespace_open[ +]dnl In this section, the parse params are the original parse_params. +m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_orig]))dnl +[ /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[)]m4_ifset([b4_parse_param], [ + :])[ +#if ]b4_api_PREFIX[DEBUG + ]m4_ifset([b4_parse_param], [ ], [ :])[yycdebug_ (&std::cerr)]m4_ifset([b4_parse_param], [,])[ +#endif]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + return ::yy_parse_impl (*this]b4_user_args[); + } + +#if ]b4_api_PREFIX[DEBUG + /*--------------------. + | Print this symbol. | + `--------------------*/ + + void + ]b4_parser_class[::yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const + {]b4_locations_if([[ + YY_USE (yylocationp);]])[ + YY_USE (yyvaluep); + std::ostream& yyo = debug_stream (); + std::ostream& yyoutput = yyo; + YY_USE (yyoutput); + ]b4_symbol_actions([printer])[ + } + + + void + ]b4_parser_class[::yy_symbol_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const + { + *yycdebug_ << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << yysymbol_name (yykind) << " ("]b4_locations_if([[ + << *yylocationp << ": "]])[; + yy_symbol_value_print_ (yykind, yyvaluep]b4_locations_if([[, yylocationp]])[); + *yycdebug_ << ')'; + } + + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + // Actually, it is yydebug which is really used. + yydebug = l; + } + +#endif +]m4_popdef([b4_parse_param])dnl +b4_namespace_close[]dnl +]) + + +m4_define([b4_define_symbol_kind], +[m4_format([#define %-15s %s], + b4_symbol($][1, kind_base), + b4_namespace_ref[::]b4_parser_class[::symbol_kind::]b4_symbol($1, kind_base)) +]) + +# b4_glr_cc_setup +# --------------- +# Setup redirections for glr.c: Map the names used in c.m4 to the ones used +# in c++.m4. +m4_define([b4_glr_cc_setup], +[[]b4_attribute_define[ +]b4_null_define[ + +// This skeleton is based on C, yet compiles it as C++. +// So expect warnings about C style casts. +#if defined __clang__ && 306 <= __clang_major__ * 100 + __clang_minor__ +# pragma clang diagnostic ignored "-Wold-style-cast" +#elif defined __GNUC__ && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# pragma GCC diagnostic ignored "-Wold-style-cast" +#endif + +// On MacOS, PTRDIFF_MAX is defined as long long, which Clang's +// -pedantic reports as being a C++11 extension. +#if defined __APPLE__ && YY_CPLUSPLUS < 201103L \ + && defined __clang__ && 4 <= __clang_major__ +# pragma clang diagnostic ignored "-Wc++11-long-long" +#endif + +#undef ]b4_symbol(empty, [id])[ +#define ]b4_symbol(empty, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(empty, [id])[ +#undef ]b4_symbol(eof, [id])[ +#define ]b4_symbol(eof, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(eof, [id])[ +#undef ]b4_symbol(error, [id])[ +#define ]b4_symbol(error, [id])[ ]b4_namespace_ref[::]b4_parser_class[::token::]b4_symbol(error, [id])[ + +#ifndef ]b4_api_PREFIX[STYPE +# define ]b4_api_PREFIX[STYPE ]b4_namespace_ref[::]b4_parser_class[::value_type +#endif +#ifndef ]b4_api_PREFIX[LTYPE +# define ]b4_api_PREFIX[LTYPE ]b4_namespace_ref[::]b4_parser_class[::location_type +#endif + +typedef ]b4_namespace_ref[::]b4_parser_class[::symbol_kind_type yysymbol_kind_t; + +// Expose C++ symbol kinds to C. +]b4_define_symbol_kind(-2)dnl +b4_symbol_foreach([b4_define_symbol_kind])])[ +]]) + + +m4_define([b4_undef_symbol_kind], +[[#undef ]b4_symbol($1, kind_base)[ +]]) + + +# b4_glr_cc_cleanup +# ----------------- +# Remove redirections for glr.c. +m4_define([b4_glr_cc_cleanup], +[[#undef ]b4_symbol(empty, [id])[ +#undef ]b4_symbol(eof, [id])[ +#undef ]b4_symbol(error, [id])[ + +]b4_undef_symbol_kind(-2)dnl +b4_symbol_foreach([b4_undef_symbol_kind])dnl +]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_orig]))dnl +b4_percent_code_get([[requires]])[ +#include +#include +#include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ + + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + virtual ~]b4_parser_class[ (); + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + virtual int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + typedef int debug_level_type; + /// The current debugging level. + debug_level_type debug_level () const; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + virtual void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + +# if ]b4_api_PREFIX[DEBUG + public: + /// \brief Report a symbol value on the debug stream. + /// \param yykind The symbol kind. + /// \param yyvaluep Its semantic value.]b4_locations_if([[ + /// \param yylocationp Its location.]])[ + virtual void yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const; + /// \brief Report a symbol on the debug stream. + /// \param yykind The symbol kind. + /// \param yyvaluep Its semantic value.]b4_locations_if([[ + /// \param yylocationp Its location.]])[ + virtual void yy_symbol_print_ (symbol_kind_type yykind, + const value_type* yyvaluep]b4_locations_if([[, + const location_type* yylocationp]])[) const; + private: + /// Debug stream. + std::ostream* yycdebug_; +#endif + +]b4_parse_param_vars[ + }; + +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]m4_popdef([b4_parse_param])dnl +])[ + +]b4_header_if( +[b4_output_begin([b4_spec_header_file]) +b4_copyright([Skeleton interface for Bison GLR parsers in C++], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Akim Demaille. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end]) + +# Let glr.c (and b4_shared_declarations) believe that the user +# arguments include the parser itself. +m4_pushdef([b4_parse_param], m4_defn([b4_parse_param_wrap])) +m4_include(b4_skeletonsdir/[glr.c]) +m4_popdef([b4_parse_param]) diff --git a/bison/RelWithDebInfo/data/skeletons/glr2.cc b/bison/RelWithDebInfo/data/skeletons/glr2.cc new file mode 100644 index 0000000..757d68d --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/glr2.cc @@ -0,0 +1,3533 @@ +# C++ GLR skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c++.m4]) + +# api.value.type=variant is valid. +m4_define([b4_value_type_setup_variant]) + +# b4_tname_if(TNAME-NEEDED, TNAME-NOT-NEEDED) +# ------------------------------------------- +m4_define([b4_tname_if], +[m4_case(b4_percent_define_get([[parse.error]]), + [verbose], [$1], + [b4_token_table_if([$1], + [$2])])]) + +b4_bison_locations_if([ + m4_define([b4_location_constructors]) + m4_include(b4_skeletonsdir/[location.cc])]) +b4_variant_if([m4_include(b4_skeletonsdir/[variant.hh])]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +]m4_define([b4_define_symbol_kind], +[m4_format([#define %-15s %s], + b4_symbol($][1, kind_base), + b4_namespace_ref[::]b4_parser_class[::symbol_kind::]b4_symbol($1, kind_base)) +]) + + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "yy" whose contents is CONTENT. Does not use "static", +# should be in unnamed namespace. +m4_define([b4_integral_parser_table_define], +[m4_ifvaln([$3], [ b4_comment([$3])])dnl + const b4_int_type_for([$2]) yy$1[[]] = + { + $2 + };dnl +]) + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + + + +## ------------ ## +## Interfaces. ## +## ------------ ## + +# b4_user_formals +# --------------- +# The possible parse-params formal arguments preceded by a comma. +# +# This is not shared with yacc.c in c.m4 because GLR relies on ISO C +# formal argument declarations. +m4_define([b4_user_formals], +[m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])]) + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[symbol_kind::b4_symbol_kind_base($@)]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([(*yyvalp)], [$1], [$2])]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[(static_cast(yyvsp))@{YYFILL (b4_subtract([$2], [$1]))@}.getState()]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# Expansion of $$ or $$, for symbol SYMBOL-NUM. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).value ()], [$3], [$4])]) + + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(*yylocp)]) + + +# b4_rhs_location(RULE-LENGTH, NUM) +# --------------------------------- +# Expansion of @NUM, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[(b4_rhs_data([$1], [$2]).yyloc)]) + + +# b4_symbol_action(SYMBOL-NUM, KIND) +# ---------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +# +# Currently we need two different b4_symbol_action: once for the +# self-contained symbols, and another time for yy_destroy_ and +# yy_symbol_value_print_, which don't use genuine symbols yet. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[m4_pushdef([b4_symbol_value], m4_defn([b4_symbol_value_template]))[]dnl +b4_dollar_pushdef([yysym.value], + [$1], + [], + [yysym.location])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +m4_popdef([b4_symbol_value])[]dnl +b4_dollar_popdef[]dnl +])]) + + +# b4_symbol_action_for_yyval(SYMBOL-NUM, KIND) +# -------------------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +m4_define([b4_symbol_action_for_yyval], +[b4_symbol_if([$1], [has_$2], +[b4_dollar_pushdef([yyval], + [$1], + [], + [yyloc])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +b4_dollar_popdef[]dnl +])]) + + +# b4_call_merger(MERGER-NUM, MERGER-NAME, SYMBOL-SUM) +# --------------------------------------------------- +m4_define([b4_call_merger], +[b4_case([$1], + [ b4_symbol_if([$3], [has_type], + [b4_variant_if([yy0.as< b4_symbol($3, type) > () = $2 (yy0.as< b4_symbol($3, type) >(), yy1.as< b4_symbol($3, type) >());], + [yy0.b4_symbol($3, slot) = $2 (yy0, yy1);])], + [yy0 = $2 (yy0, yy1);])])]) + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_token_ctor_if( +[b4_function_call([yylex], + [symbol_type], m4_ifdef([b4_lex_param], b4_lex_param))], +[b4_function_call([yylex], [int], + [[value_type *], [&this->yyla.value]][]dnl +b4_locations_if([, [[location_type *], [&this->yyla.location]]])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param))])]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[b4_percent_code_get([[requires]])[ +#include +#include // ptrdiff_t +#include // memcpy +#include +#include +#include +#include +#include +#include +#include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ +]b4_symbol_type_define[ + + // FIXME: should be private eventually. + class glr_stack; + class glr_state; + + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + ~]b4_parser_class[ (); + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + using debug_level_type = int; + /// The current debugging level. + debug_level_type debug_level () const; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol);]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol); +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static std::string symbol_name (symbol_kind_type yysymbol);]])[ + +]b4_token_constructor_define[ +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + class context + { + public: + context (glr_stack& yystack, const symbol_type& yyla); + const symbol_type& lookahead () const YY_NOEXCEPT { return yyla_; } + symbol_kind_type token () const YY_NOEXCEPT { return yyla_.kind (); }]b4_locations_if([[ + const location_type& location () const YY_NOEXCEPT { return yyla_.location; } +]])[ + /// Put in YYARG at most YYARGN of the expected tokens, and return the + /// number of tokens stored in YYARG. If YYARG is null, return the + /// number of expected tokens (guaranteed to be less than YYNTOKENS). + int expected_tokens (symbol_kind_type yyarg[], int yyargn) const; + + private: + glr_stack& yystack_; + const symbol_type& yyla_; + }; +]])[ +# if ]b4_api_PREFIX[DEBUG + public: + /// \brief Report a symbol value on the debug stream. + /// \param yykind The symbol kind. + /// \param yyval Its semantic value.]b4_locations_if([[ + /// \param yyloc Its location.]])[ + void yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const; + /// \brief Report a symbol on the debug stream. + /// \param yykind The symbol kind. + /// \param yyval Its semantic value.]b4_locations_if([[ + /// \param yyloc Its location.]])[ + void yy_symbol_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const; + private: + /// Debug stream. + std::ostream* yycdebug_; +#endif + +]b4_parse_error_bmatch( +[custom], [[ + private: + /// Report a syntax error + /// \param yyctx the context in which the error occurred. + void report_syntax_error (const context& yyctx) const;]], +[detailed\|verbose], [[ + private: + /// The arguments of the error message. + int yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const; + + /// Generate an error message. + /// \param yyctx the context in which the error occurred. + virtual std::string yysyntax_error_ (const context& yyctx) const;]])[ + + /// Convert a scanner token kind \a t to a symbol kind. + /// In theory \a t should be a token_kind_type, but character literals + /// are valid, yet not members of the token_kind_type enum. + static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT; + +]b4_parse_error_bmatch( +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// For a symbol, its name in clear. + static const char* const yytname_[]; +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// Convert the symbol name \a n to a form suitable for a diagnostic. + static std::string yytnamerr_ (const char *yystr); + + /// For a symbol, its name in clear. + static const char* const yytname_[]; +]])[ + + /// \brief Reclaim the memory associated to a symbol. + /// \param yymsg Why this token is reclaimed. + /// If null, print nothing. + /// \param yykind The symbol kind. + void yy_destroy_ (const char* yymsg, symbol_kind_type yykind, + value_type& yyval]b4_locations_if([[, + location_type& yyloc]])[); + +]b4_parse_param_vars[ + // Needs access to yy_destroy_, report_syntax_error, etc. + friend glr_stack; + }; + +]b4_token_ctor_if([b4_yytranslate_define([$1])[ +]b4_public_types_define([$1])])[ +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]])[ + + +## -------------- ## +## Output files. ## +## -------------- ## + + +# ------------- # +# Header file. # +# ------------- # + +]b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Skeleton interface for Bison GLR parsers in C++], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Valentin Tolmer. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations([hh])[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end])[ + + +# --------------------- # +# Implementation file. # +# --------------------- # + +]b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison GLR parsers in C], + [2002-2015, 2018-2021])[ +// C++ GLR parser skeleton written by Valentin Tolmer. + +]b4_disclaimer[ +]b4_identification[ + +]b4_percent_code_get([[top]])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */ +#define yyparse ]b4_prefix[parse +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug]])[ + +]b4_user_pre_prologue[ + +]b4_null_define[ + +]b4_header_if([[#include "@basename(]b4_spec_header_file[@)"]], + [b4_shared_declarations([cc])])[ + +namespace +{ + /* Default (constant) value used for initialization for null + right-hand sides. Unlike the standard yacc.c template, here we set + the default value of $$ to a zeroed-out value. Since the default + value is undefined, this behavior is technically correct. */ + ]b4_namespace_ref[::]b4_parser_class[::value_type yyval_default; +} + +]b4_user_post_prologue[ +]b4_percent_code_get[ + +#include +#include + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +#ifndef YYFREE +# define YYFREE free +#endif +#ifndef YYMALLOC +# define YYMALLOC malloc +#endif + +#ifndef YYSETJMP +# include +# define YYJMP_BUF jmp_buf +# define YYSETJMP(Env) setjmp (Env) +/* Pacify Clang and ICC. */ +# define YYLONGJMP(Env, Val) \ + do { \ + longjmp (Env, Val); \ + YYASSERT (0); \ + } while (false) +#endif + +]b4_attribute_define([noreturn])[ + +#if defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_NULL_DEREFERENCE_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wnull-dereference\"") +# define YY_IGNORE_NULL_DEREFERENCE_END \ + _Pragma ("GCC diagnostic pop") +#else +# define YY_IGNORE_NULL_DEREFERENCE_BEGIN +# define YY_IGNORE_NULL_DEREFERENCE_END +#endif + +]b4_null_define[ +]b4_cast_define[ + +// FIXME: Use the same conventions as lalr1.cc. +]b4_parse_assert_if[ +#ifndef YYASSERT +# define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0))) +#endif + +#ifdef YYDEBUG +# define YYDASSERT(Condition) YYASSERT(Condition) +#else +# define YYDASSERT(Condition) +#endif + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ +/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */ +#define YYMAXRHS ]b4_r2_max[ +/* YYMAXLEFT -- Maximum number of symbols to the left of a handle + accessed by $0, $-1, etc., in any rule. */ +#define YYMAXLEFT ]b4_max_left_semantic_context[ + +namespace +{ +#if ]b4_api_PREFIX[DEBUG + /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ + const ]b4_int_type_for([b4_rline])[ yyrline[] = + { + ]b4_rline[ + }; +#endif + +#define YYPACT_NINF ]b4_pact_ninf[ +#define YYTABLE_NINF ]b4_table_ninf[ + +]b4_parser_tables_define[ + + /* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */ + const ]b4_int_type_for([b4_dprec])[ yydprec[] = + { + ]b4_dprec[ + }; + + /* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */ + const ]b4_int_type_for([b4_merger])[ yymerger[] = + { + ]b4_merger[ + }; + + /* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as + in the case of predicates. */ + const bool yyimmediate[] = + { + ]b4_immediate[ + }; + + /* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of + list of conflicting reductions corresponding to action entry for + state STATE-NUM in yytable. 0 means no conflicts. The list in + yyconfl is terminated by a rule number of 0. */ + const ]b4_int_type_for([b4_conflict_list_heads])[ yyconflp[] = + { + ]b4_conflict_list_heads[ + }; + + /* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by + 0, pointed into by YYCONFLP. */ + ]dnl Do not use b4_int_type_for here, since there are places where + dnl pointers onto yyconfl are taken, whose type is "short*". + dnl We probably ought to introduce a type for confl. + [const short yyconfl[] = + { + ]b4_conflicting_rules[ + }; +} // namespace + + +/* Error token number */ +#define YYTERROR 1 + +]b4_locations_if([[ +]b4_yylloc_default_define[ +# define YYRHSLOC(Rhs, K) ((Rhs)[K].getState().yyloc) +]])[ + +enum YYRESULTTAG { yyok, yyaccept, yyabort, yyerr }; + +#define YYCHK(YYE) \ + do { \ + YYRESULTTAG yychk_flag = YYE; \ + if (yychk_flag != yyok) \ + return yychk_flag; \ + } while (false) + +#if ]b4_api_PREFIX[DEBUG + +#define YYCDEBUG if (!yydebug) {} else std::cerr + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ + do { \ + if (yydebug) \ + { \ + std::cerr << Title << ' '; \ + yyparser.yy_symbol_print_ (Kind, Value]b4_locations_if([, Location])[); \ + std::cerr << '\n'; \ + } \ + } while (false) + +# define YY_REDUCE_PRINT(Args) \ + do { \ + if (yydebug) \ + yystateStack.yy_reduce_print Args; \ + } while (false) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; + +namespace +{ + using glr_stack = ]b4_namespace_ref[::]b4_parser_class[::glr_stack; + using glr_state = ]b4_namespace_ref[::]b4_parser_class[::glr_state; + + void yypstack (const glr_stack& yystack, size_t yyk) + YY_ATTRIBUTE_UNUSED; + void yypdumpstack (const glr_stack& yystack) + YY_ATTRIBUTE_UNUSED; +} + +#else /* !]b4_api_PREFIX[DEBUG */ + +# define YYCDEBUG if (true) {} else std::cerr +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) {} +# define YY_REDUCE_PRINT(Args) {} + +#endif /* !]b4_api_PREFIX[DEBUG */ + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif + +/* Minimum number of free items on the stack allowed after an + allocation. This is to allow allocation and initialization + to be completed by functions that call yyexpandGLRStack before the + stack is expanded, thus insuring that all necessary pointers get + properly redirected to new data. */ +#define YYHEADROOM 2 + +#ifndef YYSTACKEXPANDABLE +# define YYSTACKEXPANDABLE 1 +#endif + +namespace +{ + template + class strong_index_alias + { + public: + static strong_index_alias create (std::ptrdiff_t value) + { + strong_index_alias result; + result.value_ = value; + return result; + } + + std::ptrdiff_t const& get () const { return value_; } + + size_t uget () const { return static_cast (value_); } + + strong_index_alias operator+ (std::ptrdiff_t other) const + { + return strong_index_alias (get () + other); + } + + void operator+= (std::ptrdiff_t other) + { + value_ += other; + } + + strong_index_alias operator- (std::ptrdiff_t other) + { + return strong_index_alias (get () - other); + } + + void operator-= (std::ptrdiff_t other) + { + value_ -= other; + } + + size_t operator- (strong_index_alias other) + { + return strong_index_alias (get () - other.get ()); + } + + strong_index_alias& operator++ () + { + ++value_; + return *this; + } + + bool isValid () const + { + return value_ != INVALID_INDEX; + } + + void setInvalid() + { + value_ = INVALID_INDEX; + } + + bool operator== (strong_index_alias other) + { + return get () == other.get (); + } + + bool operator!= (strong_index_alias other) + { + return get () != other.get (); + } + + bool operator< (strong_index_alias other) + { + return get () < other.get (); + } + + private: + static const std::ptrdiff_t INVALID_INDEX; + + // WARNING: 0-initialized. + std::ptrdiff_t value_; + }; // class strong_index_alias + + template + const std::ptrdiff_t strong_index_alias::INVALID_INDEX = + std::numeric_limits::max (); + + using state_set_index = strong_index_alias; + + state_set_index create_state_set_index (std::ptrdiff_t value) + { + return state_set_index::create (value); + } + + /** State numbers, as in LALR(1) machine */ + using state_num = int; + + /** Rule numbers, as in LALR(1) machine */ + using rule_num = int; + + using parser_type = ]b4_namespace_ref[::]b4_parser_class[; + using glr_state = parser_type::glr_state; + using symbol_kind = parser_type::symbol_kind; + using symbol_kind_type = parser_type::symbol_kind_type; + using symbol_type = parser_type::symbol_type; + using value_type = parser_type::value_type;]b4_locations_if([[ + using location_type = parser_type::location_type;]])[ + + // Forward declarations. + class glr_stack_item; + class semantic_option; +} // namespace + +namespace +{ + /** Accessing symbol of state YYSTATE. */ + inline symbol_kind_type + yy_accessing_symbol (state_num yystate) + { + return YY_CAST (symbol_kind_type, yystos[yystate]); + } + + /** Left-hand-side symbol for rule #YYRULE. */ + inline symbol_kind_type + yylhsNonterm (rule_num yyrule) + { + return static_cast(yyr1[yyrule]); + } + + /** Number of symbols composing the right hand side of rule #RULE. */ + inline int + yyrhsLength (rule_num yyrule) + { + return yyr2[yyrule]; + } +} + +namespace ]b4_namespace_ref[ +{ + class ]b4_parser_class[::glr_state + { + public: + glr_state () + : yyresolved (false) + , yylrState (0) + , yyposn (0) + , yypred (0) + , yyfirstVal (0)]b4_locations_if([[ + , yyloc ()]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + /// Build with a semantic value. + glr_state (state_num lrState, size_t posn, const value_type& val]b4_locations_if([[, const location_type& loc]])[) + : yyresolved (true) + , yylrState (lrState) + , yyposn (posn) + , yypred (0) + , yyval (]b4_variant_if([], [[val]])[)]b4_locations_if([[ + , yyloc (loc)]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_variant_if([[ + ]b4_symbol_variant([yy_accessing_symbol (lrState)], + [yyval], [copy], [val])])[} + + /// Build with a semantic option. + glr_state (state_num lrState, size_t posn) + : yyresolved (false) + , yylrState (lrState) + , yyposn (posn) + , yypred (0) + , yyfirstVal (0)]b4_locations_if([[ + , yyloc ()]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + glr_state (const glr_state& other) + : yyresolved (other.yyresolved) + , yylrState (other.yylrState) + , yyposn (other.yyposn) + , yypred (0)]b4_locations_if([[ + , yyloc (other.yyloc)]])[]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + { + setPred (other.pred ()); + if (other.yyresolved)]b4_variant_if([[ + { + new (&yyval) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (other.yylrState)], + [yyval], [copy], [other.value ()])[ + }]], [[ + new (&yyval) value_type (other.value ());]])[ + else + { + yyfirstVal = 0; + setFirstVal (other.firstVal ()); + }]b4_parse_assert_if([[ + check_();]])[ + } + + ~glr_state () + {]b4_parse_assert_if([[ + check_ ();]])[ + if (yyresolved) + {]b4_variant_if([[ + symbol_kind_type yykind = yy_accessing_symbol (yylrState); + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yykind]], [[yyval]], [[template destroy]])])[ + yyval.~value_type (); + }]b4_parse_assert_if([[ + magic_ = 0;]])[ + } + + glr_state& operator= (const glr_state& other) + {]b4_parse_assert_if([[ + check_ (); + other.check_ ();]])[ + if (!yyresolved && other.yyresolved) + new (&yyval) value_type; + yyresolved = other.yyresolved; + yylrState = other.yylrState; + yyposn = other.yyposn; + setPred (other.pred ()); + if (other.yyresolved)]b4_variant_if([[ + ]b4_symbol_variant([yy_accessing_symbol (other.yylrState)], + [yyval], [copy], [other.value ()])], [[ + value () = other.value ();]])[ + else + setFirstVal (other.firstVal ());]b4_locations_if([[ + yyloc = other.yyloc;]])[ + return *this; + } + + /** Type tag for the semantic value. If true, yyval applies, otherwise + * yyfirstVal applies. */ + bool yyresolved; + /** Number of corresponding LALR(1) machine state. */ + state_num yylrState; + /** Source position of the last token produced by my symbol */ + size_t yyposn; + + /// Only call pred() and setPred() on objects in yyitems, not temporaries. + glr_state* pred (); + const glr_state* pred () const; + void setPred (const glr_state* state); + + /// Only call firstVal() and setFirstVal() on objects in yyitems, not + /// temporaries. + semantic_option* firstVal (); + const semantic_option* firstVal () const; + void setFirstVal (const semantic_option* option); + + value_type& value () + {]b4_parse_assert_if([[ + check_ ();]])[ + return yyval; + } + + const value_type& value () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return yyval; + } + + void + destroy (char const *yymsg, ]b4_namespace_ref[::]b4_parser_class[& yyparser); + + /* DEBUGGING ONLY */ + #if ]b4_api_PREFIX[DEBUG + void yy_yypstack () const + {]b4_parse_assert_if([[ + check_ ();]])[ + if (pred () != YY_NULLPTR) + { + pred ()->yy_yypstack (); + std::cerr << " -> "; + } + std::cerr << yylrState << "@@" << yyposn; + } + #endif + + std::ptrdiff_t indexIn (const glr_stack_item* array) const YY_ATTRIBUTE_UNUSED; + + glr_stack_item* asItem () + {]b4_parse_assert_if([[ + check_ ();]])[ + return asItem(this); + } + + const glr_stack_item* asItem () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return asItem (this); + } + + private: + template + static const glr_stack_item* asItem (const T* state) + { + return reinterpret_cast(state); + } + template + static glr_stack_item* asItem (T* state) + { + return reinterpret_cast (state); + } + static const char *as_pointer_ (const glr_state *state) + { + return reinterpret_cast (state); + } + static char *as_pointer_ (glr_state *state) + { + return reinterpret_cast (state); + } + /** Preceding state in this stack */ + std::ptrdiff_t yypred; + union { + /** First in a chain of alternative reductions producing the + * nonterminal corresponding to this state, threaded through + * yyfirstVal. Value "0" means empty. */ + std::ptrdiff_t yyfirstVal; + /** Semantic value for this state. */ + value_type yyval; + };]b4_locations_if([[ + // FIXME: Why public? + public: + /** Source location for this state. */ + location_type yyloc;]])[ + +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YY_IGNORE_NULL_DEREFERENCE_BEGIN + YYASSERT (this->magic_ == MAGIC); + YY_IGNORE_NULL_DEREFERENCE_END + } + + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 713705 }; + unsigned int magic_;]])[ + }; // class ]b4_parser_class[::glr_state +} // namespace ]b4_namespace_ref[ + + +namespace +{ + /** A stack of GLRState representing the different heads during + * nondeterministic evaluation. */ + class glr_state_set + { + public: + /** Initialize YYSET to a singleton set containing an empty stack. */ + glr_state_set () + : yylastDeleted (YY_NULLPTR) + { + yystates.push_back (YY_NULLPTR); + yylookaheadNeeds.push_back (false); + } + + // Behave like a vector of states. + glr_state*& operator[] (state_set_index index) + { + return yystates[index.uget()]; + } + + glr_state* operator[] (state_set_index index) const + { + return yystates[index.uget()]; + } + + size_t size () const + { + return yystates.size (); + } + + std::vector::iterator begin () + { + return yystates.begin (); + } + + std::vector::iterator end () + { + return yystates.end (); + } + + bool lookaheadNeeds (state_set_index index) const + { + return yylookaheadNeeds[index.uget ()]; + } + + bool setLookaheadNeeds (state_set_index index, bool value) + { + return yylookaheadNeeds[index.uget ()] = value; + } + + /** Invalidate stack #YYK. */ + void + yymarkStackDeleted (state_set_index yyk) + { + size_t k = yyk.uget (); + if (yystates[k] != YY_NULLPTR) + yylastDeleted = yystates[k]; + yystates[k] = YY_NULLPTR; + } + + /** Undelete the last stack in *this that was marked as deleted. Can + only be done once after a deletion, and only when all other stacks have + been deleted. */ + void + yyundeleteLastStack () + { + if (yylastDeleted == YY_NULLPTR || !yystates.empty ()) + return; + yystates.push_back (yylastDeleted); + YYCDEBUG << "Restoring last deleted stack as stack #0.\n"; + clearLastDeleted (); + } + + /** Remove the dead stacks (yystates[i] == YY_NULLPTR) and shift the later + * ones. */ + void + yyremoveDeletes () + { + size_t newsize = yystates.size (); + /* j is the number of live stacks we have seen. */ + for (size_t i = 0, j = 0; j < newsize; ++i) + { + if (yystates[i] == YY_NULLPTR) + { + if (i == j) + { + YYCDEBUG << "Removing dead stacks.\n"; + } + newsize -= 1; + } + else + { + yystates[j] = yystates[i]; + /* In the current implementation, it's unnecessary to copy + yylookaheadNeeds[i] since, after + yyremoveDeletes returns, the parser immediately either enters + deterministic operation or shifts a token. However, it doesn't + hurt, and the code might evolve to need it. */ + yylookaheadNeeds[j] = yylookaheadNeeds[i]; + if (j != i) + { + YYCDEBUG << "Rename stack " << i << " -> " << j << ".\n"; + } + j += 1; + } + } + yystates.resize (newsize); + yylookaheadNeeds.resize (newsize); + } + + + state_set_index + yysplitStack (state_set_index yyk) + { + const size_t k = yyk.uget (); + yystates.push_back (yystates[k]); + yylookaheadNeeds.push_back (yylookaheadNeeds[k]); + return create_state_set_index (static_cast (yystates.size () - 1)); + } + + void clearLastDeleted () + { + yylastDeleted = YY_NULLPTR; + } + + private: + + std::vector yystates; + /** During nondeterministic operation, yylookaheadNeeds tracks which + * stacks have actually needed the current lookahead. During deterministic + * operation, yylookaheadNeeds[0] is not maintained since it would merely + * duplicate !yyla.empty (). */ + std::vector yylookaheadNeeds; + + /** The last stack we invalidated. */ + glr_state* yylastDeleted; + }; // class glr_state_set +} // namespace + +namespace +{ + class semantic_option + { + public: + semantic_option () + : yyrule (0) + , yystate (0) + , yynext (0) + , yyla ()]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + semantic_option (rule_num rule) + : yyrule (rule) + , yystate (0) + , yynext (0) + , yyla ()]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {} + + semantic_option (const semantic_option& that) + : yyrule (that.yyrule) + , yystate (that.yystate) + , yynext (that.yynext) + , yyla (that.yyla)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_parse_assert_if([[ + that.check_ ();]])[ + } + + // Needed for the assignment in yynewSemanticOption. + semantic_option& operator= (const semantic_option& that) + {]b4_parse_assert_if([[ + check_ (); + that.check_ ();]])[ + yyrule = that.yyrule; + yystate = that.yystate; + yynext = that.yynext; + yyla = that.yyla; + return *this; + } + + /// Only call state() and setState() on objects in yyitems, not temporaries. + glr_state* state(); + const glr_state* state() const; + void setState(const glr_state* s); + + const semantic_option* next () const YY_ATTRIBUTE_UNUSED; + semantic_option* next (); + void setNext (const semantic_option* s); + + std::ptrdiff_t indexIn (const glr_stack_item* array) const YY_ATTRIBUTE_UNUSED; + + /** True iff YYY0 and YYY1 represent identical options at the top level. + * That is, they represent the same rule applied to RHS symbols + * that produce the same terminal symbols. */ + bool + isIdenticalTo (const semantic_option& yyy1) const + {]b4_parse_assert_if([[ + check_ (); + yyy1.check_ ();]])[ + if (this->yyrule == yyy1.yyrule) + { + const glr_state *yys0, *yys1; + int yyn; + for (yys0 = this->state(), + yys1 = yyy1.state(), + yyn = yyrhsLength (this->yyrule); + yyn > 0; + yys0 = yys0->pred(), + yys1 = yys1->pred(), yyn -= 1) + if (yys0->yyposn != yys1->yyposn) + return false; + return true; + } + else + return false; + } + + /** Assuming identicalOptions (YYY0,YYY1), destructively merge the + * alternative semantic values for the RHS-symbols of YYY1 and YYY0. */ + void + mergeWith (semantic_option& yyy1) + {]b4_parse_assert_if([[ + check_ (); + yyy1.check_ ();]])[ + glr_state *yys0 = this->state (); + glr_state *yys1 = yyy1.state (); + for (int yyn = yyrhsLength (this->yyrule); + yyn > 0; + yyn -= 1, yys0 = yys0->pred (), yys1 = yys1->pred ()) + { + if (yys0 == yys1) + break; + else if (yys0->yyresolved) + { + yys1->yyresolved = true;]b4_variant_if([[ + YYASSERT (yys1->yylrState == yys0->yylrState); + ]b4_symbol_variant([yy_accessing_symbol (yys0->yylrState)], + [yys1->value ()], [copy], [yys0->value ()])], [[ + yys1->value () = yys0->value ();]])[ + } + else if (yys1->yyresolved) + { + yys0->yyresolved = true;]b4_variant_if([[ + YYASSERT (yys0->yylrState == yys1->yylrState); + ]b4_symbol_variant([yy_accessing_symbol (yys1->yylrState)], + [yys0->value ()], [copy], [yys1->value ()])], [[ + yys0->value () = yys1->value ();]])[ + } + else + { + semantic_option* yyz0prev = YY_NULLPTR; + semantic_option* yyz0 = yys0->firstVal(); + semantic_option* yyz1 = yys1->firstVal(); + while (true) + { + if (yyz1 == yyz0 || yyz1 == YY_NULLPTR) + break; + else if (yyz0 == YY_NULLPTR) + { + if (yyz0prev != YY_NULLPTR) + yyz0prev->setNext (yyz1); + else + yys0->setFirstVal (yyz1); + break; + } + else if (yyz0 < yyz1) + { + semantic_option* yyz = yyz0; + if (yyz0prev != YY_NULLPTR) + yyz0prev->setNext(yyz1); + else + yys0->setFirstVal(yyz1); + yyz1 = yyz1->next(); + yyz0->setNext(yyz); + } + yyz0prev = yyz0; + yyz0 = yyz0->next(); + } + yys1->setFirstVal(yys0->firstVal()); + } + } + } + +#if ]b4_api_PREFIX[DEBUG + void yyreportTree (size_t yyindent = 2) const + {]b4_parse_assert_if([[ + check_ ();]])[ + int yynrhs = yyrhsLength (this->yyrule); + const glr_state* yystates[1 + YYMAXRHS]; + glr_state yyleftmost_state; + + { + const glr_state* yys = this->state(); + for (int yyi = yynrhs; 0 < yyi; yyi -= 1) + { + yystates[yyi] = yys; + yys = yys->pred(); + } + if (yys == YY_NULLPTR) + { + yyleftmost_state.yyposn = 0; + yystates[0] = &yyleftmost_state; + } + else + yystates[0] = yys; + } + + std::string yylhs = ]b4_namespace_ref[::]b4_parser_class[::symbol_name (yylhsNonterm (this->yyrule)); + YYASSERT(this->state()); + if (this->state()->yyposn < yystates[0]->yyposn + 1) + std::cerr << std::string(yyindent, ' ') << yylhs << " -> yyrule - 1 << ", empty>\n"; + else + std::cerr << std::string(yyindent, ' ') << yylhs << " -> yyrule - 1 << ", tokens " + << yystates[0]->yyposn + 1 << " .. " + << this->state()->yyposn << ">\n"; + for (int yyi = 1; yyi <= yynrhs; yyi += 1) + { + if (yystates[yyi]->yyresolved) + { + std::string yysym = ]b4_namespace_ref[::]b4_parser_class[::symbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)); + if (yystates[yyi-1]->yyposn+1 > yystates[yyi]->yyposn) + std::cerr << std::string(yyindent + 2, ' ') << yysym + << " \n"; + else + std::cerr << std::string(yyindent + 2, ' ') << yysym + << " yyposn + 1 + << " .. " << yystates[yyi]->yyposn << ">\n"; + } + else + yystates[yyi]->firstVal ()->yyreportTree (yyindent+2); + } + } +#endif + + /** Rule number for this reduction */ + rule_num yyrule; + + private: + template + static const glr_stack_item* asItem(const T* state) + { + return reinterpret_cast(state); + } + template + static glr_stack_item* asItem(T* state) + { + return reinterpret_cast(state); + } + /** The last RHS state in the list of states to be reduced. */ + std::ptrdiff_t yystate; + /** Next sibling in chain of options. To facilitate merging, + * options are chained in decreasing order by address. */ + std::ptrdiff_t yynext; + + public: + /** The lookahead for this reduction. */ + symbol_type yyla; + +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YY_IGNORE_NULL_DEREFERENCE_BEGIN + YYASSERT (this->magic_ == MAGIC); + YY_IGNORE_NULL_DEREFERENCE_END + } + + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 0xeff1cace }; + unsigned int magic_;]])[ + }; // class semantic_option +} // namespace + +namespace +{ + /** Type of the items in the GLR stack. + * It can be either a glr_state or a semantic_option. The is_state_ field + * indicates which item of the union is valid. */ + class glr_stack_item + { + public: + glr_stack_item (bool state = true) + : is_state_ (state)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + { + if (is_state_) + new (&raw_) glr_state; + else + new (&raw_) semantic_option; + } + + glr_stack_item (const glr_stack_item& other) YY_NOEXCEPT YY_NOTHROW + : is_state_ (other.is_state_)]b4_parse_assert_if([[ + , magic_ (MAGIC)]])[ + {]b4_parse_assert_if([[ + other.check_ ();]])[ + std::memcpy (raw_, other.raw_, union_size); + } + + glr_stack_item& operator= (glr_stack_item other) + {]b4_parse_assert_if([[ + check_ (); + other.check_ ();]])[ + std::swap (is_state_, other.is_state_); + std::swap (raw_, other.raw_); + return *this; + } + + ~glr_stack_item () + {]b4_parse_assert_if([[ + check_ ();]])[ + if (is_state ()) + getState ().~glr_state (); + else + getOption ().~semantic_option (); + } + + void setState (const glr_state &state) + {]b4_parse_assert_if([[ + check_ (); + state.check_ ();]])[ + if (this != state.asItem ()) + { + if (is_state_) + getState ().~glr_state (); + else + getOption ().~semantic_option (); + new (&raw_) glr_state (state); + is_state_ = true; + } + } + + glr_state& getState () + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (is_state ()); + void *yyp = raw_; + glr_state& res = *static_cast (yyp);]b4_parse_assert_if([[ + res.check_ ();]])[ + return res; + } + + const glr_state& getState () const + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (is_state ()); + const void *yyp = raw_; + const glr_state& res = *static_cast (yyp);]b4_parse_assert_if([[ + res.check_ ();]])[ + return res; + } + + semantic_option& getOption () + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (!is_state ()); + void *yyp = raw_; + return *static_cast (yyp); + } + const semantic_option& getOption () const + {]b4_parse_assert_if([[ + check_ ();]])[ + YYDASSERT (!is_state ()); + const void *yyp = raw_; + return *static_cast (yyp); + } + bool is_state () const + {]b4_parse_assert_if([[ + check_ ();]])[ + return is_state_; + } + + private: + /// The possible contents of raw_. Since they have constructors, they cannot + /// be directly included in the union. + union contents + { + char yystate[sizeof (glr_state)]; + char yyoption[sizeof (semantic_option)]; + }; + enum { union_size = sizeof (contents) }; + union { + /// Strongest alignment constraints. + long double yyalign_me; + /// A buffer large enough to store the contents. + char raw_[union_size]; + }; + /** Type tag for the union. */ + bool is_state_; +]b4_parse_assert_if([[ + public: + // Check invariants. + void check_ () const + { + YYASSERT (this->magic_ == MAGIC); + YYASSERT (this->is_state_ == false || this->is_state_ == true); + } + // A magic number to check our pointer arithmetic is sane. + enum { MAGIC = 0xDEAD1ACC }; // 3735886540. + const unsigned int magic_;]])[ + }; // class glr_stack_item +} // namespace + +glr_state* glr_state::pred () +{]b4_parse_assert_if([[ + check_ ();]])[ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yypred ? &asItem (as_pointer_ (this) - yypred)->getState () : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +const glr_state* glr_state::pred () const +{]b4_parse_assert_if([[ + check_ ();]])[ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yypred ? &asItem (as_pointer_ (this) - yypred)->getState () : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +void glr_state::setPred (const glr_state* state) +{]b4_parse_assert_if([[ + check_ (); + if (state) + state->check_ ();]])[ + yypred = state ? as_pointer_ (this) - as_pointer_ (state) : 0; +} + +semantic_option* glr_state::firstVal () +{]b4_parse_assert_if([[ + check_ ();]])[ + return yyfirstVal ? &(asItem(this) - yyfirstVal)->getOption() : YY_NULLPTR; +} + +const semantic_option* glr_state::firstVal () const +{]b4_parse_assert_if([[ + check_ ();]])[ + return yyfirstVal ? &(asItem(this) - yyfirstVal)->getOption() : YY_NULLPTR; +} + +void glr_state::setFirstVal (const semantic_option* option) +{]b4_parse_assert_if([[ + check_ ();]])[ + yyfirstVal = option ? asItem(this) - asItem(option) : 0; +} + +std::ptrdiff_t glr_state::indexIn (const glr_stack_item* array) const +{]b4_parse_assert_if([[ + check_ ();]])[ + return asItem(this) - array; +} + +std::ptrdiff_t semantic_option::indexIn (const glr_stack_item* array) const +{ + return asItem(this) - array; +} + +glr_state* semantic_option::state () +{ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + return yystate ? &(asItem(this) - yystate)->getState() : YY_NULLPTR; + YY_IGNORE_NULL_DEREFERENCE_END +} + +const glr_state* semantic_option::state () const +{ + return yystate ? &(asItem(this) - yystate)->getState() : YY_NULLPTR; +} + +void semantic_option::setState (const glr_state* s) +{ + yystate = s ? asItem(this) - asItem(s) : 0; +} + +const semantic_option* semantic_option::next () const +{ + return yynext ? &(asItem(this) - yynext)->getOption() : YY_NULLPTR; +} + +semantic_option* semantic_option::next () +{ + return yynext ? &(asItem(this) - yynext)->getOption() : YY_NULLPTR; +} + +void semantic_option::setNext (const semantic_option* s) +{ + yynext = s ? asItem(this) - asItem(s) : 0; +} + +void glr_state::destroy (char const* yymsg, ]b4_namespace_ref[::]b4_parser_class[& yyparser) +{]b4_parse_assert_if([[ + check_ ();]])[ + if (yyresolved) + yyparser.yy_destroy_ (yymsg, yy_accessing_symbol(yylrState), + value ()]b4_locations_if([, yyloc])[); + else + { +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << yymsg + << (firstVal() ? " unresolved " : " incomplete ") + << (yy_accessing_symbol (yylrState) < YYNTOKENS ? "token" : "nterm") + << ' ' << yyparser.symbol_name (yy_accessing_symbol (yylrState)) + << " ("]b4_locations_if([[ + << yyloc << ": "]])[ + << ")\n"; +#endif + if (firstVal() != YY_NULLPTR) + { + semantic_option& yyoption = *firstVal (); + glr_state *yyrh = yyoption.state (); + for (int yyn = yyrhsLength (yyoption.yyrule); yyn > 0; yyn -= 1) + { + yyrh->destroy (yymsg, yyparser); + yyrh = yyrh->pred(); + } + } + } +} + + +#undef YYFILL +#define YYFILL(N) yyfill (yyvsp, yylow, (N), yynormal) + +namespace +{ + class state_stack + { + public: + using parser_type = ]b4_namespace_ref[::]b4_parser_class[; + using symbol_kind = parser_type::symbol_kind; + using value_type = parser_type::value_type;]b4_locations_if([[ + using location_type = parser_type::location_type;]])[ + + /** Initialize to a single empty stack, with total maximum + * capacity for all stacks of YYSIZE. */ + state_stack (size_t yysize) + : yysplitPoint (YY_NULLPTR) + { + yyitems.reserve (yysize); + } + +#if YYSTACKEXPANDABLE + /** Returns false if it tried to expand but could not. */ + bool + yyexpandGLRStackIfNeeded () + { + return YYHEADROOM <= spaceLeft () || yyexpandGLRStack (); + } + + private: + /** If *this is expandable, extend it. WARNING: Pointers into the + stack from outside should be considered invalid after this call. + We always expand when there are 1 or fewer items left AFTER an + allocation, so that we can avoid having external pointers exist + across an allocation. */ + bool + yyexpandGLRStack () + { + const size_t oldsize = yyitems.size(); + if (YYMAXDEPTH - YYHEADROOM < oldsize) + return false; + const size_t yynewSize = YYMAXDEPTH < 2 * oldsize ? YYMAXDEPTH : 2 * oldsize; + const glr_stack_item *oldbase = &yyitems[0]; + + yyitems.reserve (yynewSize); + const glr_stack_item *newbase = &yyitems[0]; + + // Adjust the pointers. Perform raw pointer arithmetic, as there + // is no reason for objects to be aligned on their size. + const ptrdiff_t disp + = reinterpret_cast (newbase) - reinterpret_cast (oldbase); + if (yysplitPoint) + const_cast (yysplitPoint) + = reinterpret_cast (reinterpret_cast (const_cast (yysplitPoint)) + disp); + + for (std::vector::iterator + i = yytops.begin (), + yyend = yytops.end (); + i != yyend; ++i) + if (glr_state_not_null (*i)) + *i = reinterpret_cast(reinterpret_cast(*i) + disp); + + return true; + } + + public: +#else + bool yyexpandGLRStackIfNeeded () + { + return YYHEADROOM <= spaceLeft (); + } +#endif +#undef YYSTACKEXPANDABLE + + static bool glr_state_not_null (glr_state* s) + { + return s != YY_NULLPTR; + } + + bool + reduceToOneStack () + { + using iterator = std::vector::iterator; + const iterator yybegin = yytops.begin(); + const iterator yyend = yytops.end(); + const iterator yyit = std::find_if(yybegin, yyend, glr_state_not_null); + if (yyit == yyend) + return false; + for (state_set_index yyk = create_state_set_index(yyit + 1 - yybegin); + yyk.uget() != numTops(); ++yyk) + yytops.yymarkStackDeleted (yyk); + yytops.yyremoveDeletes (); + yycompressStack (); + return true; + } + + /** Called when returning to deterministic operation to clean up the extra + * stacks. */ + void + yycompressStack () + { + if (yytops.size() != 1 || !isSplit()) + return; + + // yyr is the state after the split point. + glr_state* yyr = YY_NULLPTR; + for (glr_state *yyp = firstTop(), *yyq = yyp->pred(); + yyp != yysplitPoint; + yyr = yyp, yyp = yyq, yyq = yyp->pred()) + yyp->setPred(yyr); + + // This const_cast is okay, since anyway we have access to the mutable + // yyitems into which yysplitPoint points. + glr_stack_item* nextFreeItem + = const_cast (yysplitPoint)->asItem () + 1; + yysplitPoint = YY_NULLPTR; + yytops.clearLastDeleted (); + + while (yyr != YY_NULLPTR) + { + nextFreeItem->setState (*yyr); + glr_state& nextFreeState = nextFreeItem->getState(); + yyr = yyr->pred(); + nextFreeState.setPred(&(nextFreeItem - 1)->getState()); + setFirstTop (&nextFreeState); + ++nextFreeItem; + } + yyitems.resize(static_cast(nextFreeItem - yyitems.data())); + } + + bool isSplit() const { + return yysplitPoint != YY_NULLPTR; + } + + // Present the interface of a vector of glr_stack_item. + std::vector::const_iterator begin () const + { + return yyitems.begin (); + } + + std::vector::const_iterator end () const + { + return yyitems.end (); + } + + size_t size() const + { + return yyitems.size (); + } + + glr_stack_item& operator[] (size_t i) + { + return yyitems[i]; + } + + glr_stack_item& stackItemAt (size_t index) + { + return yyitems[index]; + } + + size_t numTops () const + { + return yytops.size (); + } + + glr_state* firstTop () const + { + return yytops[create_state_set_index (0)]; + } + + glr_state* topAt (state_set_index i) const + { + return yytops[i]; + } + + void setFirstTop (glr_state* value) + { + yytops[create_state_set_index (0)] = value; + } + + void setTopAt (state_set_index i, glr_state* value) + { + yytops[i] = value; + } + + void pop_back () + { + yyitems.pop_back (); + } + + void pop_back (size_t n) + { + yyitems.resize (yyitems.size () - n); + } + + state_set_index + yysplitStack (state_set_index yyk) + { + if (!isSplit ()) + { + YYASSERT (yyk.get () == 0); + yysplitPoint = topAt (yyk); + } + return yytops.yysplitStack (yyk); + } + + /** Assuming that YYS is a GLRState somewhere on *this, update the + * splitpoint of *this, if needed, so that it is at least as deep as + * YYS. */ + void + yyupdateSplit (glr_state& yys) + { + if (isSplit() && &yys < yysplitPoint) + yysplitPoint = &yys; + } + + /** Return a fresh GLRState. + * Callers should call yyreserveStack afterwards to make sure there is + * sufficient headroom. */ + glr_state& yynewGLRState (const glr_state& newState) + { + glr_state& state = yyitems[yynewGLRStackItem (true)].getState (); +#if false && 201103L <= YY_CPLUSPLUS + state = std::move (newState); +#else + state = newState; +#endif + return state; + } + + /** Return a fresh SemanticOption. + * Callers should call yyreserveStack afterwards to make sure there is + * sufficient headroom. */ + semantic_option& yynewSemanticOption (semantic_option newOption) + { + semantic_option& option = yyitems[yynewGLRStackItem (false)].getOption (); + option = std::move (newOption); + return option; + } + + /* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in + * YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1. + * For convenience, always return YYLOW1. */ + int + yyfill (glr_stack_item *yyvsp, int &yylow, int yylow1, bool yynormal) + { + if (!yynormal && yylow1 < yylow) + { + yyfillin (yyvsp, yylow, yylow1); + yylow = yylow1; + } + return yylow1; + } + + /** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting + * at YYVSP[YYLOW0].getState().pred(). Leaves YYVSP[YYLOW1].getState().pred() + * containing the pointer to the next state in the chain. */ + void + yyfillin (glr_stack_item *yyvsp, int yylow0, int yylow1) + { + glr_state* s = yyvsp[yylow0].getState().pred(); + YYASSERT(s != YY_NULLPTR); + for (int i = yylow0-1; i >= yylow1; i -= 1, s = s->pred()) + { + glr_state& yys = yyvsp[i].getState(); +#if ]b4_api_PREFIX[DEBUG + yys.yylrState = s->yylrState; +#endif + yys.yyresolved = s->yyresolved; + if (s->yyresolved) + {]b4_variant_if([[ + new (&yys.value ()) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (s->yylrState)], + [yys.value ()], [copy], [s->value ()])], [[ + new (&yys.value ()) value_type (s->value ());]])[ + } + else + /* The effect of using yyval or yyloc (in an immediate + * rule) is undefined. */ + yys.setFirstVal (YY_NULLPTR);]b4_locations_if([[ + yys.yyloc = s->yyloc;]])[ + yys.setPred(s->pred()); + } + } + +#if ]b4_api_PREFIX[DEBUG + + /*----------------------------------------------------------------------. + | Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. | + `----------------------------------------------------------------------*/ + + void + yy_reduce_print (bool yynormal, glr_stack_item* yyvsp, state_set_index yyk, + rule_num yyrule, parser_type& yyparser) + { + int yynrhs = yyrhsLength (yyrule);]b4_locations_if([ + int yylow = 1;])[ + int yyi; + std::cerr << "Reducing stack " << yyk.get() << " by rule " << yyrule - 1 + << " (line " << int (yyrline[yyrule]) << "):\n"; + if (! yynormal) + yyfillin (yyvsp, 1, -yynrhs); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + std::cerr << " $" << yyi + 1 << " = "; + yyparser.yy_symbol_print_ + (yy_accessing_symbol (yyvsp[yyi - yynrhs + 1].getState().yylrState), + yyvsp[yyi - yynrhs + 1].getState().value ()]b4_locations_if([[, + ]b4_rhs_location(yynrhs, yyi + 1)])[); + if (!yyvsp[yyi - yynrhs + 1].getState().yyresolved) + std::cerr << " (unresolved)"; + std::cerr << '\n'; + } + } + + +#define YYINDEX(YYX) \ + ((YYX) == YY_NULLPTR ? -1 : (YYX)->indexIn (yyitems.data ())) + + void + dumpStack () const + { + for (size_t yyi = 0; yyi < size(); ++yyi) + { + const glr_stack_item& item = yyitems[yyi]; + std::cerr << std::setw(3) << yyi << ". "; + if (item.is_state()) + { + std::cerr << "Res: " << item.getState().yyresolved + << ", LR State: " << item.getState().yylrState + << ", posn: " << item.getState().yyposn + << ", pred: " << YYINDEX(item.getState().pred()); + if (! item.getState().yyresolved) + std::cerr << ", firstVal: " + << YYINDEX(item.getState().firstVal()); + } + else + { + std::cerr << "Option. rule: " << item.getOption().yyrule - 1 + << ", state: " << YYINDEX(item.getOption().state()) + << ", next: " << YYINDEX(item.getOption().next()); + } + std::cerr << '\n'; + } + std::cerr << "Tops:"; + for (state_set_index yyi = create_state_set_index(0); yyi.uget() < numTops(); ++yyi) { + std::cerr << yyi.get() << ": " << YYINDEX(topAt(yyi)) << "; "; + } + std::cerr << '\n'; + } + +#undef YYINDEX +#endif + + YYRESULTTAG + yyreportAmbiguity (const semantic_option& yyx0, + const semantic_option& yyx1, parser_type& yyparser]b4_locations_if([, const location_type& yyloc])[) + { + YY_USE (yyx0); + YY_USE (yyx1); + +#if ]b4_api_PREFIX[DEBUG + std::cerr << "Ambiguity detected.\n" + "Option 1,\n"; + yyx0.yyreportTree (); + std::cerr << "\nOption 2,\n"; + yyx1.yyreportTree (); + std::cerr << '\n'; +#endif + + yyparser.error (]b4_locations_if([yyloc, ])[YY_("syntax is ambiguous")); + return yyabort; + } + +#if ]b4_api_PREFIX[DEBUG + /* Print YYS (possibly NULL) and its predecessors. */ + void + yypstates (const glr_state* yys) const + { + if (yys != YY_NULLPTR) + yys->yy_yypstack(); + else + std::cerr << ""; + std::cerr << '\n'; + } +#endif + + private: + size_t spaceLeft() const + { + return yyitems.capacity() - yyitems.size(); + } + + /** Return a fresh GLRStackItem in this. The item is an LR state + * if YYIS_STATE, and otherwise a semantic option. Callers should call + * yyreserveStack afterwards to make sure there is sufficient + * headroom. */ + size_t + yynewGLRStackItem (bool yyis_state) + { + YYDASSERT(yyitems.size() < yyitems.capacity()); + yyitems.push_back(glr_stack_item(yyis_state)); + return yyitems.size() - 1; + } + + + public: + std::vector yyitems; + // Where the stack splits. Anything below this address is deterministic. + const glr_state* yysplitPoint; + glr_state_set yytops; + }; // class state_stack +} // namespace + +#undef YYFILL +#define YYFILL(N) yystateStack.yyfill (yyvsp, yylow, (N), yynormal) + +namespace ]b4_namespace_ref[ +{ + class ]b4_parser_class[::glr_stack + { + public: +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // Needs access to yypact_value_is_default, etc. + friend context; +]])[ + + glr_stack (size_t yysize, parser_type& yyparser_yyarg]m4_ifset([b4_parse_param], [, b4_parse_param_decl])[) + : yyerrState (0) + , yystateStack (yysize) + , yyerrcnt (0) + , yyla () + , yyparser (yyparser_yyarg)]m4_ifset([b4_parse_param], [,b4_parse_param_cons])[ + {} + + ~glr_stack () + { + if (!this->yyla.empty ()) + yyparser.yy_destroy_ ("Cleanup: discarding lookahead", + this->yyla.kind (), this->yyla.value]b4_locations_if([, this->yyla.location])[); + popall_ (); + } + + int yyerrState; +]b4_locations_if([[ /* To compute the location of the error token. */ + glr_stack_item yyerror_range[3];]])[ + state_stack yystateStack; + int yyerrcnt; + symbol_type yyla; + YYJMP_BUF yyexception_buffer; + parser_type& yyparser; + + #define YYCHK1(YYE) \ + do { \ + switch (YYE) { \ + case yyok: \ + break; \ + case yyabort: \ + goto yyabortlab; \ + case yyaccept: \ + goto yyacceptlab; \ + case yyerr: \ + goto yyuser_error; \ + default: \ + goto yybuglab; \ + } \ + } while (false) + + int + parse () + { + int yyresult; + size_t yyposn; + + YYCDEBUG << "Starting parse\n"; + + this->yyla.clear (); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yyla.value], [], [], [yyla.location])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl +[ + switch (YYSETJMP (this->yyexception_buffer)) + { + case 0: break; + case 1: goto yyabortlab; + case 2: goto yyexhaustedlab; + default: goto yybuglab; + } + this->yyglrShift (create_state_set_index(0), 0, 0, this->yyla.value]b4_locations_if([, this->yyla.location])[); + yyposn = 0; + + while (true) + { + /* For efficiency, we have two loops, the first of which is + specialized to deterministic operation (single stack, no + potential ambiguity). */ + /* Standard mode */ + while (true) + { + const state_num yystate = this->firstTopState()->yylrState; + YYCDEBUG << "Entering state " << yystate << '\n'; + if (yystate == YYFINAL) + goto yyacceptlab; + if (yy_is_defaulted_state (yystate)) + { + const rule_num yyrule = yy_default_action (yystate); + if (yyrule == 0) + {]b4_locations_if([[ + this->yyerror_range[1].getState().yyloc = this->yyla.location;]])[ + this->yyreportSyntaxError (); + goto yyuser_error; + } + YYCHK1 (this->yyglrReduce (create_state_set_index(0), yyrule, true)); + } + else + { + yyget_token (); + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, this->yyla.kind (), yyconflicts); + if (*yyconflicts != 0) + break; + if (yy_is_shift_action (yyaction)) + { + YY_SYMBOL_PRINT ("Shifting", this->yyla.kind (), this->yyla.value, this->yyla.location); + yyposn += 1; + // FIXME: we should move yylval. + this->yyglrShift (create_state_set_index(0), yyaction, yyposn, this->yyla.value]b4_locations_if([, this->yyla.location])[); + yyla.clear (); + if (0 < this->yyerrState) + this->yyerrState -= 1; + } + else if (yy_is_error_action (yyaction)) + {]b4_locations_if([[ + this->yyerror_range[1].getState().yyloc = this->yyla.location;]])[ + /* Don't issue an error message again for exceptions + thrown from the scanner. */ + if (this->yyla.kind () != ]b4_symbol(error, kind)[) + this->yyreportSyntaxError (); + goto yyuser_error; + } + else + YYCHK1 (this->yyglrReduce (create_state_set_index(0), -yyaction, true)); + } + } + + while (true) + { + for (state_set_index yys = create_state_set_index(0); yys.uget() < this->yystateStack.numTops(); ++yys) + this->yystateStack.yytops.setLookaheadNeeds(yys, !this->yyla.empty ()); + + /* yyprocessOneStack returns one of three things: + + - An error flag. If the caller is yyprocessOneStack, it + immediately returns as well. When the caller is finally + yyparse, it jumps to an error label via YYCHK1. + + - yyok, but yyprocessOneStack has invoked yymarkStackDeleted + (yys), which sets the top state of yys to NULL. Thus, + yyparse's following invocation of yyremoveDeletes will remove + the stack. + + - yyok, when ready to shift a token. + + Except in the first case, yyparse will invoke yyremoveDeletes and + then shift the next token onto all remaining stacks. This + synchronization of the shift (that is, after all preceding + reductions on all stacks) helps prevent double destructor calls + on yylval in the event of memory exhaustion. */ + + for (state_set_index yys = create_state_set_index (0); yys.uget () < this->yystateStack.numTops (); ++yys) + YYCHK1 (this->yyprocessOneStack (yys, yyposn]b4_locations_if([, &this->yyla.location])[)); + this->yystateStack.yytops.yyremoveDeletes (); + if (this->yystateStack.yytops.size() == 0) + { + this->yystateStack.yytops.yyundeleteLastStack (); + if (this->yystateStack.yytops.size() == 0) + this->yyFail (]b4_locations_if([&this->yyla.location, ])[YY_("syntax error")); + YYCHK1 (this->yyresolveStack ()); + YYCDEBUG << "Returning to deterministic operation.\n";]b4_locations_if([[ + this->yyerror_range[1].getState ().yyloc = this->yyla.location;]])[ + this->yyreportSyntaxError (); + goto yyuser_error; + } + + /* If any yyglrShift call fails, it will fail after shifting. Thus, + a copy of yylval will already be on stack 0 in the event of a + failure in the following loop. Thus, yyla is emptied + before the loop to make sure the user destructor for yylval isn't + called twice. */ + symbol_kind_type yytoken_to_shift = this->yyla.kind (); + this->yyla.kind_ = ]b4_symbol(empty, kind)[; + yyposn += 1; + for (state_set_index yys = create_state_set_index (0); yys.uget () < this->yystateStack.numTops (); ++yys) + { + const state_num yystate = this->topState (yys)->yylrState; + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, yytoken_to_shift, yyconflicts); + /* Note that yyconflicts were handled by yyprocessOneStack. */ + YYCDEBUG << "On stack " << yys.get() << ", "; + YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, this->yyla.value, this->yyla.location); + this->yyglrShift (yys, yyaction, yyposn, this->yyla.value]b4_locations_if([, this->yyla.location])[); + YYCDEBUG << "Stack " << yys.get() << " now in state " + << this->topState(yys)->yylrState << '\n'; + } +]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yytoken_to_shift]], [[this->yyla.value]], [[template destroy]])])[ + + if (this->yystateStack.yytops.size () == 1) + { + YYCHK1 (this->yyresolveStack ()); + YYCDEBUG << "Returning to deterministic operation.\n"; + this->yystateStack.yycompressStack (); + break; + } + } + continue; + yyuser_error: + this->yyrecoverSyntaxError (]b4_locations_if([&this->yyla.location])[); + yyposn = this->firstTopState()->yyposn; + } + + yyacceptlab: + yyresult = 0; + goto yyreturn; + + yybuglab: + YYASSERT (false); + goto yyabortlab; + + yyabortlab: + yyresult = 1; + goto yyreturn; + + yyexhaustedlab: + yyparser.error (]b4_locations_if([this->yyla.location, ])[YY_("memory exhausted")); + yyresult = 2; + goto yyreturn; + + yyreturn: + return yyresult; + } + #undef YYCHK1 + + void yyreserveGlrStack () + { + if (!yystateStack.yyexpandGLRStackIfNeeded ()) + yyMemoryExhausted (); + } + + _Noreturn void + yyMemoryExhausted () + { + YYLONGJMP (yyexception_buffer, 2); + } + + _Noreturn void + yyFail (]b4_locations_if([location_type* yylocp, ])[const char* yymsg) + { + if (yymsg != YY_NULLPTR) + yyparser.error (]b4_locations_if([*yylocp, ])[yymsg); + YYLONGJMP (yyexception_buffer, 1); + } + + /* GLRStates */ + + + /** Add a new semantic action that will execute the action for rule + * YYRULE on the semantic values in YYRHS to the list of + * alternative actions for YYSTATE. Assumes that YYRHS comes from + * stack #YYK of *this. */ + void + yyaddDeferredAction (state_set_index yyk, glr_state* yystate, + glr_state* yyrhs, rule_num yyrule) + { + semantic_option& yyopt = yystateStack.yynewSemanticOption (semantic_option (yyrule)); + yyopt.setState (yyrhs); + yyopt.setNext (yystate->firstVal ()); + if (yystateStack.yytops.lookaheadNeeds (yyk)) + yyopt.yyla = this->yyla; + yystate->setFirstVal (&yyopt); + + yyreserveGlrStack (); + } + + #if ]b4_api_PREFIX[DEBUG + void yypdumpstack () const + { + yystateStack.dumpStack(); + } + #endif + + void + yyreportSyntaxError () + { + if (yyerrState != 0) + return; +]b4_parse_error_case( +[simple], [[ + std::string msg = YY_("syntax error"); + yyparser.error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]], +[custom], [[ + context yyctx (*this, yyla); + yyparser.report_syntax_error (yyctx);]], +[[ + context yyctx (*this, yyla); + std::string msg = yyparser.yysyntax_error_ (yyctx); + yyparser.error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]])[ + yyerrcnt += 1; + } + + /* Recover from a syntax error on this, assuming that yytoken, + yylval, and yylloc are the syntactic category, semantic value, and location + of the lookahead. */ + void + yyrecoverSyntaxError (]b4_locations_if([location_type* yylocp])[) + { + if (yyerrState == 3) + /* We just shifted the error token and (perhaps) took some + reductions. Skip tokens until we can proceed. */ + while (true) + { + if (this->yyla.kind () == ]b4_symbol(eof, kind)[) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + if (this->yyla.kind () != ]b4_symbol(empty, kind)[) + {]b4_locations_if([[ + /* We throw away the lookahead, but the error range + of the shifted error token must take it into account. */ + glr_state *yys = firstTopState(); + yyerror_range[1].getState().yyloc = yys->yyloc; + yyerror_range[2].getState().yyloc = this->yyla.location; + YYLLOC_DEFAULT ((yys->yyloc), yyerror_range, 2);]])[ + yyparser.yy_destroy_ ("Error: discarding", + this->yyla.kind (), this->yyla.value]b4_locations_if([, this->yyla.location])[);]b4_variant_if([[ + // Value type destructor. + ]b4_symbol_variant([[this->yyla.kind ()]], [[this->yyla.value]], [[template destroy]])])[ + this->yyla.kind_ = ]b4_symbol(empty, kind)[; + } + yyget_token (); + int yyj = yypact[firstTopState()->yylrState]; + if (yypact_value_is_default (yyj)) + return; + yyj += this->yyla.kind (); + if (yyj < 0 || YYLAST < yyj || yycheck[yyj] != this->yyla.kind ()) + { + if (yydefact[firstTopState()->yylrState] != 0) + return; + } + else if (! yytable_value_is_error (yytable[yyj])) + return; + } + + if (!yystateStack.reduceToOneStack()) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + + /* Now pop stack until we find a state that shifts the error token. */ + yyerrState = 3; + while (firstTopState () != YY_NULLPTR) + { + glr_state *yys = firstTopState (); + int yyj = yypact[yys->yylrState]; + if (! yypact_value_is_default (yyj)) + { + yyj += YYTERROR; + if (0 <= yyj && yyj <= YYLAST && yycheck[yyj] == YYTERROR + && yy_is_shift_action (yytable[yyj])) + { + /* Shift the error token. */]b4_locations_if([[ + /* First adjust its location.*/ + location_type yyerrloc; + yyerror_range[2].getState().yyloc = this->yyla.location; + YYLLOC_DEFAULT (yyerrloc, (yyerror_range), 2);]])[ + YY_SYMBOL_PRINT ("Shifting", yy_accessing_symbol (yytable[yyj]), + this->yyla.value, yyerrloc); + yyglrShift (create_state_set_index(0), yytable[yyj], + yys->yyposn, yyla.value]b4_locations_if([, yyerrloc])[); + yys = firstTopState(); + break; + } + }]b4_locations_if([[ + yyerror_range[1].getState().yyloc = yys->yyloc;]])[ + if (yys->pred() != YY_NULLPTR) + yys->destroy ("Error: popping", yyparser); + yystateStack.setFirstTop(yys->pred()); + yystateStack.pop_back(); + } + if (firstTopState() == YY_NULLPTR) + yyFail (]b4_locations_if([yylocp, ])[YY_NULLPTR); + } + + YYRESULTTAG + yyprocessOneStack (state_set_index yyk, + size_t yyposn]b4_locations_if([, location_type* yylocp])[) + { + while (yystateStack.topAt(yyk) != YY_NULLPTR) + { + const state_num yystate = topState(yyk)->yylrState; + YYCDEBUG << "Stack " << yyk.get() + << " Entering state " << yystate << '\n'; + + YYASSERT (yystate != YYFINAL); + + if (yy_is_defaulted_state (yystate)) + { + const rule_num yyrule = yy_default_action (yystate); + if (yyrule == 0) + { + YYCDEBUG << "Stack " << yyk.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + return yyok; + } + const YYRESULTTAG yyflag + = yyglrReduce (yyk, yyrule, yyimmediate[yyrule]); + if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yyk.get() << " dies" + " (predicate failure or explicit user error).\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + return yyok; + } + if (yyflag != yyok) + return yyflag; + } + else + { + yystateStack.yytops.setLookaheadNeeds(yyk, true); + yyget_token (); + const short* yyconflicts; + const int yyaction = yygetLRActions (yystate, this->yyla.kind (), yyconflicts); + + for (; *yyconflicts != 0; ++yyconflicts) + { + state_set_index yynewStack = yystateStack.yysplitStack (yyk); + YYCDEBUG << "Splitting off stack " << yynewStack.get() + << " from " << yyk.get() << ".\n"; + YYRESULTTAG yyflag = + yyglrReduce (yynewStack, *yyconflicts, yyimmediate[*yyconflicts]); + if (yyflag == yyok) + YYCHK (yyprocessOneStack (yynewStack, + yyposn]b4_locations_if([, yylocp])[)); + else if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yynewStack.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yynewStack); + } + else + return yyflag; + } + + if (yy_is_shift_action (yyaction)) + break; + else if (yy_is_error_action (yyaction)) + { + YYCDEBUG << "Stack " << yyk.get() << " dies.\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + break; + } + else + { + YYRESULTTAG yyflag + = yyglrReduce (yyk, -yyaction, yyimmediate[-yyaction]); + if (yyflag == yyerr) + { + YYCDEBUG << "Stack " << yyk.get() << " dies" + " (predicate failure or explicit user error).\n"; + yystateStack.yytops.yymarkStackDeleted (yyk); + break; + } + else if (yyflag != yyok) + return yyflag; + } + } + } + return yyok; + } + + /** Perform user action for rule number YYN, with RHS length YYRHSLEN, + * and top stack item YYVSP. YYVALP points to place to put semantic + * value ($$), and yylocp points to place for location information + * (@@$). Returns yyok for normal return, yyaccept for YYACCEPT, + * yyerr for YYERROR, yyabort for YYABORT. */ + YYRESULTTAG + yyuserAction (rule_num yyrule, int yyrhslen, glr_stack_item* yyvsp, state_set_index yyk, + value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + bool yynormal YY_ATTRIBUTE_UNUSED = !yystateStack.isSplit(); + int yylow = 1; +]b4_parse_param_use([yyvalp], [yylocp])dnl +[ YY_USE (yyk); + YY_USE (yyrhslen); + # undef yyerrok + # define yyerrok (yyerrState = 0) + # undef YYACCEPT + # define YYACCEPT return yyaccept + # undef YYABORT + # define YYABORT return yyabort + # undef YYERROR + # define YYERROR return yyerrok, yyerr + # undef YYRECOVERING + # define YYRECOVERING() (yyerrState != 0) + # undef yytoken + # define yytoken this->yyla.kind_ + # undef yyclearin + # define yyclearin (yytoken = ]b4_symbol(empty, kind)[) + # undef YYBACKUP + # define YYBACKUP(Token, Value) \ + return yyparser.error (]b4_locations_if([*yylocp, ])[YY_("syntax error: cannot back up")), \ + yyerrok, yyerr + +]b4_variant_if([[ + /* Variants are always initialized to an empty instance of the + correct type. The default '$$ = $1' action is NOT applied + when using variants. */ + // However we really need to prepare yyvsp now if we want to get + // correct locations, so invoke YYFILL for $1 anyway. + (void) YYFILL (1-yyrhslen); + ]b4_symbol_variant([[yylhsNonterm (yyrule)]], [(*yyvalp)], [emplace])], [[ + if (yyrhslen == 0) + *yyvalp = yyval_default; + else + *yyvalp = yyvsp[YYFILL (1-yyrhslen)].getState().value ();]])[]b4_locations_if([[ + /* Default location. */ + YYLLOC_DEFAULT ((*yylocp), (yyvsp - yyrhslen), yyrhslen); + yyerror_range[1].getState().yyloc = *yylocp; +]])[ + /* If yyk == -1, we are running a deferred action on a temporary + stack. In that case, YY_REDUCE_PRINT must not play with YYFILL, + so pretend the stack is "normal". */ + YY_REDUCE_PRINT ((yynormal || yyk == create_state_set_index (-1), yyvsp, yyk, yyrule, yyparser)); + #if YY_EXCEPTIONS + try + { + #endif // YY_EXCEPTIONS + switch (yyrule) + { + ]b4_user_actions[ + default: break; + } + #if YY_EXCEPTIONS + } + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n';]b4_locations_if([ + *yylocp = yyexc.location;])[ + yyparser.error (]b4_locations_if([*yylocp, ])[yyexc.what ()); + YYERROR; + } + #endif // YY_EXCEPTIONS + YY_SYMBOL_PRINT ("-> $$ =", yylhsNonterm (yyrule), *yyvalp, *yylocp); + + return yyok; + # undef yyerrok + # undef YYABORT + # undef YYACCEPT + # undef YYERROR + # undef YYBACKUP + # undef yytoken + # undef yyclearin + # undef YYRECOVERING + } + + YYRESULTTAG + yyresolveStack () + { + if (yystateStack.isSplit ()) + { + int yyn = 0; + for (glr_state* yys = firstTopState (); + yys != yystateStack.yysplitPoint; + yys = yys->pred ()) + yyn += 1; + YYCHK (yyresolveStates (*firstTopState (), yyn)); + } + return yyok; + } + + /** Pop the symbols consumed by reduction #YYRULE from the top of stack + * #YYK of *YYSTACKP, and perform the appropriate semantic action on their + * semantic values. Assumes that all ambiguities in semantic values + * have been previously resolved. Set *YYVALP to the resulting value, + * and *YYLOCP to the computed location (if any). Return value is as + * for userAction. */ + YYRESULTTAG + yydoAction (state_set_index yyk, rule_num yyrule, + value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + const int yynrhs = yyrhsLength (yyrule); + + if (!yystateStack.isSplit()) + { + /* Standard special case: single stack. */ + YYASSERT (yyk.get() == 0); + glr_stack_item* yyrhs = yystateStack.firstTop()->asItem(); + const YYRESULTTAG res + = yyuserAction (yyrule, yynrhs, yyrhs, yyk, yyvalp]b4_locations_if([, yylocp])[); + yystateStack.pop_back(static_cast(yynrhs)); + yystateStack.setFirstTop(&yystateStack[yystateStack.size() - 1].getState()); + return res; + } + else + { + glr_stack_item yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + glr_state* yys = yystateStack.topAt(yyk); + yyrhsVals[YYMAXRHS + YYMAXLEFT].getState().setPred(yys);]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].getState().yyloc = yys->yyloc;]])[ + for (int yyi = 0; yyi < yynrhs; yyi += 1) + { + yys = yys->pred(); + YYASSERT (yys != YY_NULLPTR); + } + yystateStack.yyupdateSplit (*yys); + yystateStack.setTopAt(yyk, yys); + return yyuserAction (yyrule, yynrhs, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + yyk, + yyvalp]b4_locations_if([, yylocp])[); + } + } + + /** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE, + * and push back on the resulting nonterminal symbol. Perform the + * semantic action associated with YYRULE and store its value with the + * newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently + * unambiguous. Otherwise, store the deferred semantic action with + * the new state. If the new state would have an identical input + * position, LR state, and predecessor to an existing state on the stack, + * it is identified with that existing state, eliminating stack #YYK from + * *YYSTACKP. In this case, the semantic value is + * added to the options for the existing state's semantic value. + */ + YYRESULTTAG + yyglrReduce (state_set_index yyk, rule_num yyrule, bool yyforceEval) + { + size_t yyposn = topState(yyk)->yyposn; + + if (yyforceEval || !yystateStack.isSplit()) + { + value_type val;]b4_locations_if([[ + location_type loc;]])[ + + YYRESULTTAG yyflag = yydoAction (yyk, yyrule, &val]b4_locations_if([, &loc])[); + if (yyflag == yyerr && yystateStack.isSplit()) + {]b4_parse_trace_if([[ + YYCDEBUG << "Parse on stack " << yyk.get () + << " rejected by rule " << yyrule - 1 + << " (line " << int (yyrline[yyrule]) << ").\n"; + ]])[} + if (yyflag != yyok) + return yyflag; + yyglrShift (yyk, + yyLRgotoState (topState(yyk)->yylrState, + yylhsNonterm (yyrule)), + yyposn, val]b4_locations_if([, loc])[);]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yylhsNonterm (yyrule)]], [[val]], [[template destroy]])])[ + } + else + { + glr_state *yys = yystateStack.topAt(yyk); + glr_state *yys0 = yys; + for (int yyn = yyrhsLength (yyrule); 0 < yyn; yyn -= 1) + { + yys = yys->pred(); + YYASSERT (yys != YY_NULLPTR); + } + yystateStack.yyupdateSplit (*yys); + state_num yynewLRState = yyLRgotoState (yys->yylrState, yylhsNonterm (yyrule));]b4_parse_trace_if([[ + YYCDEBUG << "Reduced stack " << yyk.get () + << " by rule " << yyrule - 1 << " (line " << int (yyrline[yyrule]) + << "); action deferred. Now in state " << yynewLRState + << ".\n";]])[ + for (state_set_index yyi = create_state_set_index(0); yyi.uget() < yystateStack.numTops(); ++yyi) + if (yyi != yyk && yystateStack.topAt(yyi) != YY_NULLPTR) + { + const glr_state* yysplit = yystateStack.yysplitPoint; + glr_state* yyp = yystateStack.topAt(yyi); + while (yyp != yys && yyp != yysplit + && yyp->yyposn >= yyposn) + { + if (yyp->yylrState == yynewLRState + && yyp->pred() == yys) + { + yyaddDeferredAction (yyk, yyp, yys0, yyrule); + yystateStack.yytops.yymarkStackDeleted (yyk); + YYCDEBUG << "Merging stack " << yyk.get () + << " into stack " << yyi.get () << ".\n"; + return yyok; + } + yyp = yyp->pred(); + } + } + yystateStack.setTopAt(yyk, yys); + yyglrShiftDefer (yyk, yynewLRState, yyposn, yys0, yyrule); + } + return yyok; + } + + /** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with the (unresolved) + * semantic value of YYRHS under the action for YYRULE. */ + void + yyglrShiftDefer (state_set_index yyk, state_num yylrState, + size_t yyposn, glr_state* yyrhs, rule_num yyrule) + { + glr_state& yynewState = yystateStack.yynewGLRState ( + glr_state (yylrState, yyposn)); + yynewState.setPred (yystateStack.topAt (yyk)); + yystateStack.setTopAt (yyk, &yynewState); + + /* Invokes yyreserveStack. */ + yyaddDeferredAction (yyk, &yynewState, yyrhs, yyrule); + } + + /** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR + * state YYLRSTATE, at input position YYPOSN, with (resolved) semantic + * value YYVAL_ARG and source location YYLOC_ARG. */ + void + yyglrShift (state_set_index yyk, state_num yylrState, + size_t yyposn, + const value_type& yyval_arg]b4_locations_if([, const location_type& yyloc_arg])[) + { + glr_state& yynewState = yystateStack.yynewGLRState ( + glr_state (yylrState, yyposn, yyval_arg]b4_locations_if([, yyloc_arg])[)); + yynewState.setPred (yystateStack.topAt(yyk)); + yystateStack.setTopAt (yyk, &yynewState); + yyreserveGlrStack (); + } + +#if ]b4_api_PREFIX[DEBUG + void + yypstack (state_set_index yyk) const + { + yystateStack.yypstates (yystateStack.topAt (yyk)); + } +#endif + + glr_state* topState(state_set_index i) { + return yystateStack.topAt(i); + } + + glr_state* firstTopState() { + return yystateStack.firstTop(); + } + + private: + + void popall_ () + { + /* If the stack is well-formed, pop the stack until it is empty, + destroying its entries as we go. But free the stack regardless + of whether it is well-formed. */ + for (state_set_index k = create_state_set_index(0); k.uget() < yystateStack.numTops(); k += 1) + if (yystateStack.topAt(k) != YY_NULLPTR) + { + while (yystateStack.topAt(k) != YY_NULLPTR) + { + glr_state* state = topState(k);]b4_locations_if([[ + yyerror_range[1].getState().yyloc = state->yyloc;]])[ + if (state->pred() != YY_NULLPTR) + state->destroy ("Cleanup: popping", yyparser); + yystateStack.setTopAt(k, state->pred()); + yystateStack.pop_back(); + } + break; + } + } + + /** Resolve the previous YYN states starting at and including state YYS + * on *YYSTACKP. If result != yyok, some states may have been left + * unresolved possibly with empty semantic option chains. Regardless + * of whether result = yyok, each state has been left with consistent + * data so that destroy can be invoked if necessary. */ + YYRESULTTAG + yyresolveStates (glr_state& yys, int yyn) + { + if (0 < yyn) + { + YYASSERT (yys.pred() != YY_NULLPTR); + YYCHK (yyresolveStates (*yys.pred(), yyn-1)); + if (! yys.yyresolved) + YYCHK (yyresolveValue (yys)); + } + return yyok; + } + + static void + yyuserMerge (int yyn, value_type& yy0, value_type& yy1) + { + YY_USE (yy0); + YY_USE (yy1); + + switch (yyn) + { +]b4_mergers[ + default: break; + } + } + + /** Resolve the ambiguity represented in state YYS in *YYSTACKP, + * perform the indicated actions, and set the semantic value of YYS. + * If result != yyok, the chain of semantic options in YYS has been + * cleared instead or it has been left unmodified except that + * redundant options may have been removed. Regardless of whether + * result = yyok, YYS has been left with consistent data so that + * destroy can be invoked if necessary. */ + YYRESULTTAG + yyresolveValue (glr_state& yys) + { + semantic_option* yybest = yys.firstVal(); + YYASSERT(yybest != YY_NULLPTR); + bool yymerge = false; + YYRESULTTAG yyflag;]b4_locations_if([ + location_type *yylocp = &yys.yyloc;])[ + + semantic_option* yypPrev = yybest; + for (semantic_option* yyp = yybest->next(); + yyp != YY_NULLPTR; ) + { + if (yybest->isIdenticalTo (*yyp)) + { + yybest->mergeWith (*yyp); + yypPrev->setNext(yyp->next()); + yyp = yypPrev->next(); + } + else + { + switch (yypreference (*yybest, *yyp)) + { + case 0:]b4_locations_if([[ + yyresolveLocations (yys, 1);]])[ + return yystateStack.yyreportAmbiguity (*yybest, *yyp, yyparser]b4_locations_if([, *yylocp])[); + break; + case 1: + yymerge = true; + break; + case 2: + break; + case 3: + yybest = yyp; + yymerge = false; + break; + default: + /* This cannot happen so it is not worth a YYASSERT (false), + but some compilers complain if the default case is + omitted. */ + break; + } + yypPrev = yyp; + yyp = yyp->next(); + } + } + + value_type val; + if (yymerge) + { + int yyprec = yydprec[yybest->yyrule]; + yyflag = yyresolveAction (*yybest, &val]b4_locations_if([, yylocp])[); + if (yyflag == yyok) + for (semantic_option* yyp = yybest->next(); + yyp != YY_NULLPTR; + yyp = yyp->next()) + { + if (yyprec == yydprec[yyp->yyrule]) + { + value_type yyval_other;]b4_locations_if([ + location_type yydummy;])[ + yyflag = yyresolveAction (*yyp, &yyval_other]b4_locations_if([, &yydummy])[); + if (yyflag != yyok) + { + yyparser.yy_destroy_ ("Cleanup: discarding incompletely merged value for", + yy_accessing_symbol (yys.yylrState), + this->yyla.value]b4_locations_if([, *yylocp])[); + break; + } + yyuserMerge (yymerger[yyp->yyrule], val, yyval_other);]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yy_accessing_symbol (yys.yylrState)]], [[yyval_other]], [[template destroy]])])[ + } + } + } + else + yyflag = yyresolveAction (*yybest, &val]b4_locations_if([, yylocp])[); + + if (yyflag == yyok) + { + yys.yyresolved = true; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN]b4_variant_if([[ + new (&yys.value ()) value_type (); + ]b4_symbol_variant([yy_accessing_symbol (yys.yylrState)], + [yys.value ()], [copy], [val])], [[ + new (&yys.value ()) value_type (val);]])[ + + YY_IGNORE_MAYBE_UNINITIALIZED_END + } + else + yys.setFirstVal(YY_NULLPTR); +]b4_variant_if([[ + // FIXME: User destructors. + // Value type destructor. + ]b4_symbol_variant([[yy_accessing_symbol (yys.yylrState)]], [[val]], [[template destroy]])])[ + return yyflag; + } + + /** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its + * user action, and return the semantic value and location in *YYVALP + * and *YYLOCP. Regardless of whether result = yyok, all RHS states + * have been destroyed (assuming the user action destroys all RHS + * semantic values if invoked). */ + YYRESULTTAG + yyresolveAction (semantic_option& yyopt, value_type* yyvalp]b4_locations_if([, location_type* yylocp])[) + { + glr_state* yyoptState = yyopt.state(); + YYASSERT(yyoptState != YY_NULLPTR); + int yynrhs = yyrhsLength (yyopt.yyrule); + YYRESULTTAG yyflag = yyresolveStates (*yyoptState, yynrhs); + if (yyflag != yyok) + { + for (glr_state *yys = yyoptState; yynrhs > 0; yys = yys->pred(), yynrhs -= 1) + yys->destroy ("Cleanup: popping", yyparser); + return yyflag; + } + + glr_stack_item yyrhsVals[YYMAXRHS + YYMAXLEFT + 1]; + yyrhsVals[YYMAXRHS + YYMAXLEFT].getState().setPred(yyopt.state());]b4_locations_if([[ + if (yynrhs == 0) + /* Set default location. */ + yyrhsVals[YYMAXRHS + YYMAXLEFT - 1].getState().yyloc = yyoptState->yyloc;]])[ + { + symbol_type yyla_current = std::move (this->yyla); + this->yyla = std::move (yyopt.yyla); + yyflag = yyuserAction (yyopt.yyrule, yynrhs, + yyrhsVals + YYMAXRHS + YYMAXLEFT - 1, + create_state_set_index (-1), + yyvalp]b4_locations_if([, yylocp])[); + this->yyla = std::move (yyla_current); + } + return yyflag; + }]b4_locations_if([[ + + /** Resolve the locations for each of the YYN1 states in *YYSTACKP, + * ending at YYS1. Has no effect on previously resolved states. + * The first semantic option of a state is always chosen. */ + void + yyresolveLocations (glr_state &yys1, int yyn1) + { + if (0 < yyn1) + { + yyresolveLocations (*yys1.pred(), yyn1 - 1); + if (!yys1.yyresolved) + { + glr_stack_item yyrhsloc[1 + YYMAXRHS]; + YYASSERT (yys1.firstVal() != YY_NULLPTR); + semantic_option& yyoption = *yys1.firstVal(); + const int yynrhs = yyrhsLength (yyoption.yyrule); + if (0 < yynrhs) + { + yyresolveLocations (*yyoption.state(), yynrhs); + const glr_state *yys = yyoption.state(); + for (int yyn = yynrhs; yyn > 0; yyn -= 1) + { + yyrhsloc[yyn].getState().yyloc = yys->yyloc; + yys = yys->pred(); + } + } + else + { + /* Both yyresolveAction and yyresolveLocations traverse the GSS + in reverse rightmost order. It is only necessary to invoke + yyresolveLocations on a subforest for which yyresolveAction + would have been invoked next had an ambiguity not been + detected. Thus the location of the previous state (but not + necessarily the previous state itself) is guaranteed to be + resolved already. */ + YY_IGNORE_NULL_DEREFERENCE_BEGIN + yyrhsloc[0].getState().yyloc = yyoption.state()->yyloc; + YY_IGNORE_NULL_DEREFERENCE_END + } + YYLLOC_DEFAULT ((yys1.yyloc), yyrhsloc, yynrhs); + } + } + }]])[ + + /** If yytoken is empty, fetch the next token. */ + void + yyget_token () + { +]b4_parse_param_use()dnl +[ if (this->yyla.empty ()) + { + YYCDEBUG << "Reading a token\n"; +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + {]b4_token_ctor_if([[ + symbol_type yylookahead (]b4_yylex[); + yyla.move (yylookahead);]], [[ + yyla.kind_ = yyparser.yytranslate_ (]b4_yylex[);]])[ + } +#if YY_EXCEPTIONS + catch (const parser_type::syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what () << '\n';]b4_locations_if([ + this->yyla.location = yyexc.location;])[ + yyparser.error (]b4_locations_if([this->yyla.location, ])[yyexc.what ()); + // Map errors caught in the scanner to the error token, so that error + // handling is started. + this->yyla.kind_ = ]b4_symbol(error, kind)[; + } + } +#endif // YY_EXCEPTIONS + if (this->yyla.kind () == ]b4_symbol(eof, kind)[) + YYCDEBUG << "Now at end of input.\n"; + else + YY_SYMBOL_PRINT ("Next token is", this->yyla.kind (), this->yyla.value, this->yyla.location); + } + + + /* Bison grammar-table manipulation. */ + + /** The action to take in YYSTATE on seeing YYTOKEN. + * Result R means + * R < 0: Reduce on rule -R. + * R = 0: Error. + * R > 0: Shift to state R. + * Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list + * of conflicting reductions. + */ + static int + yygetLRActions (state_num yystate, symbol_kind_type yytoken, const short*& yyconflicts) + { + int yyindex = yypact[yystate] + yytoken; + if (yytoken == ]b4_symbol(error, kind)[) + { + // This is the error token. + yyconflicts = yyconfl; + return 0; + } + else if (yy_is_defaulted_state (yystate) + || yyindex < 0 || YYLAST < yyindex || yycheck[yyindex] != yytoken) + { + yyconflicts = yyconfl; + return -yydefact[yystate]; + } + else if (! yytable_value_is_error (yytable[yyindex])) + { + yyconflicts = yyconfl + yyconflp[yyindex]; + return yytable[yyindex]; + } + else + { + yyconflicts = yyconfl + yyconflp[yyindex]; + return 0; + } + } + + /** Compute post-reduction state. + * \param yystate the current state + * \param yysym the nonterminal to push on the stack + */ + static state_num + yyLRgotoState (state_num yystate, symbol_kind_type yysym) + { + const int yyr = yypgoto[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= YYLAST && yycheck[yyr] == yystate) + return yytable[yyr]; + else + return yydefgoto[yysym - YYNTOKENS]; + } + + static bool + yypact_value_is_default (state_num yystate) + { + return ]b4_table_value_equals([[pact]], [[yystate]], [b4_pact_ninf], [YYPACT_NINF])[; + } + + static bool + yytable_value_is_error (int yytable_value YY_ATTRIBUTE_UNUSED) + { + return ]b4_table_value_equals([[table]], [[yytable_value]], [b4_table_ninf], [YYTABLE_NINF])[; + } + + static bool + yy_is_shift_action (int yyaction) YY_NOEXCEPT + { + return 0 < yyaction; + } + + static bool + yy_is_error_action (int yyaction) YY_NOEXCEPT + { + return yyaction == 0; + } + + /** Whether LR state YYSTATE has only a default reduction + * (regardless of token). */ + static bool + yy_is_defaulted_state (state_num yystate) + { + return yypact_value_is_default (yypact[yystate]); + } + + /** The default reduction for YYSTATE, assuming it has one. */ + static rule_num + yy_default_action (state_num yystate) + { + return yydefact[yystate]; + } + + /* GLRStacks */ + + /** Y0 and Y1 represent two possible actions to take in a given + * parsing state; return 0 if no combination is possible, + * 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */ + static int + yypreference (const semantic_option& y0, const semantic_option& y1) + { + const rule_num r0 = y0.yyrule, r1 = y1.yyrule; + const int p0 = yydprec[r0], p1 = yydprec[r1]; + + if (p0 == p1) + { + if (yymerger[r0] == 0 || yymerger[r0] != yymerger[r1]) + return 0; + else + return 1; + } + else if (p0 == 0 || p1 == 0) + return 0; + else if (p0 < p1) + return 3; + else if (p1 < p0) + return 2; + else + return 0; + } + +]b4_parse_param_vars[ + }; // class ]b4_parser_class[::glr_stack +} // namespace ]b4_namespace_ref[ + + +#if ]b4_api_PREFIX[DEBUG +namespace +{ + void + yypstack (const glr_stack& yystack, size_t yyk) + { + yystack.yypstack (create_state_set_index (static_cast (yyk))); + } + + void + yypdumpstack (const glr_stack& yystack) + { + yystack.yypdumpstack (); + } +} +#endif + +]b4_namespace_open[ + /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[)]m4_ifset([b4_parse_param], [ + :])[ +#if ]b4_api_PREFIX[DEBUG + ]m4_ifset([b4_parse_param], [ ], [ :])[yycdebug_ (&std::cerr)]m4_ifset([b4_parse_param], [,])[ +#endif]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + glr_stack yystack(YYINITDEPTH, *this]b4_user_args[); + return yystack.parse (); + } + +]b4_parse_error_bmatch([custom\|detailed], +[[ const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ + } +]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytname_[yysymbol]; + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + std::string + ]b4_parser_class[::yytnamerr_ (const char *yystr) + { + if (*yystr == '"') + { + std::string yyr; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + yyr += *yyp; + break; + + case '"': + return yyr; + } + do_not_strip_quotes: ; + } + + return yystr; + } + + std::string + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytnamerr_ (yytname_[yysymbol]); + } +]])[ + +]b4_parse_error_bmatch([simple\|verbose], +[[#if ]b4_api_PREFIX[DEBUG]b4_tname_if([[ || 1]])[ + // YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + // First, the terminals, then, starting at \a YYNTOKENS, nonterminals. + const char* + const ]b4_parser_class[::yytname_[] = + { + ]b4_tname[ + }; +#endif +]])[ + +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // ]b4_parser_class[::context. + ]b4_parser_class[::context::context (glr_stack& yystack, const symbol_type& yyla) + : yystack_ (yystack) + , yyla_ (yyla) + {} + + int + ]b4_parser_class[::context::expected_tokens (symbol_kind_type yyarg[], int yyargn) const + { + // Actual number of expected tokens + int yycount = 0; + const int yyn = yypact[yystack_.firstTopState()->yylrState]; + if (!yystack_.yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for this + state because they are default actions. */ + const int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + const int yychecklim = YYLAST - yyn + 1; + const int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yystack_.yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (symbol_kind_type, yyx); + } + } + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; + } + +]])[ + +]b4_parse_error_bmatch([detailed\|verbose], [[ + int + ]b4_parser_class[::yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const + { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yyla) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is + a consistent state with a default action. There might have + been a previous inconsistent state, consistent state with a + non-default action, or user semantic action that manipulated + yyla. (However, yyla is currently not documented for users.) + */ + + if (!yyctx.lookahead ().empty ()) + { + if (yyarg) + yyarg[0] = yyctx.token (); + int yyn = yyctx.expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1); + return yyn + 1; + } + return 0; + } + + // Generate an error message. + std::string + ]b4_parser_class[::yysyntax_error_ (const context& yyctx) const + { + // Its maximum. + enum { YYARGS_MAX = 5 }; + // Arguments of yyformat. + symbol_kind_type yyarg[YYARGS_MAX]; + int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX); + + char const* yyformat = YY_NULLPTR; + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: // Avoid compiler warnings. + YYCASE_ (0, YY_("syntax error")); + YYCASE_ (1, YY_("syntax error, unexpected %s")); + YYCASE_ (2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_ (3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_ (4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_ (5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + std::string yyres; + // Argument number. + std::ptrdiff_t yyi = 0; + for (char const* yyp = yyformat; *yyp; ++yyp) + if (yyp[0] == '%' && yyp[1] == 's' && yyi < yycount) + { + yyres += symbol_name (yyarg[yyi++]); + ++yyp; + } + else + yyres += *yyp; + return yyres; + }]])[ + + void + ]b4_parser_class[::yy_destroy_ (const char* yymsg, symbol_kind_type yykind, + value_type& yyval]b4_locations_if([[, + location_type& yyloc]])[) + { + YY_USE (yyval);]b4_locations_if([[ + YY_USE (yyloc);]])[ + if (!yymsg) + yymsg = "Deleting"; + ]b4_parser_class[& yyparser = *this; + YY_USE (yyparser); + YY_SYMBOL_PRINT (yymsg, yykind, yyval, yyloc); + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + ]m4_do([m4_pushdef([b4_symbol_action], m4_defn([b4_symbol_action_for_yyval]))], + [b4_symbol_actions([destructor])], + [m4_popdef([b4_symbol_action])])[ + YY_IGNORE_MAYBE_UNINITIALIZED_END + } + +#if ]b4_api_PREFIX[DEBUG + /*--------------------. + | Print this symbol. | + `--------------------*/ + + void + ]b4_parser_class[::yy_symbol_value_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const + {]b4_locations_if([[ + YY_USE (yyloc);]])[ + YY_USE (yyval); + std::ostream& yyo = debug_stream (); + YY_USE (yyo); + ]m4_do([m4_pushdef([b4_symbol_action], m4_defn([b4_symbol_action_for_yyval]))], + [b4_symbol_actions([printer])], + [m4_popdef([b4_symbol_action])])[ + } + + void + ]b4_parser_class[::yy_symbol_print_ (symbol_kind_type yykind, + const value_type& yyval]b4_locations_if([[, + const location_type& yyloc]])[) const + { + *yycdebug_ << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << symbol_name (yykind) << " ("]b4_locations_if([[ + << yyloc << ": "]])[; + yy_symbol_value_print_ (yykind, yyval]b4_locations_if([[, yyloc]])[); + *yycdebug_ << ')'; + } + + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + // Actually, it is yydebug which is really used. + yydebug = l; + } +#endif // ]b4_api_PREFIX[DEBUG + +]b4_token_ctor_if([], [b4_yytranslate_define([cc])])[ + +]b4_token_ctor_if([], [[ + /*---------. + | symbol. | + `---------*/ +]b4_public_types_define([cc])])[ +]b4_namespace_close[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/RelWithDebInfo/data/skeletons/java-skel.m4 b/bison/RelWithDebInfo/data/skeletons/java-skel.m4 new file mode 100644 index 0000000..11cbc49 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/java-skel.m4 @@ -0,0 +1,27 @@ + -*- Autoconf -*- + +# Java skeleton dispatching for Bison. + +# Copyright (C) 2007, 2009-2015, 2018-2021 Free Software Foundation, +# Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +b4_glr_if( [b4_complain([%%glr-parser not supported for Java])]) +b4_nondeterministic_if([b4_complain([%%nondeterministic-parser not supported for Java])]) + +m4_define_default([b4_used_skeleton], [b4_skeletonsdir/[lalr1.java]]) +m4_define_default([b4_skeleton], ["b4_basename(b4_used_skeleton)"]) + +m4_include(b4_used_skeleton) diff --git a/bison/RelWithDebInfo/data/skeletons/java.m4 b/bison/RelWithDebInfo/data/skeletons/java.m4 new file mode 100644 index 0000000..8b0828b --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/java.m4 @@ -0,0 +1,502 @@ + -*- Autoconf -*- + +# Java language support for Bison + +# Copyright (C) 2007-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c-like.m4]) + + +# b4_list2(LIST1, LIST2) +# ---------------------- +# Join two lists with a comma if necessary. +m4_define([b4_list2], + [$1[]m4_ifval(m4_quote($1), [m4_ifval(m4_quote($2), [[, ]])])[]$2]) + + +# b4_percent_define_get3(DEF, PRE, POST, NOT) +# ------------------------------------------- +# Expand to the value of DEF surrounded by PRE and POST if it's %define'ed, +# otherwise NOT. +m4_define([b4_percent_define_get3], + [m4_ifval(m4_quote(b4_percent_define_get([$1])), + [$2[]b4_percent_define_get([$1])[]$3], [$4])]) + + + +# b4_flag_value(BOOLEAN-FLAG) +# --------------------------- +m4_define([b4_flag_value], [b4_flag_if([$1], [true], [false])]) + + +# b4_parser_class_declaration +# --------------------------- +# The declaration of the parser class ("class YYParser"), with all its +# qualifiers/annotations. +b4_percent_define_default([[api.parser.abstract]], [[false]]) +b4_percent_define_default([[api.parser.final]], [[false]]) +b4_percent_define_default([[api.parser.public]], [[false]]) +b4_percent_define_default([[api.parser.strictfp]], [[false]]) + +m4_define([b4_parser_class_declaration], +[b4_percent_define_get3([api.parser.annotations], [], [ ])dnl +b4_percent_define_flag_if([api.parser.public], [public ])dnl +b4_percent_define_flag_if([api.parser.abstract], [abstract ])dnl +b4_percent_define_flag_if([api.parser.final], [final ])dnl +b4_percent_define_flag_if([api.parser.strictfp], [strictfp ])dnl +[class ]b4_parser_class[]dnl +b4_percent_define_get3([api.parser.extends], [ extends ])dnl +b4_percent_define_get3([api.parser.implements], [ implements ])]) + + +# b4_lexer_if(TRUE, FALSE) +# ------------------------ +m4_define([b4_lexer_if], +[b4_percent_code_ifdef([[lexer]], [$1], [$2])]) + + +# b4_identification +# ----------------- +m4_define([b4_identification], +[[ /** Version number for the Bison executable that generated this parser. */ + public static final String bisonVersion = "]b4_version_string["; + + /** Name of the skeleton that generated this parser. */ + public static final String bisonSkeleton = ]b4_skeleton[; +]]) + + +## ------------ ## +## Data types. ## +## ------------ ## + +# b4_int_type(MIN, MAX) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# MIN to MAX (included). +m4_define([b4_int_type], +[m4_if(b4_ints_in($@, [-128], [127]), [1], [byte], + b4_ints_in($@, [-32768], [32767]), [1], [short], + [int])]) + +# b4_int_type_for(NAME) +# --------------------- +# Return the smallest int type able to handle numbers ranging from +# 'NAME_min' to 'NAME_max' (included). +m4_define([b4_int_type_for], +[b4_int_type($1_min, $1_max)]) + +# b4_null +# ------- +m4_define([b4_null], [null]) + + +# b4_typed_parser_table_define(TYPE, NAME, DATA, COMMENT) +# ------------------------------------------------------- +# We use intermediate functions (e.g., yypact_init) to work around the +# 64KB limit for JVM methods. See +# https://lists.gnu.org/r/help-bison/2008-11/msg00004.html. +m4_define([b4_typed_parser_table_define], +[m4_ifval([$4], [b4_comment([$4]) + ])dnl +[private static final ]$1[[] yy$2_ = yy$2_init(); + private static final ]$1[[] yy$2_init() + { + return new ]$1[[] + { + ]$3[ + }; + }]]) + + +# b4_integral_parser_table_define(NAME, DATA, COMMENT) +#----------------------------------------------------- +m4_define([b4_integral_parser_table_define], +[b4_typed_parser_table_define([b4_int_type_for([$2])], [$1], [$2], [$3])]) + + +## ------------- ## +## Token kinds. ## +## ------------- ## + + +# b4_token_enum(TOKEN-NUM) +# ------------------------ +# Output the definition of this token as an enum. +m4_define([b4_token_enum], +[b4_token_visible_if([$1], + [m4_format([[ /** Token %s, to be returned by the scanner. */ + static final int %s = %s%s; +]], + b4_symbol([$1], [tag]), + b4_symbol([$1], [id]), + b4_symbol([$1], b4_api_token_raw_if([[number]], [[code]])))])]) + + +# b4_token_enums +# -------------- +# Output the definition of the tokens (if there are) as enums. +m4_define([b4_token_enums], +[b4_any_token_visible_if([ /* Token kinds. */ +b4_symbol_foreach([b4_token_enum])])]) + + + +## -------------- ## +## Symbol kinds. ## +## -------------- ## + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[SymbolKind.b4_symbol_kind_base($@)]) + + +# b4_symbol_enum(SYMBOL-NUM) +# -------------------------- +# Output the definition of this symbol as an enum. +m4_define([b4_symbol_enum], +[m4_format([ %-30s %s], + m4_format([[%s(%s)%s]], + b4_symbol([$1], [kind_base]), + [$1], + m4_if([$1], b4_last_symbol, [[;]], [[,]])), + [b4_symbol_tag_comment([$1])])]) + + +# b4_declare_symbol_enum +# ---------------------- +# The definition of the symbol internal numbers as an enum. +m4_define([b4_declare_symbol_enum], +[[ public enum SymbolKind + { +]b4_symbol_foreach([b4_symbol_enum])[ + + private final int yycode_; + + SymbolKind (int n) { + this.yycode_ = n; + } + + private static final SymbolKind[] values_ = { + ]m4_map_args_sep([b4_symbol_kind(], [)], [, + ], b4_symbol_numbers)[ + }; + + static final SymbolKind get(int code) { + return values_[code]; + } + + public final int getCode() { + return this.yycode_; + } + +]b4_parse_error_bmatch( +[simple\|verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + private static String yytnamerr_(String yystr) + { + if (yystr.charAt (0) == '"') + { + StringBuffer yyr = new StringBuffer(); + strip_quotes: for (int i = 1; i < yystr.length(); i++) + switch (yystr.charAt(i)) + { + case '\'': + case ',': + break strip_quotes; + + case '\\': + if (yystr.charAt(++i) != '\\') + break strip_quotes; + /* Fall through. */ + default: + yyr.append(yystr.charAt(i)); + break; + + case '"': + return yyr.toString(); + } + } + return yystr; + } + + /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at \a YYNTOKENS_, nonterminals. */ + ]b4_typed_parser_table_define([String], [tname], [b4_tname])[ + + /* The user-facing name of this symbol. */ + public final String getName() { + return yytnamerr_(yytname_[yycode_]); + } +]], +[custom\|detailed], +[[ /* YYNAMES_[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at \a YYNTOKENS_, nonterminals. */ + ]b4_typed_parser_table_define([String], [names], [b4_symbol_names])[ + + /* The user-facing name of this symbol. */ + public final String getName() { + return yynames_[yycode_]; + }]])[ + }; +]])]) + + + +# b4_case(ID, CODE, [COMMENTS]) +# ----------------------------- +# We need to fool Java's stupid unreachable code detection. +m4_define([b4_case], +[ case $1:m4_ifval([$3], [ b4_comment([$3])]) + if (yyn == $1) + $2; + break; +]) + + +# b4_predicate_case(LABEL, CONDITIONS) +# ------------------------------------ +m4_define([b4_predicate_case], +[ case $1: + if (! ($2)) YYERROR; + break; +]) + + +## -------- ## +## Checks. ## +## -------- ## + +b4_percent_define_check_kind([[api.value.type]], [code], [deprecated]) + +b4_percent_define_check_kind([[annotations]], [code], [deprecated]) +b4_percent_define_check_kind([[extends]], [code], [deprecated]) +b4_percent_define_check_kind([[implements]], [code], [deprecated]) +b4_percent_define_check_kind([[init_throws]], [code], [deprecated]) +b4_percent_define_check_kind([[lex_throws]], [code], [deprecated]) +b4_percent_define_check_kind([[api.parser.class]], [code], [deprecated]) +b4_percent_define_check_kind([[throws]], [code], [deprecated]) + + + +## ---------------- ## +## Default values. ## +## ---------------- ## + +m4_define([b4_yystype], [b4_percent_define_get([[api.value.type]])]) +b4_percent_define_default([[api.value.type]], [[Object]]) +b4_percent_define_default([[api.symbol.prefix]], [[S_]]) + +# b4_api_prefix, b4_api_PREFIX +# ---------------------------- +# Corresponds to %define api.prefix +b4_percent_define_default([[api.prefix]], [[YY]]) +m4_define([b4_api_prefix], +[b4_percent_define_get([[api.prefix]])]) +m4_define([b4_api_PREFIX], +[m4_toupper(b4_api_prefix)]) + +# b4_prefix +# --------- +# If the %name-prefix is not given, it is api.prefix. +m4_define_default([b4_prefix], [b4_api_prefix]) + +b4_percent_define_default([[api.parser.class]], [b4_prefix[]Parser]) +m4_define([b4_parser_class], [b4_percent_define_get([[api.parser.class]])]) + +b4_percent_define_default([[lex_throws]], [[java.io.IOException]]) +m4_define([b4_lex_throws], [b4_percent_define_get([[lex_throws]])]) + +b4_percent_define_default([[throws]], []) +m4_define([b4_throws], [b4_percent_define_get([[throws]])]) + +b4_percent_define_default([[init_throws]], []) +m4_define([b4_init_throws], [b4_percent_define_get([[init_throws]])]) + +b4_percent_define_default([[api.location.type]], [Location]) +m4_define([b4_location_type], [b4_percent_define_get([[api.location.type]])]) + +b4_percent_define_default([[api.position.type]], [Position]) +m4_define([b4_position_type], [b4_percent_define_get([[api.position.type]])]) + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_symbol_translate(STRING) +# --------------------------- +# Used by "bison" in the array of symbol names to mark those that +# require translation. +m4_define([b4_symbol_translate], +[[i18n($1)]]) + + +# b4_trans(STRING) +# ---------------- +# Translate a string if i18n is enabled. Avoid collision with b4_translate. +m4_define([b4_trans], +[b4_has_translations_if([i18n($1)], [$1])]) + + + +# b4_symbol_value(VAL, [SYMBOL-NUM], [TYPE-TAG]) +# ---------------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [(($3)($1))], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [((b4_symbol([$2], [type]))($1))], + [$1])], + [$1])])]) + + +# b4_lhs_value([SYMBOL-NUM], [TYPE]) +# ---------------------------------- +# See README. +m4_define([b4_lhs_value], [yyval]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[yystack.valueAt (b4_subtract($@))]) + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +# +# In this simple implementation, %token and %type have class names +# between the angle brackets. +m4_define([b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2])], [$3], [$4])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[yystack.locationAt (b4_subtract($@))]) + + +# b4_lex_param +# b4_parse_param +# -------------- +# If defined, b4_lex_param arrives double quoted, but below we prefer +# it to be single quoted. Same for b4_parse_param. + +# TODO: should be in bison.m4 +m4_define_default([b4_lex_param], [[]]) +m4_define([b4_lex_param], b4_lex_param) +m4_define([b4_parse_param], b4_parse_param) + +# b4_lex_param_decl +# ----------------- +# Extra formal arguments of the constructor. +m4_define([b4_lex_param_decl], +[m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_decls(b4_lex_param))], + [$1])]) + +m4_define([b4_param_decls], + [m4_map([b4_param_decl], [$@])]) +m4_define([b4_param_decl], [, $1]) + +m4_define([b4_remove_comma], [m4_ifval(m4_quote($1), [$1, ], [])m4_shift2($@)]) + + + +# b4_parse_param_decl +# ------------------- +# Extra formal arguments of the constructor. +m4_define([b4_parse_param_decl], +[m4_ifset([b4_parse_param], + [b4_remove_comma([$1], + b4_param_decls(b4_parse_param))], + [$1])]) + + + +# b4_lex_param_call +# ----------------- +# Delegating the lexer parameters to the lexer constructor. +m4_define([b4_lex_param_call], + [m4_ifset([b4_lex_param], + [b4_remove_comma([$1], + b4_param_calls(b4_lex_param))], + [$1])]) +m4_define([b4_param_calls], + [m4_map([b4_param_call], [$@])]) +m4_define([b4_param_call], [, $2]) + + + +# b4_parse_param_cons +# ------------------- +# Extra initialisations of the constructor. +m4_define([b4_parse_param_cons], + [m4_ifset([b4_parse_param], + [b4_constructor_calls(b4_parse_param)])]) + +m4_define([b4_constructor_calls], + [m4_map([b4_constructor_call], [$@])]) +m4_define([b4_constructor_call], + [this.$2 = $2; + ]) + + + +# b4_parse_param_vars +# ------------------- +# Extra instance variables. +m4_define([b4_parse_param_vars], + [m4_ifset([b4_parse_param], + [ + /* User arguments. */ +b4_var_decls(b4_parse_param)])]) + +m4_define([b4_var_decls], + [m4_map_sep([b4_var_decl], [ +], [$@])]) +m4_define([b4_var_decl], + [ protected final $1;]) + + + +# b4_maybe_throws(THROWS) +# ----------------------- +# Expand to either an empty string or "throws THROWS". +m4_define([b4_maybe_throws], + [m4_ifval($1, [ throws $1])]) diff --git a/bison/RelWithDebInfo/data/skeletons/lalr1.cc b/bison/RelWithDebInfo/data/skeletons/lalr1.cc new file mode 100644 index 0000000..7cb69d3 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/lalr1.cc @@ -0,0 +1,1633 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c++.m4]) + +# api.value.type=variant is valid. +m4_define([b4_value_type_setup_variant]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +# b4_tname_if(TNAME-NEEDED, TNAME-NOT-NEEDED) +# ------------------------------------------- +m4_define([b4_tname_if], +[m4_case(b4_percent_define_get([[parse.error]]), + [verbose], [$1], + [b4_token_table_if([$1], + [$2])])]) + + +# b4_integral_parser_table_declare(TABLE-NAME, CONTENT, COMMENT) +# -------------------------------------------------------------- +# Declare "parser::yy_" whose contents is CONTENT. +m4_define([b4_integral_parser_table_declare], +[m4_ifval([$3], [b4_comment([$3], [ ]) +])dnl + static const b4_int_type_for([$2]) yy$1_[[]];dnl +]) + +# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT) +# ------------------------------------------------------------- +# Define "parser::yy_" whose contents is CONTENT. +m4_define([b4_integral_parser_table_define], +[ const b4_int_type_for([$2]) + b4_parser_class::yy$1_[[]] = + { + $2 + };dnl +]) + + +# b4_symbol_kind(NUM) +# ------------------- +m4_define([b4_symbol_kind], +[symbol_kind::b4_symbol_kind_base($@)]) + + +# b4_symbol_value_template(VAL, SYMBOL-NUM, [TYPE]) +# ------------------------------------------------- +# Same as b4_symbol_value, but used in a template method. It makes +# a difference when using variants. Note that b4_value_type_setup_union +# overrides b4_symbol_value, so we must override it again. +m4_copy([b4_symbol_value], [b4_symbol_value_template]) +m4_append([b4_value_type_setup_union], +[m4_copy_force([b4_symbol_value_union], [b4_symbol_value_template])]) + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value([yylhs.value], [$1], [$2])]) + + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +m4_define([b4_lhs_location], +[yylhs.location]) + + +# b4_rhs_data(RULE-LENGTH, POS) +# ----------------------------- +# See README. +m4_define([b4_rhs_data], +[yystack_@{b4_subtract($@)@}]) + + +# b4_rhs_state(RULE-LENGTH, POS) +# ------------------------------ +# The state corresponding to the symbol #POS, where the current +# rule has RULE-LENGTH symbols on RHS. +m4_define([b4_rhs_state], +[b4_rhs_data([$1], [$2]).state]) + + +# b4_rhs_value(RULE-LENGTH, POS, SYMBOL-NUM, [TYPE]) +# -------------------------------------------------- +# See README. +m4_define([_b4_rhs_value], +[b4_symbol_value([b4_rhs_data([$1], [$2]).value], [$3], [$4])]) + +m4_define([b4_rhs_value], +[b4_percent_define_ifdef([api.value.automove], + [YY_MOVE (_b4_rhs_value($@))], + [_b4_rhs_value($@)])]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +m4_define([b4_rhs_location], +[b4_rhs_data([$1], [$2]).location]) + + +# b4_symbol_action(SYMBOL-NUM, KIND) +# ---------------------------------- +# Run the action KIND (destructor or printer) for SYMBOL-NUM. +# Same as in C, but using references instead of pointers. +m4_define([b4_symbol_action], +[b4_symbol_if([$1], [has_$2], +[m4_pushdef([b4_symbol_value], m4_defn([b4_symbol_value_template]))[]dnl +b4_dollar_pushdef([yysym.value], + [$1], + [], + [yysym.location])dnl + _b4_symbol_case([$1])[]dnl +b4_syncline([b4_symbol([$1], [$2_line])], [b4_symbol([$1], [$2_file])])dnl + b4_symbol([$1], [$2]) +b4_syncline([@oline@], [@ofile@])dnl + break; + +m4_popdef([b4_symbol_value])[]dnl +b4_dollar_popdef[]dnl +])]) + + +# b4_yylex +# -------- +# Call yylex. +m4_define([b4_yylex], +[b4_token_ctor_if( +[b4_function_call([yylex], + [symbol_type], m4_ifdef([b4_lex_param], b4_lex_param))], +[b4_function_call([yylex], [int], + [[value_type *], [&yyla.value]][]dnl +b4_locations_if([, [[location_type *], [&yyla.location]]])dnl +m4_ifdef([b4_lex_param], [, ]b4_lex_param))])]) + + +m4_pushdef([b4_copyright_years], + [2002-2015, 2018-2021]) + +m4_define([b4_parser_class], + [b4_percent_define_get([[api.parser.class]])]) + +b4_bison_locations_if([# Backward compatibility. + m4_define([b4_location_constructors]) + m4_include(b4_skeletonsdir/[location.cc])]) +m4_include(b4_skeletonsdir/[stack.hh]) +b4_variant_if([m4_include(b4_skeletonsdir/[variant.hh])]) + + +# b4_shared_declarations(hh|cc) +# ----------------------------- +# Declaration that might either go into the header (if --header, $1 = hh) +# or in the implementation file. +m4_define([b4_shared_declarations], +[b4_percent_code_get([[requires]])[ +]b4_parse_assert_if([# include ])[ +# include // std::abort +# include +# include +# include +# include + +]b4_cxx_portability[ +]m4_ifdef([b4_location_include], + [[# include ]b4_location_include])[ +]b4_variant_if([b4_variant_includes])[ + +]b4_attribute_define[ +]b4_cast_define[ +]b4_null_define[ + +]b4_YYDEBUG_define[ + +]b4_namespace_open[ + +]b4_bison_locations_if([m4_ifndef([b4_location_file], + [b4_location_define])])[ + + /// A Bison parser. + class ]b4_parser_class[ + { + public: +]b4_public_types_declare[ +]b4_symbol_type_define[ + /// Build a parser object. + ]b4_parser_class[ (]b4_parse_param_decl[); + virtual ~]b4_parser_class[ (); + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + ]b4_parser_class[ (const ]b4_parser_class[&) = delete; + /// Non copyable. + ]b4_parser_class[& operator= (const ]b4_parser_class[&) = delete; +#endif + + /// Parse. An alias for parse (). + /// \returns 0 iff parsing succeeded. + int operator() (); + + /// Parse. + /// \returns 0 iff parsing succeeded. + virtual int parse (); + +#if ]b4_api_PREFIX[DEBUG + /// The current debugging stream. + std::ostream& debug_stream () const YY_ATTRIBUTE_PURE; + /// Set the current debugging stream. + void set_debug_stream (std::ostream &); + + /// Type for debugging levels. + typedef int debug_level_type; + /// The current debugging level. + debug_level_type debug_level () const YY_ATTRIBUTE_PURE; + /// Set the current debugging level. + void set_debug_level (debug_level_type l); +#endif + + /// Report a syntax error.]b4_locations_if([[ + /// \param loc where the syntax error is found.]])[ + /// \param msg a description of the syntax error. + virtual void error (]b4_locations_if([[const location_type& loc, ]])[const std::string& msg); + + /// Report a syntax error. + void error (const syntax_error& err); + +]b4_parse_error_bmatch( +[custom\|detailed], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol);]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static const char *symbol_name (symbol_kind_type yysymbol); +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// The user-facing name of the symbol whose (internal) number is + /// YYSYMBOL. No bounds checking. + static std::string symbol_name (symbol_kind_type yysymbol);]])[ + +]b4_token_constructor_define[ +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + class context + { + public: + context (const ]b4_parser_class[& yyparser, const symbol_type& yyla); + const symbol_type& lookahead () const YY_NOEXCEPT { return yyla_; } + symbol_kind_type token () const YY_NOEXCEPT { return yyla_.kind (); }]b4_locations_if([[ + const location_type& location () const YY_NOEXCEPT { return yyla_.location; } +]])[ + /// Put in YYARG at most YYARGN of the expected tokens, and return the + /// number of tokens stored in YYARG. If YYARG is null, return the + /// number of expected tokens (guaranteed to be less than YYNTOKENS). + int expected_tokens (symbol_kind_type yyarg[], int yyargn) const; + + private: + const ]b4_parser_class[& yyparser_; + const symbol_type& yyla_; + }; +]])[ + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + ]b4_parser_class[ (const ]b4_parser_class[&); + /// Non copyable. + ]b4_parser_class[& operator= (const ]b4_parser_class[&); +#endif +]b4_lac_if([[ + /// Check the lookahead yytoken. + /// \returns true iff the token will be eventually shifted. + bool yy_lac_check_ (symbol_kind_type yytoken) const; + /// Establish the initial context if no initial context currently exists. + /// \returns true iff the token will be eventually shifted. + bool yy_lac_establish_ (symbol_kind_type yytoken); + /// Discard any previous initial lookahead context because of event. + /// \param event the event which caused the lookahead to be discarded. + /// Only used for debbuging output. + void yy_lac_discard_ (const char* event);]])[ + + /// Stored state numbers (used for stacks). + typedef ]b4_int_type(0, m4_eval(b4_states_number - 1))[ state_type; +]b4_parse_error_bmatch( +[custom], [[ + /// Report a syntax error + /// \param yyctx the context in which the error occurred. + void report_syntax_error (const context& yyctx) const;]], +[detailed\|verbose], [[ + /// The arguments of the error message. + int yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const; + + /// Generate an error message. + /// \param yyctx the context in which the error occurred. + virtual std::string yysyntax_error_ (const context& yyctx) const;]])[ + /// Compute post-reduction state. + /// \param yystate the current state + /// \param yysym the nonterminal to push on the stack + static state_type yy_lr_goto_state_ (state_type yystate, int yysym); + + /// Whether the given \c yypact_ value indicates a defaulted state. + /// \param yyvalue the value to check + static bool yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT; + + /// Whether the given \c yytable_ value indicates a syntax error. + /// \param yyvalue the value to check + static bool yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT; + + static const ]b4_int_type(b4_pact_ninf, b4_pact_ninf)[ yypact_ninf_; + static const ]b4_int_type(b4_table_ninf, b4_table_ninf)[ yytable_ninf_; + + /// Convert a scanner token kind \a t to a symbol kind. + /// In theory \a t should be a token_kind_type, but character literals + /// are valid, yet not members of the token_kind_type enum. + static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT; + +]b4_parse_error_bmatch( +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + /// For a symbol, its name in clear. + static const char* const yytname_[]; +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /// Convert the symbol name \a n to a form suitable for a diagnostic. + static std::string yytnamerr_ (const char *yystr); + + /// For a symbol, its name in clear. + static const char* const yytname_[]; +]])[ + + // Tables. +]b4_parser_tables_declare[ + +#if ]b4_api_PREFIX[DEBUG +]b4_integral_parser_table_declare([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ + /// Report on the debug stream that the rule \a r is going to be reduced. + virtual void yy_reduce_print_ (int r) const; + /// Print the state stack on the debug stream. + virtual void yy_stack_print_ () const; + + /// Debugging level. + int yydebug_; + /// Debug stream. + std::ostream* yycdebug_; + + /// \brief Display a symbol kind, value and location. + /// \param yyo The output stream. + /// \param yysym The symbol. + template + void yy_print_ (std::ostream& yyo, const basic_symbol& yysym) const; +#endif + + /// \brief Reclaim the memory associated to a symbol. + /// \param yymsg Why this token is reclaimed. + /// If null, print nothing. + /// \param yysym The symbol. + template + void yy_destroy_ (const char* yymsg, basic_symbol& yysym) const; + + private: + /// Type access provider for state based symbols. + struct by_state + { + /// Default constructor. + by_state () YY_NOEXCEPT; + + /// The symbol kind as needed by the constructor. + typedef state_type kind_type; + + /// Constructor. + by_state (kind_type s) YY_NOEXCEPT; + + /// Copy constructor. + by_state (const by_state& that) YY_NOEXCEPT; + + /// Record that this symbol is empty. + void clear () YY_NOEXCEPT; + + /// Steal the symbol kind from \a that. + void move (by_state& that); + + /// The symbol kind (corresponding to \a state). + /// \a ]b4_symbol(empty, kind)[ when empty. + symbol_kind_type kind () const YY_NOEXCEPT; + + /// The state number used to denote an empty symbol. + /// We use the initial state, as it does not have a value. + enum { empty_state = 0 }; + + /// The state. + /// \a empty when empty. + state_type state; + }; + + /// "Internal" symbol: element of the stack. + struct stack_symbol_type : basic_symbol + { + /// Superclass. + typedef basic_symbol super_type; + /// Construct an empty symbol. + stack_symbol_type (); + /// Move or copy construction. + stack_symbol_type (YY_RVREF (stack_symbol_type) that); + /// Steal the contents from \a sym to build this. + stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) sym); +#if YY_CPLUSPLUS < 201103L + /// Assignment, needed by push_back by some old implementations. + /// Moves the contents of that. + stack_symbol_type& operator= (stack_symbol_type& that); + + /// Assignment, needed by push_back by other implementations. + /// Needed by some other old implementations. + stack_symbol_type& operator= (const stack_symbol_type& that); +#endif + }; + +]b4_stack_define[ + + /// Stack type. + typedef stack stack_type; + + /// The stack. + stack_type yystack_;]b4_lac_if([[ + /// The stack for LAC. + /// Logically, the yy_lac_stack's lifetime is confined to the function + /// yy_lac_check_. We just store it as a member of this class to hold + /// on to the memory and to avoid frequent reallocations. + /// Since yy_lac_check_ is const, this member must be mutable. + mutable std::vector yylac_stack_; + /// Whether an initial LAC context was established. + bool yy_lac_established_; +]])[ + + /// Push a new state on the stack. + /// \param m a debug message to display + /// if null, no trace is output. + /// \param sym the symbol + /// \warning the contents of \a s.value is stolen. + void yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym); + + /// Push a new look ahead token on the state on the stack. + /// \param m a debug message to display + /// if null, no trace is output. + /// \param s the state + /// \param sym the symbol (for its value and location). + /// \warning the contents of \a sym.value is stolen. + void yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym); + + /// Pop \a n symbols from the stack. + void yypop_ (int n = 1) YY_NOEXCEPT; + + /// Constants. + enum + { + yylast_ = ]b4_last[, ///< Last index in yytable_. + yynnts_ = ]b4_nterms_number[, ///< Number of nonterminal symbols. + yyfinal_ = ]b4_final_state_number[ ///< Termination state number. + }; + +]b4_parse_param_vars[ +]b4_percent_code_get([[yy_bison_internal_hook]])[ + }; + +]b4_token_ctor_if([b4_yytranslate_define([$1])[ +]b4_public_types_define([$1])])[ +]b4_namespace_close[ + +]b4_percent_code_get([[provides]])[ +]])[ + + +## -------------- ## +## Output files. ## +## -------------- ## + +# ------------- # +# Header file. # +# ------------- # + +]b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Skeleton interface for Bison LALR(1) parsers in C++])[ + +/** + ** \file ]b4_spec_mapped_header_file[ + ** Define the ]b4_namespace_ref[::parser class. + */ + +// C++ LALR(1) parser skeleton written by Akim Demaille. + +]b4_disclaimer[ +]b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_shared_declarations(hh)[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[ +]b4_output_end[ +]])[ + + +# --------------------- # +# Implementation file. # +# --------------------- # + +]b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison LALR(1) parsers in C++])[ +]b4_disclaimer[ +]b4_percent_code_get([[top]])[]dnl +m4_if(b4_prefix, [yy], [], +[ +// Take the name prefix into account. +[#]define yylex b4_prefix[]lex])[ + +]b4_user_pre_prologue[ + +]b4_header_if([[#include "@basename(]b4_spec_header_file[@)"]], + [b4_shared_declarations([cc])])[ + +]b4_user_post_prologue[ +]b4_percent_code_get[ + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include // FIXME: INFRINGES ON USER NAME SPACE. +# define YY_(msgid) dgettext ("bison-runtime", msgid) +# endif +# endif +# ifndef YY_ +# define YY_(msgid) msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +// Whether we are compiled with exception support. +#ifndef YY_EXCEPTIONS +# if defined __GNUC__ && !defined __EXCEPTIONS +# define YY_EXCEPTIONS 0 +# else +# define YY_EXCEPTIONS 1 +# endif +#endif + +]b4_locations_if([dnl +[#define YYRHSLOC(Rhs, K) ((Rhs)[K].location) +]b4_yylloc_default_define])[ + +// Enable debugging if requested. +#if ]b4_api_PREFIX[DEBUG + +// A pseudo ostream that takes yydebug_ into account. +# define YYCDEBUG if (yydebug_) (*yycdebug_) + +# define YY_SYMBOL_PRINT(Title, Symbol) \ + do { \ + if (yydebug_) \ + { \ + *yycdebug_ << Title << ' '; \ + yy_print_ (*yycdebug_, Symbol); \ + *yycdebug_ << '\n'; \ + } \ + } while (false) + +# define YY_REDUCE_PRINT(Rule) \ + do { \ + if (yydebug_) \ + yy_reduce_print_ (Rule); \ + } while (false) + +# define YY_STACK_PRINT() \ + do { \ + if (yydebug_) \ + yy_stack_print_ (); \ + } while (false) + +#else // !]b4_api_PREFIX[DEBUG + +# define YYCDEBUG if (false) std::cerr +# define YY_SYMBOL_PRINT(Title, Symbol) YY_USE (Symbol) +# define YY_REDUCE_PRINT(Rule) static_cast (0) +# define YY_STACK_PRINT() static_cast (0) + +#endif // !]b4_api_PREFIX[DEBUG + +#define yyerrok (yyerrstatus_ = 0) +#define yyclearin (yyla.clear ()) + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab +#define YYRECOVERING() (!!yyerrstatus_) + +]b4_namespace_open[ + /// Build a parser object. + ]b4_parser_class::b4_parser_class[ (]b4_parse_param_decl[) +#if ]b4_api_PREFIX[DEBUG + : yydebug_ (false), + yycdebug_ (&std::cerr)]b4_lac_if([,], [m4_ifset([b4_parse_param], [,])])[ +#else +]b4_lac_if([ :], [m4_ifset([b4_parse_param], [ :])])[ +#endif]b4_lac_if([[ + yy_lac_established_ (false)]m4_ifset([b4_parse_param], [,])])[]b4_parse_param_cons[ + {} + + ]b4_parser_class::~b4_parser_class[ () + {} + + ]b4_parser_class[::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW + {} + + /*---------. + | symbol. | + `---------*/ + +]b4_token_ctor_if([], [b4_public_types_define([cc])])[ + + // by_state. + ]b4_parser_class[::by_state::by_state () YY_NOEXCEPT + : state (empty_state) + {} + + ]b4_parser_class[::by_state::by_state (const by_state& that) YY_NOEXCEPT + : state (that.state) + {} + + void + ]b4_parser_class[::by_state::clear () YY_NOEXCEPT + { + state = empty_state; + } + + void + ]b4_parser_class[::by_state::move (by_state& that) + { + state = that.state; + that.clear (); + } + + ]b4_parser_class[::by_state::by_state (state_type s) YY_NOEXCEPT + : state (s) + {} + + ]b4_parser_class[::symbol_kind_type + ]b4_parser_class[::by_state::kind () const YY_NOEXCEPT + { + if (state == empty_state) + return ]b4_symbol(empty, kind)[; + else + return YY_CAST (symbol_kind_type, yystos_[+state]); + } + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type () + {} + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type (YY_RVREF (stack_symbol_type) that) + : super_type (YY_MOVE (that.state)]b4_variant_if([], [, YY_MOVE (that.value)])b4_locations_if([, YY_MOVE (that.location)])[) + {]b4_variant_if([ + b4_symbol_variant([that.kind ()], + [value], [YY_MOVE_OR_COPY], [YY_MOVE (that.value)])])[ +#if 201103L <= YY_CPLUSPLUS + // that is emptied. + that.state = empty_state; +#endif + } + + ]b4_parser_class[::stack_symbol_type::stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) that) + : super_type (s]b4_variant_if([], [, YY_MOVE (that.value)])[]b4_locations_if([, YY_MOVE (that.location)])[) + {]b4_variant_if([ + b4_symbol_variant([that.kind ()], + [value], [move], [YY_MOVE (that.value)])])[ + // that is emptied. + that.kind_ = ]b4_symbol(empty, kind)[; + } + +#if YY_CPLUSPLUS < 201103L + ]b4_parser_class[::stack_symbol_type& + ]b4_parser_class[::stack_symbol_type::operator= (const stack_symbol_type& that) + { + state = that.state; + ]b4_variant_if([b4_symbol_variant([that.kind ()], + [value], [copy], [that.value])], + [[value = that.value;]])[]b4_locations_if([ + location = that.location;])[ + return *this; + } + + ]b4_parser_class[::stack_symbol_type& + ]b4_parser_class[::stack_symbol_type::operator= (stack_symbol_type& that) + { + state = that.state; + ]b4_variant_if([b4_symbol_variant([that.kind ()], + [value], [move], [that.value])], + [[value = that.value;]])[]b4_locations_if([ + location = that.location;])[ + // that is emptied. + that.state = empty_state; + return *this; + } +#endif + + template + void + ]b4_parser_class[::yy_destroy_ (const char* yymsg, basic_symbol& yysym) const + { + if (yymsg) + YY_SYMBOL_PRINT (yymsg, yysym);]b4_variant_if([], [ + + // User destructor. + b4_symbol_actions([destructor], [yysym.kind ()])])[ + } + +#if ]b4_api_PREFIX[DEBUG + template + void + ]b4_parser_class[::yy_print_ (std::ostream& yyo, const basic_symbol& yysym) const + { + std::ostream& yyoutput = yyo; + YY_USE (yyoutput); + if (yysym.empty ()) + yyo << "empty symbol"; + else + { + symbol_kind_type yykind = yysym.kind (); + yyo << (yykind < YYNTOKENS ? "token" : "nterm") + << ' ' << yysym.name () << " ("]b4_locations_if([ + << yysym.location << ": "])[; + ]b4_symbol_actions([printer])[ + yyo << ')'; + } + } +#endif + + void + ]b4_parser_class[::yypush_ (const char* m, YY_MOVE_REF (stack_symbol_type) sym) + { + if (m) + YY_SYMBOL_PRINT (m, sym); + yystack_.push (YY_MOVE (sym)); + } + + void + ]b4_parser_class[::yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym) + { +#if 201103L <= YY_CPLUSPLUS + yypush_ (m, stack_symbol_type (s, std::move (sym))); +#else + stack_symbol_type ss (s, sym); + yypush_ (m, ss); +#endif + } + + void + ]b4_parser_class[::yypop_ (int n) YY_NOEXCEPT + { + yystack_.pop (n); + } + +#if ]b4_api_PREFIX[DEBUG + std::ostream& + ]b4_parser_class[::debug_stream () const + { + return *yycdebug_; + } + + void + ]b4_parser_class[::set_debug_stream (std::ostream& o) + { + yycdebug_ = &o; + } + + + ]b4_parser_class[::debug_level_type + ]b4_parser_class[::debug_level () const + { + return yydebug_; + } + + void + ]b4_parser_class[::set_debug_level (debug_level_type l) + { + yydebug_ = l; + } +#endif // ]b4_api_PREFIX[DEBUG + + ]b4_parser_class[::state_type + ]b4_parser_class[::yy_lr_goto_state_ (state_type yystate, int yysym) + { + int yyr = yypgoto_[yysym - YYNTOKENS] + yystate; + if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - YYNTOKENS]; + } + + bool + ]b4_parser_class[::yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT + { + return yyvalue == yypact_ninf_; + } + + bool + ]b4_parser_class[::yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT + { + return yyvalue == yytable_ninf_; + } + + int + ]b4_parser_class[::operator() () + { + return parse (); + } + + int + ]b4_parser_class[::parse () + { + int yyn; + /// Length of the RHS of the rule being reduced. + int yylen = 0; + + // Error handling. + int yynerrs_ = 0; + int yyerrstatus_ = 0; + + /// The lookahead symbol. + symbol_type yyla;]b4_locations_if([[ + + /// The locations where the error started and ended. + stack_symbol_type yyerror_range[3];]])[ + + /// The return value of parse (). + int yyresult;]b4_lac_if([[ + + // Discard the LAC context in case there still is one left from a + // previous invocation. + yy_lac_discard_ ("init");]])[ + +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + { + YYCDEBUG << "Starting parse\n"; + +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yyla.value], [], [], [yyla.location])dnl + b4_user_initial_action +b4_dollar_popdef])[]dnl + + [ /* Initialize the stack. The initial state will be set in + yynewstate, since the latter expects the semantical and the + location values to have been already stored, initialize these + stacks with a primary value. */ + yystack_.clear (); + yypush_ (YY_NULLPTR, 0, YY_MOVE (yyla)); + + /*-----------------------------------------------. + | yynewstate -- push a new symbol on the stack. | + `-----------------------------------------------*/ + yynewstate: + YYCDEBUG << "Entering state " << int (yystack_[0].state) << '\n'; + YY_STACK_PRINT (); + + // Accept? + if (yystack_[0].state == yyfinal_) + YYACCEPT; + + goto yybackup; + + + /*-----------. + | yybackup. | + `-----------*/ + yybackup: + // Try to take a decision without lookahead. + yyn = yypact_[+yystack_[0].state]; + if (yy_pact_value_is_default_ (yyn)) + goto yydefault; + + // Read a lookahead token. + if (yyla.empty ()) + { + YYCDEBUG << "Reading a token\n"; +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + {]b4_token_ctor_if([[ + symbol_type yylookahead (]b4_yylex[); + yyla.move (yylookahead);]], [[ + yyla.kind_ = yytranslate_ (]b4_yylex[);]])[ + } +#if YY_EXCEPTIONS + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n'; + error (yyexc); + goto yyerrlab1; + } +#endif // YY_EXCEPTIONS + } + YY_SYMBOL_PRINT ("Next token is", yyla); + + if (yyla.kind () == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yyla.kind_ = ]b4_symbol(undef, kind)[; + goto yyerrlab1; + } + + /* If the proper action on seeing token YYLA.TYPE is to reduce or + to detect an error, take that action. */ + yyn += yyla.kind (); + if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yyla.kind ()) + {]b4_lac_if([[ + if (!yy_lac_establish_ (yyla.kind ())) + goto yyerrlab;]])[ + goto yydefault; + } + + // Reduce or error. + yyn = yytable_[yyn]; + if (yyn <= 0) + { + if (yy_table_value_is_error_ (yyn)) + goto yyerrlab;]b4_lac_if([[ + if (!yy_lac_establish_ (yyla.kind ())) + goto yyerrlab; +]])[ + yyn = -yyn; + goto yyreduce; + } + + // Count tokens shifted since error; after three, turn off error status. + if (yyerrstatus_) + --yyerrstatus_; + + // Shift the lookahead token. + yypush_ ("Shifting", state_type (yyn), YY_MOVE (yyla));]b4_lac_if([[ + yy_lac_discard_ ("shift");]])[ + goto yynewstate; + + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + yydefault: + yyn = yydefact_[+yystack_[0].state]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + + /*-----------------------------. + | yyreduce -- do a reduction. | + `-----------------------------*/ + yyreduce: + yylen = yyr2_[yyn]; + { + stack_symbol_type yylhs; + yylhs.state = yy_lr_goto_state_ (yystack_[yylen].state, yyr1_[yyn]);]b4_variant_if([[ + /* Variants are always initialized to an empty instance of the + correct type. The default '$$ = $1' action is NOT applied + when using variants. */ + ]b4_symbol_variant([[yyr1_@{yyn@}]], [yylhs.value], [emplace])], [[ + /* If YYLEN is nonzero, implement the default value of the + action: '$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYLHS.VALUE to garbage. + This behavior is undocumented and Bison users should not rely + upon it. */ + if (yylen) + yylhs.value = yystack_@{yylen - 1@}.value; + else + yylhs.value = yystack_@{0@}.value;]])[ +]b4_locations_if([dnl +[ + // Default location. + { + stack_type::slice range (yystack_, yylen); + YYLLOC_DEFAULT (yylhs.location, range, yylen); + yyerror_range[1].location = yylhs.location; + }]])[ + + // Perform the reduction. + YY_REDUCE_PRINT (yyn); +#if YY_EXCEPTIONS + try +#endif // YY_EXCEPTIONS + { + switch (yyn) + { +]b4_user_actions[ + default: + break; + } + } +#if YY_EXCEPTIONS + catch (const syntax_error& yyexc) + { + YYCDEBUG << "Caught exception: " << yyexc.what() << '\n'; + error (yyexc); + YYERROR; + } +#endif // YY_EXCEPTIONS + YY_SYMBOL_PRINT ("-> $$ =", yylhs); + yypop_ (yylen); + yylen = 0; + + // Shift the result of the reduction. + yypush_ (YY_NULLPTR, YY_MOVE (yylhs)); + } + goto yynewstate; + + + /*--------------------------------------. + | yyerrlab -- here on detecting error. | + `--------------------------------------*/ + yyerrlab: + // If not already recovering from an error, report this error. + if (!yyerrstatus_) + { + ++yynerrs_;]b4_parse_error_case( + [simple], [[ + std::string msg = YY_("syntax error"); + error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]], + [custom], [[ + context yyctx (*this, yyla); + report_syntax_error (yyctx);]], + [[ + context yyctx (*this, yyla); + std::string msg = yysyntax_error_ (yyctx); + error (]b4_join(b4_locations_if([yyla.location]), [[YY_MOVE (msg)]])[);]])[ + } + +]b4_locations_if([[ + yyerror_range[1].location = yyla.location;]])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + // Return failure if at end of input. + if (yyla.kind () == ]b4_symbol(eof, kind)[) + YYABORT; + else if (!yyla.empty ()) + { + yy_destroy_ ("Error: discarding", yyla); + yyla.clear (); + } + } + + // Else will try to reuse lookahead token after shifting the error token. + goto yyerrlab1; + + + /*---------------------------------------------------. + | yyerrorlab -- error raised explicitly by YYERROR. | + `---------------------------------------------------*/ + yyerrorlab: + /* Pacify compilers when the user code never invokes YYERROR and + the label yyerrorlab therefore never appears in user code. */ + if (false) + YYERROR; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ + yypop_ (yylen); + yylen = 0; + YY_STACK_PRINT (); + goto yyerrlab1; + + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + yyerrlab1: + yyerrstatus_ = 3; // Each real token shifted decrements this. + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[+yystack_[0].state]; + if (!yy_pact_value_is_default_ (yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= yylast_ + && yycheck_[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + // Pop the current state because it cannot handle the error token. + if (yystack_.size () == 1) + YYABORT; +]b4_locations_if([[ + yyerror_range[1].location = yystack_[0].location;]])[ + yy_destroy_ ("Error: popping", yystack_[0]); + yypop_ (); + YY_STACK_PRINT (); + } + { + stack_symbol_type error_token; +]b4_locations_if([[ + yyerror_range[2].location = yyla.location; + YYLLOC_DEFAULT (error_token.location, yyerror_range, 2);]])[ + + // Shift the error token.]b4_lac_if([[ + yy_lac_discard_ ("error recovery");]])[ + error_token.state = state_type (yyn); + yypush_ ("Shifting", YY_MOVE (error_token)); + } + goto yynewstate; + + + /*-------------------------------------. + | yyacceptlab -- YYACCEPT comes here. | + `-------------------------------------*/ + yyacceptlab: + yyresult = 0; + goto yyreturn; + + + /*-----------------------------------. + | yyabortlab -- YYABORT comes here. | + `-----------------------------------*/ + yyabortlab: + yyresult = 1; + goto yyreturn; + + + /*-----------------------------------------------------. + | yyreturn -- parsing is finished, return the result. | + `-----------------------------------------------------*/ + yyreturn: + if (!yyla.empty ()) + yy_destroy_ ("Cleanup: discarding lookahead", yyla); + + /* Do not reclaim the symbols of the rule whose action triggered + this YYABORT or YYACCEPT. */ + yypop_ (yylen); + YY_STACK_PRINT (); + while (1 < yystack_.size ()) + { + yy_destroy_ ("Cleanup: popping", yystack_[0]); + yypop_ (); + } + + return yyresult; + } +#if YY_EXCEPTIONS + catch (...) + { + YYCDEBUG << "Exception caught: cleaning lookahead and stack\n"; + // Do not try to display the values of the reclaimed symbols, + // as their printers might throw an exception. + if (!yyla.empty ()) + yy_destroy_ (YY_NULLPTR, yyla); + + while (1 < yystack_.size ()) + { + yy_destroy_ (YY_NULLPTR, yystack_[0]); + yypop_ (); + } + throw; + } +#endif // YY_EXCEPTIONS + } + + void + ]b4_parser_class[::error (const syntax_error& yyexc) + { + error (]b4_join(b4_locations_if([yyexc.location]), + [[yyexc.what ()]])[); + } + +]b4_parse_error_bmatch([custom\|detailed], +[[ const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ + } +]], +[simple], +[[#if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ + const char * + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytname_[yysymbol]; + } +#endif // #if ]b4_api_PREFIX[DEBUG || ]b4_token_table_flag[ +]], +[verbose], +[[ /* Return YYSTR after stripping away unnecessary quotes and + backslashes, so that it's suitable for yyerror. The heuristic is + that double-quoting is unnecessary unless the string contains an + apostrophe, a comma, or backslash (other than backslash-backslash). + YYSTR is taken from yytname. */ + std::string + ]b4_parser_class[::yytnamerr_ (const char *yystr) + { + if (*yystr == '"') + { + std::string yyr; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + yyr += *yyp; + break; + + case '"': + return yyr; + } + do_not_strip_quotes: ; + } + + return yystr; + } + + std::string + ]b4_parser_class[::symbol_name (symbol_kind_type yysymbol) + { + return yytnamerr_ (yytname_[yysymbol]); + } +]])[ + +]b4_parse_error_bmatch([custom\|detailed\|verbose], [[ + // ]b4_parser_class[::context. + ]b4_parser_class[::context::context (const ]b4_parser_class[& yyparser, const symbol_type& yyla) + : yyparser_ (yyparser) + , yyla_ (yyla) + {} + + int + ]b4_parser_class[::context::expected_tokens (symbol_kind_type yyarg[], int yyargn) const + { + // Actual number of expected tokens + int yycount = 0; +]b4_lac_if([[ +#if ]b4_api_PREFIX[DEBUG + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + if (!yyparser_.yy_lac_established_) + yyparser_.yy_lac_check_ (yyla_.kind ()); +#endif + + for (int yyx = 0; yyx < YYNTOKENS; ++yyx) + { + symbol_kind_type yysym = YY_CAST (symbol_kind_type, yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser_.yy_lac_check_ (yysym)) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + const int yyn = yypact_[+yyparser_.yystack_[0].state]; + if (!yy_pact_value_is_default_ (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + const int yyxbegin = yyn < 0 ? -yyn : 0; + // Stay within bounds of both yycheck and yytname. + const int yychecklim = yylast_ - yyn + 1; + const int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yy_table_value_is_error_ (yytable_[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (symbol_kind_type, yyx); + } + } +]])[ + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; + } + +]])[ + +]b4_lac_if([[ + bool + ]b4_parser_class[::yy_lac_check_ (symbol_kind_type yytoken) const + { + // Logically, the yylac_stack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + yylac_stack_.clear (); + // Reduce until we encounter a shift and thereby accept the token. +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << "LAC: checking lookahead " << symbol_name (yytoken) << ':'; +#endif + std::ptrdiff_t lac_top = 0; + while (true) + { + state_type top_state = (yylac_stack_.empty () + ? yystack_[lac_top].state + : yylac_stack_.back ()); + int yyrule = yypact_[+top_state]; + if (yy_pact_value_is_default_ (yyrule) + || (yyrule += yytoken) < 0 || yylast_ < yyrule + || yycheck_[yyrule] != yytoken) + { + // Use the default action. + yyrule = yydefact_[+top_state]; + if (yyrule == 0) + { + YYCDEBUG << " Err\n"; + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yy_table_value_is_error_ (yyrule)) + { + YYCDEBUG << " Err\n"; + return false; + } + if (0 < yyrule) + { + YYCDEBUG << " S" << yyrule << '\n'; + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. + YYCDEBUG << " R" << yyrule - 1; + // Pop the corresponding number of values from the stack. + { + std::ptrdiff_t yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + std::ptrdiff_t lac_size = std::ptrdiff_t (yylac_stack_.size ()); + if (yylen < lac_size) + { + yylac_stack_.resize (std::size_t (lac_size - yylen)); + yylen = 0; + } + else if (lac_size) + { + yylac_stack_.clear (); + yylen -= lac_size; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lac_top. + lac_top += yylen; + } + // Keep top_state in sync with the updated stack. + top_state = (yylac_stack_.empty () + ? yystack_[lac_top].state + : yylac_stack_.back ()); + // Push the resulting state of the reduction. + state_type state = yy_lr_goto_state_ (top_state, yyr1_[yyrule]); + YYCDEBUG << " G" << int (state); + yylac_stack_.push_back (state); + } + } + + // Establish the initial context if no initial context currently exists. + bool + ]b4_parser_class[::yy_lac_establish_ (symbol_kind_type yytoken) + { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yy_lac_establish_ should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yy_lac_establish_ is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yy_lac_established_) + return true; + else + { +#if ]b4_api_PREFIX[DEBUG + YYCDEBUG << "LAC: initial context established for " + << symbol_name (yytoken) << '\n'; +#endif + yy_lac_established_ = true; + return yy_lac_check_ (yytoken); + } + } + + // Discard any previous initial lookahead context. + void + ]b4_parser_class[::yy_lac_discard_ (const char* event) + { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yy_lac_established_) + { + YYCDEBUG << "LAC: initial context discarded due to " + << event << '\n'; + yy_lac_established_ = false; + } + }]])[ + +]b4_parse_error_bmatch([detailed\|verbose], [[ + int + ]b4_parser_class[::yy_syntax_error_arguments_ (const context& yyctx, + symbol_kind_type yyarg[], int yyargn) const + { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yyla) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is + a consistent state with a default action. There might have + been a previous inconsistent state, consistent state with a + non-default action, or user semantic action that manipulated + yyla. (However, yyla is currently not documented for users.)]b4_lac_if([[ + In the first two cases, it might appear that the current syntax + error should have been detected in the previous state when + yy_lac_check was invoked. However, at that time, there might + have been a different syntax error that discarded a different + initial context during error recovery, leaving behind the + current lookahead.]], [[ + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state.]])[ + */ + + if (!yyctx.lookahead ().empty ()) + { + if (yyarg) + yyarg[0] = yyctx.token (); + int yyn = yyctx.expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1); + return yyn + 1; + } + return 0; + } + + // Generate an error message. + std::string + ]b4_parser_class[::yysyntax_error_ (const context& yyctx) const + { + // Its maximum. + enum { YYARGS_MAX = 5 }; + // Arguments of yyformat. + symbol_kind_type yyarg[YYARGS_MAX]; + int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX); + + char const* yyformat = YY_NULLPTR; + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: // Avoid compiler warnings. + YYCASE_ (0, YY_("syntax error")); + YYCASE_ (1, YY_("syntax error, unexpected %s")); + YYCASE_ (2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_ (3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_ (4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_ (5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + std::string yyres; + // Argument number. + std::ptrdiff_t yyi = 0; + for (char const* yyp = yyformat; *yyp; ++yyp) + if (yyp[0] == '%' && yyp[1] == 's' && yyi < yycount) + { + yyres += symbol_name (yyarg[yyi++]); + ++yyp; + } + else + yyres += *yyp; + return yyres; + }]])[ + + + const ]b4_int_type(b4_pact_ninf, b4_pact_ninf) b4_parser_class::yypact_ninf_ = b4_pact_ninf[; + + const ]b4_int_type(b4_table_ninf, b4_table_ninf) b4_parser_class::yytable_ninf_ = b4_table_ninf[; + +]b4_parser_tables_define[ + +]b4_parse_error_bmatch([simple\|verbose], +[[#if ]b4_api_PREFIX[DEBUG]b4_tname_if([[ || 1]])[ + // YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + // First, the terminals, then, starting at \a YYNTOKENS, nonterminals. + const char* + const ]b4_parser_class[::yytname_[] = + { + ]b4_tname[ + }; +#endif +]])[ + +#if ]b4_api_PREFIX[DEBUG][ +]b4_integral_parser_table_define([rline], [b4_rline])[ + + void + ]b4_parser_class[::yy_stack_print_ () const + { + *yycdebug_ << "Stack now"; + for (stack_type::const_iterator + i = yystack_.begin (), + i_end = yystack_.end (); + i != i_end; ++i) + *yycdebug_ << ' ' << int (i->state); + *yycdebug_ << '\n'; + } + + void + ]b4_parser_class[::yy_reduce_print_ (int yyrule) const + { + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + // Print the symbols being reduced, and their result. + *yycdebug_ << "Reducing stack by rule " << yyrule - 1 + << " (line " << yylno << "):\n"; + // The symbols being reduced. + for (int yyi = 0; yyi < yynrhs; yyi++) + YY_SYMBOL_PRINT (" $" << yyi + 1 << " =", + ]b4_rhs_data(yynrhs, yyi + 1)[); + } +#endif // ]b4_api_PREFIX[DEBUG + +]b4_token_ctor_if([], [b4_yytranslate_define([cc])])[ +]b4_namespace_close[ +]b4_epilogue[]dnl +b4_output_end + + +m4_popdef([b4_copyright_years])dnl diff --git a/bison/RelWithDebInfo/data/skeletons/lalr1.d b/bison/RelWithDebInfo/data/skeletons/lalr1.d new file mode 100644 index 0000000..9730377 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/lalr1.d @@ -0,0 +1,1326 @@ +# D skeleton for Bison -*- autoconf -*- + +# Copyright (C) 2007-2012, 2019-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[d.m4]) + +b4_header_if([b4_complain([%header/%defines does not make sense in D])]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) + +# Define m4 conditional macros that encode the value +# of the api.push-pull flag. +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Define a macro to be true when api.push-pull has the value "both". +m4_define([b4_both_if],[b4_push_if([b4_pull_if([$1],[$2])],[$2])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + + +# Define a macro to encapsulate the parse state variables. This +# allows them to be defined either in parse() when doing pull parsing, +# or as class instance variable when doing push parsing. +b4_output_begin([b4_parser_file_name]) +b4_copyright([Skeleton implementation for Bison LALR(1) parsers in D], + [2007-2012, 2019-2021])[ +]b4_disclaimer[ +]b4_percent_define_ifdef([package], [module b4_percent_define_get([package]); +])[ +version(D_Version2) { +} else { + static assert(false, "need compiler for D Version 2"); +} + +]b4_user_pre_prologue[ +]b4_user_post_prologue[ +]b4_percent_code_get([[imports]])[ +import std.format; +import std.conv; + +/** + * Handle error message internationalisation. + */ +static if (!is(typeof(YY_))) { + version(YYENABLE_NLS) + { + version(ENABLE_NLS) + { + extern(C) char* dgettext(const char*, const char*); + string YY_(const char* s) + { + return to!string(dgettext("bison-runtime", s)); + } + } + } + static if (!is(typeof(YY_))) + { + pragma(inline, true) + string YY_(string msg) { return msg; } + } +} + +/** + * A Bison parser, automatically generated from ]m4_bpatsubst(b4_file_name, [^"\(.*\)"$], [\1])[. + * + * @@author LALR (1) parser skeleton written by Paolo Bonzini. + * Port to D language was done by Oliver Mangold. + */ + +/** + * Communication interface between the scanner and the Bison-generated + * parser ]b4_parser_class[. + */ +public interface Lexer +{ + /** + * Entry point for the scanner. Returns the token identifier corresponding + * to the next token and prepares to return the semantic value + * ]b4_locations_if([and beginning/ending positions ])[of the token. + * @@return the token identifier corresponding to the next token. */ + Symbol yylex (); + + /** + * Entry point for error reporting. Emits an error + * ]b4_locations_if([referring to the given location ])[in a user-defined way. + *]b4_locations_if([[ + * @@param loc The location of the element to which the + * error message is related]])[ + * @@param s The string for the error message. */ + void yyerror (]b4_locations_if([[const Location loc, ]])[string s); +]b4_parse_error_bmatch([custom], [[ + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + void reportSyntaxError(]b4_parser_class[.Context ctx); +]])[ +} + +]b4_public_types_declare[ + +]b4_locations_if([b4_position_type_if([[ +static assert(__traits(compiles, + (new Position[1])[0]=(new Position[1])[0]), + "struct/class Position must be default-constructible " + "and assignable"); +static assert(__traits(compiles, (new string[1])[0]=(new Position).toString()), + "error: struct/class Position must have toString method"); +]], [[ + /** + * A struct denoting a point in the input.*/ +public struct ]b4_position_type[ { + + /** The column index within the line of input. */ + public int column = 1; + /** The line number within an input file. */ + public int line = 1; + /** The name of the input file. */ + public string filename = null; + + /** + * A string representation of the position. */ + public string toString() const { + if (filename) + return format("%s:%d.%d", filename, line, column); + else + return format("%d.%d", line, column); + } +} +]])b4_location_type_if([[ +static assert(__traits(compiles, (new Location((new Position[1])[0]))) && + __traits(compiles, (new Location((new Position[1])[0], (new Position[1])[0]))), + "error: struct/class Location must have " + "default constructor and constructors this(Position) and this(Position, Position)."); +static assert(__traits(compiles, (new Location[1])[0].begin=(new Location[1])[0].begin) && + __traits(compiles, (new Location[1])[0].begin=(new Location[1])[0].end) && + __traits(compiles, (new Location[1])[0].end=(new Location[1])[0].begin) && + __traits(compiles, (new Location[1])[0].end=(new Location[1])[0].end), + "error: struct/class Location must have assignment-compatible " + "members/properties 'begin' and 'end'."); +static assert(__traits(compiles, (new string[1])[0]=(new Location[1])[0].toString()), + "error: struct/class Location must have toString method."); + +private immutable bool yy_location_is_class = !__traits(compiles, *(new Location((new Position[1])[0])));]], [[ +/** + * A struct defining a pair of positions. Positions, defined by the + * Position struct, denote a point in the input. + * Locations represent a part of the input through the beginning + * and ending positions. */ +public struct ]b4_location_type[ +{ + /** The first, inclusive, position in the range. */ + public Position begin; + + /** The first position beyond the range. */ + public Position end; + + /** + * Create a Location denoting an empty range located at + * a given point. + * @@param loc The position at which the range is anchored. */ + public this(Position loc) + { + this.begin = this.end = loc; + } + + /** + * Create a Location from the endpoints of the range. + * @@param begin The first position included in the range. + * @@param end The first position beyond the range. */ + public this(Position begin, Position end) + { + this.begin = begin; + this.end = end; + } + + /** + * Reset initial location to final location. + */ + public void step() + { + this.begin = this.end; + } + + /** + * A representation of the location. + */ + public string toString() const + { + auto end_col = 0 < end.column ? end.column - 1 : 0; + auto res = begin.toString (); + if (end.filename && begin.filename != end.filename) + res ~= "-" ~ format("%s:%d.%d", end.filename, end.line, end_col); + else if (begin.line < end.line) + res ~= "-" ~ format("%d.%d", end.line, end_col); + else if (begin.column < end_col) + res ~= "-" ~ format("%d", end_col); + return res; + } +} + +private immutable bool yy_location_is_class = false; + +]])])[]b4_value_type_setup[]m4_ifdef([b4_user_union_members], [private union YYSemanticType +{ +b4_user_union_members +};], +[m4_if(b4_tag_seen_flag, 0, +[[private alias int YYSemanticType;]])])[ +]b4_token_enums[ +]b4_parser_class_declaration[ +{ + ]b4_identification[ + +]b4_declare_symbol_enum[ + +]b4_locations_if([[ + private final Location yylloc_from_stack (ref YYStack rhs, int n) + { + static if (yy_location_is_class) { + if (n > 0) + return new Location (rhs.locationAt (n-1).begin, rhs.locationAt (0).end); + else + return new Location (rhs.locationAt (0).end); + } else { + if (n > 0) + return Location (rhs.locationAt (n-1).begin, rhs.locationAt (0).end); + else + return Location (rhs.locationAt (0).end); + } + }]])[ + +]b4_lexer_if([[ private class YYLexer implements Lexer { +]b4_percent_code_get([[lexer]])[ + } +]])[ + /** The object doing lexical analysis for us. */ + private Lexer yylexer; + +]b4_parse_param_vars[ + +]b4_lexer_if([[ + /** + * Instantiate the Bison-generated parser. + */ + public this] (b4_parse_param_decl([b4_lex_param_decl])[) { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new int[]; + this.yylacEstablished = false;]])[ + this (new YYLexer(]b4_lex_param_call[)); + } +]])[ + + /** + * Instantiate the Bison-generated parser. + * @@param yylexer The scanner that will supply tokens to the parser. + */ + ]b4_lexer_if([[protected]], [[public]]) [this (]b4_parse_param_decl([[Lexer yylexer]])[) { + this.yylexer = yylexer;]b4_parse_trace_if([[ + this.yyDebugStream = stderr;]])[ +]b4_parse_param_cons[ + } +]b4_parse_trace_if([[ + import std.stdio; + private File yyDebugStream; + + /** + * The File on which the debugging output is + * printed. + */ + public File getDebugStream () { return yyDebugStream; } + + /** + * Set the std.File on which the debug output is printed. + * @@param s The stream that is used for debugging output. + */ + public final void setDebugStream(File s) { yyDebugStream = s; } + + private int yydebug = 0; + + /** + * Answer the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + */ + public final int getDebugLevel() { return yydebug; } + + /** + * Set the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + * @@param level The verbosity level for debugging output. + */ + public final void setDebugLevel(int level) { yydebug = level; } + + protected final void yycdebug (string s) { + if (0 < yydebug) + yyDebugStream.write (s); + } + + protected final void yycdebugln (string s) { + if (0 < yydebug) + yyDebugStream.writeln (s); + } +]])[ + private final ]b4_parser_class[.Symbol yylex () { + return yylexer.yylex (); + } + + protected final void yyerror (]b4_locations_if([[const Location loc, ]])[string s) { + yylexer.yyerror (]b4_locations_if([loc, ])[s); + } + + /** + * The number of syntax errors so far. + */ + public int numberOfErrors() const { return yynerrs_; } + private int yynerrs_ = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return success (true). */ + public static immutable int YYACCEPT = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return failure (false). */ + public static immutable int YYABORT = 1; +]b4_push_if([ + /** + * Returned by a Bison action in order to request a new token. + */ + public static immutable int YYPUSH_MORE = 4;])[ + + /** + * Returned by a Bison action in order to start error recovery without + * printing an error message. */ + public static immutable int YYERROR = 2; + + // Internal return codes that are not supported for user semantic + // actions. + private static immutable int YYERRLAB = 3; + private static immutable int YYNEWSTATE = 4; + private static immutable int YYDEFAULT = 5; + private static immutable int YYREDUCE = 6; + private static immutable int YYERRLAB1 = 7; + private static immutable int YYRETURN = 8; +]b4_push_if([[ private static immutable int YYGETTOKEN = 9; /* Signify that a new token is expected when doing push-parsing. */]])[ + +]b4_locations_if([ + private static immutable YYSemanticType yy_semantic_null;])[ + private int yyerrstatus_ = 0; + + private void yyerrok() + { + yyerrstatus_ = 0; + } + + // Lookahead symbol kind. + SymbolKind yytoken = ]b4_symbol(empty, kind)[; + + /* State. */ + int yyn = 0; + int yylen = 0; + int yystate = 0; + + YYStack yystack; + + int label = YYNEWSTATE; + + /* Error handling. */ +]b4_locations_if([[ + /// The location where the error started. + Location yyerrloc; + + /// Location of the lookahead. + Location yylloc; + + /// @@$. + Location yyloc;]])[ + + /// Semantic value of the lookahead. + Value yylval; + + /** + * Whether error recovery is being done. In this state, the parser + * reads token until it reaches a known state, and then restarts normal + * operation. */ + public final bool recovering () + { + return yyerrstatus_ == 0; + } + + /** Compute post-reduction state. + * @@param yystate the current state + * @@param yysym the nonterminal to push on the stack + */ + private int yyLRGotoState(int yystate, int yysym) { + int yyr = yypgoto_[yysym - yyntokens_] + yystate; + if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - yyntokens_]; + } + + private int yyaction (int yyn, ref YYStack yystack, int yylen) + { + Value yyval;]b4_locations_if([[ + Location yyloc = yylloc_from_stack (yystack, yylen);]])[ + + /* If YYLEN is nonzero, implement the default value of the action: + `$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. */ + if (yylen > 0) + yyval = yystack.valueAt (yylen - 1); + else + yyval = yystack.valueAt (0); + +]b4_parse_trace_if([[ + yy_reduce_print (yyn, yystack);]])[ + + switch (yyn) + { +]b4_user_actions[ + default: break; + } + +]b4_parse_trace_if([[ + yy_symbol_print ("-> $$ =", to!SymbolKind (yyr1_[yyn]), yyval]b4_locations_if([, yyloc])[);]])[ + + yystack.pop (yylen); + yylen = 0; + + /* Shift the result of the reduction. */ + int yystate = yyLRGotoState(yystack.stateAt(0), yyr1_[yyn]); + yystack.push (yystate, yyval]b4_locations_if([, yyloc])[); + return YYNEWSTATE; + } + +]b4_parse_trace_if([[ + /*--------------------------------. + | Print this symbol on YYOUTPUT. | + `--------------------------------*/ + + private final void yy_symbol_print (string s, SymbolKind yykind, + ref Value yyval]b4_locations_if([, ref Location yyloc])[) + { + if (0 < yydebug) + { + File yyo = yyDebugStream; + yyo.write(s); + yyo.write(yykind < yyntokens_ ? " token " : " nterm "); + yyo.write(format("%s", yykind)); + yyo.write(" ("]b4_locations_if([ ~ yyloc.toString() ~ ": "])[); + ]b4_symbol_actions([printer])[ + yyo.write(")\n"); + } + } +]])[ +]b4_symbol_type_define[ +]b4_push_if([[ + /** + * Push Parse input from external lexer + * + * @@param yyla current Symbol + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int pushParse(Symbol yyla)]], [[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public bool parse()]])[ + {]b4_push_if([[ + if (!this.pushParseInitialized) + { + pushParseInitialize(); + yyerrstatus_ = 0; + } + else + label = YYGETTOKEN; + + bool push_token_consumed = true; +]], [[ bool yyresult;]b4_lac_if([[ + // Discard the LAC context in case there still is one left from a + // previous invocation. + yylacDiscard("init");]])[]b4_parse_trace_if([[ + + yycdebugln ("Starting parse");]])[ + yyerrstatus_ = 0; + +]m4_ifdef([b4_initial_action], [ +m4_pushdef([b4_at_dollar], [yylloc])dnl +m4_pushdef([b4_dollar_dollar], [yylval])dnl + /* User initialization code. */ + b4_user_initial_action +m4_popdef([b4_dollar_dollar])dnl +m4_popdef([b4_at_dollar])])dnl + + [ /* Initialize the stack. */ + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[); + + label = YYNEWSTATE;]])[ + for (;;) + final switch (label) + { + /* New state. Unlike in the C/C++ skeletons, the state is already + pushed when we come here. */ + case YYNEWSTATE:]b4_parse_trace_if([[ + yycdebugln (format("Entering state %d", yystate)); + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + + /* Accept? */ + if (yystate == yyfinal_)]b4_push_if([[ + { + label = YYACCEPT; + break; + }]], [[ + return true;]])[ + + /* Take a decision. First try without lookahead. */ + yyn = yypact_[yystate]; + if (yyPactValueIsDefault(yyn)) + { + label = YYDEFAULT; + break; + }]b4_push_if([[ + goto case; + + case YYGETTOKEN:]])[ + + /* Read a lookahead token. */ + if (yytoken == ]b4_symbol(empty, kind)[) + {]b4_push_if([[ + if (!push_token_consumed) + return YYPUSH_MORE;]])[]b4_parse_trace_if([[ + yycdebugln ("Reading a token");]])[]b4_push_if([[ + yytoken = yyla.token; + yylval = yyla.value;]b4_locations_if([[ + yylloc = yyla.location;]])[ + push_token_consumed = false;]], [[ + Symbol yysymbol = yylex(); + yytoken = yysymbol.token(); + yylval = yysymbol.value();]b4_locations_if([[ + yylloc = yysymbol.location();]])[]])[ + } + + /* Token already converted to internal form. */]b4_parse_trace_if([[ + yy_symbol_print ("Next token is", yytoken, yylval]b4_locations_if([, yylloc])[);]])[ + + if (yytoken == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yytoken = ]b4_symbol(undef, kind)[;]b4_locations_if([[ + yyerrloc = yylloc;]])[ + label = YYERRLAB1; + } + else + { + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yytoken) {]b4_lac_if([[ + if (!yylacEstablish(yystack, yytoken)) + label = YYERRLAB; + else]])[ + label = YYDEFAULT; + } + /* <= 0 means reduce or error. */ + else if ((yyn = yytable_[yyn]) <= 0) + { + if (yyTableValueIsError(yyn)) + label = YYERRLAB;]b4_lac_if([[ + else if (!yylacEstablish(yystack, yytoken)) + label = YYERRLAB;]])[ + else + { + yyn = -yyn; + label = YYREDUCE; + } + } + else + { + /* Shift the lookahead token. */]b4_parse_trace_if([[ + yy_symbol_print ("Shifting", yytoken, yylval]b4_locations_if([, yylloc])[);]])[ + + /* Discard the token being shifted. */ + yytoken = ]b4_symbol(empty, kind)[; + + /* Count tokens shifted since error; after three, turn off error + * status. */ + if (yyerrstatus_ > 0) + --yyerrstatus_; + + yystate = yyn; + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[);]b4_lac_if([[ + yylacDiscard("shift");]])[ + label = YYNEWSTATE; + } + } + break; + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + case YYDEFAULT: + yyn = yydefact_[yystate]; + if (yyn == 0) + label = YYERRLAB; + else + label = YYREDUCE; + break; + + /*-----------------------------. + | yyreduce -- Do a reduction. | + `-----------------------------*/ + case YYREDUCE: + yylen = yyr2_[yyn]; + label = yyaction (yyn, yystack, yylen); + yystate = yystack.stateAt (0); + break; + + /*--------------------------------------. + | yyerrlab -- here on detecting error. | + `--------------------------------------*/ + case YYERRLAB: + /* If not already recovering from an error, report this error. */ + if (yyerrstatus_ == 0) + { + ++yynerrs_; + yyreportSyntaxError(new Context(]b4_lac_if([[this, ]])[yystack, yytoken]b4_locations_if([[, yylloc]])[)); + } +]b4_locations_if([ + yyerrloc = yylloc;])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + * error, discard it. */ + + /* Return failure if at end of input. */ + if (yytoken == ]b4_symbol(eof, [kind])[)]b4_push_if([[ + { + label = YYABORT; + break; + }]], [[ + return false;]])[ + else + yytoken = ]b4_symbol(empty, kind)[; + } + + /* Else will try to reuse lookahead token after shifting the error + * token. */ + label = YYERRLAB1; + break; + + /*-------------------------------------------------. + | errorlab -- error raised explicitly by YYERROR. | + `-------------------------------------------------*/ + case YYERROR:]b4_locations_if([ + yyerrloc = yystack.locationAt (yylen - 1);])[ + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + yystack.pop (yylen); + yylen = 0; + yystate = yystack.stateAt (0); + label = YYERRLAB1; + break; + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + case YYERRLAB1: + yyerrstatus_ = 3; /* Each real token shifted decrements this. */ + + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[yystate]; + if (!yyPactValueIsDefault(yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= yylast_ && yycheck_[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yystack.height == 1)]b4_push_if([[ + { + label = YYABORT; + break; + }]],[[ + return false;]])[ + +]b4_locations_if([ yyerrloc = yystack.locationAt (0);])[ + yystack.pop (); + yystate = yystack.stateAt (0);]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + }]b4_push_if([[ + if (label == YYABORT) + /* Leave the switch. */ + break; +]])[ +]b4_locations_if([ + /* Muck with the stack to setup for yylloc. */ + yystack.push (0, yy_semantic_null, yylloc); + yystack.push (0, yy_semantic_null, yyerrloc); + yyloc = yylloc_from_stack (yystack, 2); + yystack.pop (2);])[ + + /* Shift the error token. */]b4_lac_if([[ + yylacDiscard("error recovery");]])[]b4_parse_trace_if([[ + yy_symbol_print ("Shifting", to!SymbolKind (yystos_[yyn]), yylval]b4_locations_if([, yyloc])[);]])[ + yystate = yyn; + yystack.push (yyn, yylval]b4_locations_if([, yyloc])[); + label = YYNEWSTATE; + break; + + /* Accept. */ + case YYACCEPT:]b4_push_if([[ + this.pushParseInitialized = false;]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return YYACCEPT;]], [[ + yyresult = true; + label = YYRETURN; + break;]])[ + + /* Abort. */ + case YYABORT:]b4_push_if([[ + this.pushParseInitialized = false;]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return YYABORT;]], [[ + yyresult = false; + label = YYRETURN; + break;]])[ +]b4_push_if([[]], [[ ][case YYRETURN:]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + return yyresult;]])[ + } + assert(0); + } + +]b4_push_if([[ + bool pushParseInitialized = false; + + /** + * (Re-)Initialize the state of the push parser. + */ + public void pushParseInitialize() + { + + /* Lookahead and lookahead in internal form. */ + this.yytoken = ]b4_symbol(empty, kind)[; + + /* State. */ + this.yyn = 0; + this.yylen = 0; + this.yystate = 0; + destroy(this.yystack); + this.label = YYNEWSTATE; +]b4_lac_if([[ + destroy(this.yylacStack); + this.yylacEstablished = false;]])[ + + /* Error handling. */ + this.yynerrs_ = 0; +]b4_locations_if([ + /* The location where the error started. */ + this.yyerrloc = Location(Position(), Position()); + this.yylloc = Location(Position(), Position());])[ + + /* Semantic value of the lookahead. */ + //destroy(this.yylval); + + /* Initialize the stack. */ + yystack.push(this.yystate, this.yylval]b4_locations_if([, this.yylloc])[); + + this.pushParseInitialized = true; + }]])[]b4_both_if([[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * This version of parse() is defined only when api.push-push=both. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + bool parse() + { + int status = 0; + do { + status = this.pushParse(yylex()); + } while (status == YYPUSH_MORE); + return status == YYACCEPT; + }]])[ + + // Generate an error message. + private final void yyreportSyntaxError(Context yyctx) + {]b4_parse_error_bmatch( +[custom], [[ + yylexer.reportSyntaxError(yyctx);]], +[detailed], [[ + if (yyctx.getToken() != ]b4_symbol(empty, kind)[) + { + // FIXME: This method of building the message is not compatible + // with internationalization. + immutable int argmax = 5; + SymbolKind[] yyarg = new SymbolKind[argmax]; + int yycount = yysyntaxErrorArguments(yyctx, yyarg, argmax); + string res, yyformat; + switch (yycount) + { + case 1: + yyformat = YY_("syntax error, unexpected %s"); + res = format(yyformat, yyarg[0]); + break; + case 2: + yyformat = YY_("syntax error, unexpected %s, expecting %s"); + res = format(yyformat, yyarg[0], yyarg[1]); + break; + case 3: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2]); + break; + case 4: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2], yyarg[3]); + break; + case 5: + yyformat = YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); + res = format(yyformat, yyarg[0], yyarg[1], yyarg[2], yyarg[3], yyarg[4]); + break; + default: + res = YY_("syntax error"); + break; + } + yyerror(]b4_locations_if([yyctx.getLocation(), ])[res); + }]], +[[simple]], [[ + yyerror(]b4_locations_if([yyctx.getLocation(), ])[YY_("syntax error"));]])[ + } + +]b4_parse_error_bmatch( +[detailed], [[ + private int yysyntaxErrorArguments(Context yyctx, SymbolKind[] yyarg, int yyargn) { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, + then the only way this function was invoked is if the + default action is an error action. In that case, don't + check for expected tokens because there are none. + - The only way there can be no lookahead present (in tok) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this + state is a consistent state with a default action. There + might have been a previous inconsistent state, consistent + state with a non-default action, or user semantic action + that manipulated yychar. (However, yychar is currently out + of scope during semantic actions.) + - Of course, the expected token list depends on states to + have correct lookahead information, and it depends on the + parser not to perform extra reductions after fetching a + lookahead from the scanner and before detecting a syntax + error. Thus, state merging (from LALR or IELR) and default + reductions corrupt the expected token list. However, the + list is correct for canonical LR with one exception: it + will still contain any token that will not be accepted due + to an error action in a later state. + */ + int yycount = 0; + if (yyctx.getToken() != ]b4_symbol(empty, kind)[) + { + if (yyarg !is null) + yyarg[yycount] = yyctx.getToken(); + yycount += 1; + yycount += yyctx.getExpectedTokens(yyarg, 1, yyargn); + } + return yycount; + } +]])[ + + + /** + * Information needed to get the list of expected tokens and to forge + * a syntax error diagnostic. + */ + public static final class Context + {]b4_lac_if([[ + private ]b4_parser_class[ yyparser;]])[ + private const(YYStack) yystack; + private SymbolKind yytoken;]b4_locations_if([[ + private const(Location) yylocation;]])[ + + this(]b4_lac_if([[]b4_parser_class[ parser, ]])[YYStack stack, SymbolKind kind]b4_locations_if([[, Location loc]])[) + {]b4_lac_if([[ + yyparser = parser;]])[ + yystack = stack; + yytoken = kind;]b4_locations_if([[ + yylocation = loc;]])[ + } + + final SymbolKind getToken() const + { + return yytoken; + }]b4_locations_if([[ + + final const(Location) getLocation() const + { + return yylocation; + }]])[ + /** + * Put in YYARG at most YYARGN of the expected tokens given the + * current YYCTX, and return the number of tokens stored in YYARG. If + * YYARG is null, return the number of expected tokens (guaranteed to + * be less than YYNTOKENS). + */ + int getExpectedTokens(SymbolKind[] yyarg, int yyargn)]b4_lac_if([[]], [[ const]])[ + { + return getExpectedTokens(yyarg, 0, yyargn); + } + + int getExpectedTokens(SymbolKind[] yyarg, int yyoffset, int yyargn)]b4_lac_if([[]], [[ const]])[ + { + int yycount = yyoffset;]b4_lac_if([b4_parse_trace_if([[ + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + + if (!yyparser.yylacEstablished) + yyparser.yylacCheck(yystack, yytoken); +]])[ + for (int yyx = 0; yyx < yyntokens_; ++yyx) + { + SymbolKind yysym = SymbolKind(yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser.yylacCheck(yystack, yysym)) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + int yyn = yypact_[this.yystack.stateAt(0)]; + if (!yyPactValueIsDefault(yyn)) + { + /* Start YYX at -YYN if negative to avoid negative + indexes in YYCHECK. In other words, skip the first + -YYN actions for this state because they are default + actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = yylast_ - yyn + 1; + int yyxend = yychecklim < yyntokens_ ? yychecklim : yyntokens_; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yyTableValueIsError(yytable_[yyx + yyn])) + { + if (yyarg is null) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = SymbolKind(yyx); + } + }]])[ + if (yyarg !is null && yycount == yyoffset && yyoffset < yyargn) + yyarg[yyoffset] = ]b4_symbol(empty, kind)[; + return yycount - yyoffset; + } + } + +]b4_lac_if([[ + /** Check the lookahead yytoken. + * \returns true iff the token will be eventually shifted. + */ + bool yylacCheck(const YYStack yystack, SymbolKind yytoken) + { + // Logically, the yylacStack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + destroy(yylacStack); + // Reduce until we encounter a shift and thereby accept the token. +]b4_parse_trace_if([[ + yycdebug("LAC: checking lookahead " ~ format("%s", yytoken) ~ ":");]])[ + int lacTop = 0; + while (true) + { + int topState = (yylacStack.length == 0 + ? yystack.stateAt(lacTop) + : yylacStack[$ - 1]); + int yyrule = yypact_[topState]; + if (yyPactValueIsDefault(yyrule) + || (yyrule += yytoken) < 0 || yylast_ < yyrule + || yycheck_[yyrule] != yytoken) + { + // Use the default action. + yyrule = yydefact_[+topState]; + if (yyrule == 0) + {]b4_parse_trace_if([[ + yycdebugln(" Err");]])[ + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yyTableValueIsError(yyrule)) + {]b4_parse_trace_if([[ + yycdebugln(" Err");]])[ + return false; + } + if (0 < yyrule) + {]b4_parse_trace_if([[ + yycdebugln(" S" ~ to!string(yyrule));]])[ + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. +]b4_parse_trace_if([[ + yycdebug(" R" ~ to!string(yyrule - 1));]])[ + // Pop the corresponding number of values from the stack. + { + int yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + int lacSize = cast (int) yylacStack.length; + if (yylen < lacSize) + { + yylacStack.length -= yylen; + yylen = 0; + } + else if (lacSize != 0) + { + destroy(yylacStack); + yylen -= lacSize; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lacTop. + lacTop += yylen; + } + // Keep topState in sync with the updated stack. + topState = (yylacStack.length == 0 + ? yystack.stateAt(lacTop) + : yylacStack[$ - 1]); + // Push the resulting state of the reduction. + int state = yyLRGotoState(topState, yyr1_[yyrule]);]b4_parse_trace_if([[ + yycdebug(" G" ~ to!string(state));]])[ + yylacStack.length++; + yylacStack[$ - 1] = state; + } + } + + /** Establish the initial context if no initial context currently exists. + * \returns true iff the token will be eventually shifted. + */ + bool yylacEstablish(YYStack yystack, SymbolKind yytoken) + { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yylacEstablish should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yylacEstablish is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yylacEstablished) + return true; + else + {]b4_parse_trace_if([[ + yycdebugln("LAC: initial context established for " ~ format("%s", yytoken));]])[ + yylacEstablished = true; + return yylacCheck(yystack, yytoken); + } + } + + /** Discard any previous initial lookahead context because of event. + * \param event the event which caused the lookahead to be discarded. + * Only used for debbuging output. */ + void yylacDiscard(string event) + { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yylacEstablished) + {]b4_parse_trace_if([[ + yycdebugln("LAC: initial context discarded due to " ~ event);]])[ + yylacEstablished = false; + } + } + + /** The stack for LAC. + * Logically, the yylacStack's lifetime is confined to the function + * yylacCheck. We just store it as a member of this class to hold + * on to the memory and to avoid frequent reallocations. + */ + int[] yylacStack; + /** Whether an initial LAC context was established. */ + bool yylacEstablished; +]])[ + + /** + * Whether the given yypact_ value indicates a defaulted state. + * @@param yyvalue the value to check + */ + private static bool yyPactValueIsDefault(int yyvalue) + { + return yyvalue == yypact_ninf_; + } + + /** + * Whether the given yytable_ value indicates a syntax error. + * @@param yyvalue the value to check + */ + private static bool yyTableValueIsError(int yyvalue) + { + return yyvalue == yytable_ninf_; + } + + /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ + private static immutable ]b4_int_type_for([b4_pact])[ yypact_ninf_ = ]b4_pact_ninf[; + + /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If + positive, shift that token. If negative, reduce the rule which + number is the opposite. If YYTABLE_NINF_, syntax error. */ + private static immutable ]b4_int_type_for([b4_table])[ yytable_ninf_ = ]b4_table_ninf[; + + ]b4_parser_tables_define[ + +]b4_parse_trace_if([[ + /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ + private static immutable ]b4_int_type_for([b4_rline])[[] yyrline_ = + @{ + ]b4_rline[ + @}; + + // Report on the debug stream that the rule yyrule is going to be reduced. + private final void yy_reduce_print (int yyrule, ref YYStack yystack) + { + if (yydebug == 0) + return; + + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + /* Print the symbols being reduced, and their result. */ + yycdebugln (format("Reducing stack by rule %d (line %d):", + yyrule - 1, yylno)); + + /* The symbols being reduced. */ + for (int yyi = 0; yyi < yynrhs; yyi++) + yy_symbol_print (format(" $%d =", yyi + 1), + to!SymbolKind (yystos_[yystack.stateAt(yynrhs - (yyi + 1))]), + ]b4_rhs_value(yynrhs, yyi + 1)b4_locations_if([, + b4_rhs_location(yynrhs, yyi + 1)])[); + } +]])[ + + private static auto yytranslate_ (int t) + { +]b4_api_token_raw_if( +[[ return SymbolKind(t);]], +[[ /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ + immutable ]b4_int_type_for([b4_translate])[[] translate_table = + @{ + ]b4_translate[ + @}; + + // Last valid token kind. + immutable int code_max = ]b4_code_max[; + + if (t <= 0) + return ]b4_symbol(eof, kind)[; + else if (t <= code_max) + return SymbolKind(translate_table[t]); + else + return ]b4_symbol(undef, kind)[;]])[ + } + + private static immutable int yylast_ = ]b4_last[; + private static immutable int yynnts_ = ]b4_nterms_number[; + private static immutable int yyfinal_ = ]b4_final_state_number[; + private static immutable int yyntokens_ = ]b4_tokens_number[; + + private final struct YYStackElement { + int state; + Value value;]b4_locations_if( + b4_location_type[[] location;])[ + } + + private final struct YYStack { + private YYStackElement[] stack = []; + + public final ulong height() + { + return stack.length; + } + + public final void push (int state, Value value]dnl + b4_locations_if([, ref Location loc])[) + { + stack ~= YYStackElement(state, value]b4_locations_if([, loc])[); + } + + public final void pop () + { + pop (1); + } + + public final void pop (int num) + { + stack.length -= num; + } + + public final int stateAt (int i) const + { + return stack[$-i-1].state; + } + +]b4_locations_if([[ + public final ref Location locationAt (int i) + { + return stack[$-i-1].location; + }]])[ + + public final ref Value valueAt (int i) + { + return stack[$-i-1].value; + } +]b4_parse_trace_if([[ + // Print the state stack on the debug stream. + public final void print (File stream) + { + stream.write ("Stack now"); + for (int i = 0; i < stack.length; i++) + stream.write (" ", stack[i].state); + stream.writeln (); + }]])[ + } +]b4_percent_code_get[ +} +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/RelWithDebInfo/data/skeletons/lalr1.java b/bison/RelWithDebInfo/data/skeletons/lalr1.java new file mode 100644 index 0000000..1bbecca --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/lalr1.java @@ -0,0 +1,1303 @@ +# Java skeleton for Bison -*- java -*- + +# Copyright (C) 2007-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[java.m4]) + +b4_header_if([b4_complain([%header/%defines does not make sense in Java])]) + +m4_define([b4_symbol_no_destructor_assert], +[b4_symbol_if([$1], [has_destructor], + [b4_complain_at(m4_unquote(b4_symbol([$1], [destructor_loc])), + [%destructor does not make sense in Java])])]) +b4_symbol_foreach([b4_symbol_no_destructor_assert]) + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) + +# Define m4 conditional macros that encode the value +# of the api.push-pull flag. +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Define a macro to be true when api.push-pull has the value "both". +m4_define([b4_both_if],[b4_push_if([b4_pull_if([$1],[$2])],[$2])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + +# Define a macro to encapsulate the parse state variables. This +# allows them to be defined either in parse() when doing pull parsing, +# or as class instance variable when doing push parsing. +m4_define([b4_define_state], +[[ + /* Lookahead token kind. */ + int yychar = YYEMPTY_; + /* Lookahead symbol kind. */ + SymbolKind yytoken = null; + + /* State. */ + int yyn = 0; + int yylen = 0; + int yystate = 0; + YYStack yystack = new YYStack (); + int label = YYNEWSTATE; + +]b4_locations_if([[ + /* The location where the error started. */ + ]b4_location_type[ yyerrloc = null; + + /* Location. */ + ]b4_location_type[ yylloc = new ]b4_location_type[ (null, null);]])[ + + /* Semantic value of the lookahead. */ + ]b4_yystype[ yylval = null; +]]) + +# parse.lac +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + + +## ------------- ## +## Parser File. ## +## ------------- ## + +b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Skeleton implementation for Bison LALR(1) parsers in Java], + [2007-2015, 2018-2021])[ +]b4_disclaimer[ +]b4_percent_define_ifdef([api.package], [package b4_percent_define_get([api.package]);[ +]])[ +]b4_user_pre_prologue[ +]b4_user_post_prologue[ +import java.text.MessageFormat; +import java.util.ArrayList; +]b4_percent_code_get([[imports]])[ +/** + * A Bison parser, automatically generated from ]m4_bpatsubst(b4_file_name, [^"\(.*\)"$], [\1])[. + * + * @@author LALR (1) parser skeleton written by Paolo Bonzini. + */ +]b4_parser_class_declaration[ +{ +]b4_identification[ +][ +]b4_parse_error_bmatch( + [detailed\|verbose], [[ + /** + * True if verbose error messages are enabled. + */ + private boolean yyErrorVerbose = true; + + /** + * Whether verbose error messages are enabled. + */ + public final boolean getErrorVerbose() { return yyErrorVerbose; } + + /** + * Set the verbosity of error messages. + * @@param verbose True to request verbose error messages. + */ + public final void setErrorVerbose(boolean verbose) + { yyErrorVerbose = verbose; } +]])[ + +]b4_locations_if([[ + /** + * A class defining a pair of positions. Positions, defined by the + * ]b4_position_type[ class, denote a point in the input. + * Locations represent a part of the input through the beginning + * and ending positions. + */ + public static class ]b4_location_type[ { + /** + * The first, inclusive, position in the range. + */ + public ]b4_position_type[ begin; + + /** + * The first position beyond the range. + */ + public ]b4_position_type[ end; + + /** + * Create a ]b4_location_type[ denoting an empty range located at + * a given point. + * @@param loc The position at which the range is anchored. + */ + public ]b4_location_type[ (]b4_position_type[ loc) { + this.begin = this.end = loc; + } + + /** + * Create a ]b4_location_type[ from the endpoints of the range. + * @@param begin The first position included in the range. + * @@param end The first position beyond the range. + */ + public ]b4_location_type[ (]b4_position_type[ begin, ]b4_position_type[ end) { + this.begin = begin; + this.end = end; + } + + /** + * Print a representation of the location. For this to be correct, + * ]b4_position_type[ should override the equals + * method. + */ + public String toString() { + if (begin.equals (end)) + return begin.toString(); + else + return begin.toString() + "-" + end.toString(); + } + } + + private ]b4_location_type[ yylloc(YYStack rhs, int n) + { + if (0 < n) + return new ]b4_location_type[(rhs.locationAt(n-1).begin, rhs.locationAt(0).end); + else + return new ]b4_location_type[(rhs.locationAt(0).end); + }]])[ + +]b4_declare_symbol_enum[ + + /** + * Communication interface between the scanner and the Bison-generated + * parser ]b4_parser_class[. + */ + public interface Lexer { +]b4_token_enums[ + /** Deprecated, use ]b4_symbol(eof, id)[ instead. */ + public static final int EOF = ]b4_symbol(eof, id)[; +]b4_pull_if([b4_locations_if([[ + /** + * Method to retrieve the beginning position of the last scanned token. + * @@return the position at which the last scanned token starts. + */ + ]b4_position_type[ getStartPos(); + + /** + * Method to retrieve the ending position of the last scanned token. + * @@return the first position beyond the last scanned token. + */ + ]b4_position_type[ getEndPos();]])[ + + /** + * Method to retrieve the semantic value of the last scanned token. + * @@return the semantic value of the last scanned token. + */ + ]b4_yystype[ getLVal(); + + /** + * Entry point for the scanner. Returns the token identifier corresponding + * to the next token and prepares to return the semantic value + * ]b4_locations_if([and beginning/ending positions ])[of the token. + * @@return the token identifier corresponding to the next token. + */ + int yylex()]b4_maybe_throws([b4_lex_throws])[; +]])[ + /** + * Emit an error]b4_locations_if([ referring to the given location])[in a user-defined way. + * + *]b4_locations_if([[ @@param loc The location of the element to which the + * error message is related.]])[ + * @@param msg The string for the error message. + */ + void yyerror(]b4_locations_if([b4_location_type[ loc, ]])[String msg); + +]b4_parse_error_bmatch( + [custom], [[ + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + void reportSyntaxError(Context ctx); +]])[ + } + +]b4_lexer_if([[ + private class YYLexer implements Lexer { +]b4_percent_code_get([[lexer]])[ + } + +]])[ + /** + * The object doing lexical analysis for us. + */ + private Lexer yylexer; + +]b4_parse_param_vars[ + +]b4_lexer_if([[ + /** + * Instantiates the Bison-generated parser. + */ + public ]b4_parser_class[(]b4_parse_param_decl([b4_lex_param_decl])[)]b4_maybe_throws([b4_init_throws])[ + { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.yylexer = new YYLexer(]b4_lex_param_call[); +]b4_parse_param_cons[ + } +]])[ + + /** + * Instantiates the Bison-generated parser. + * @@param yylexer The scanner that will supply tokens to the parser. + */ + ]b4_lexer_if([[protected]], [[public]]) b4_parser_class[(]b4_parse_param_decl([[Lexer yylexer]])[)]b4_maybe_throws([b4_init_throws])[ + { +]b4_percent_code_get([[init]])[]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.yylexer = yylexer; +]b4_parse_param_cons[ + } + +]b4_parse_trace_if([[ + private java.io.PrintStream yyDebugStream = System.err; + + /** + * The PrintStream on which the debugging output is printed. + */ + public final java.io.PrintStream getDebugStream() { return yyDebugStream; } + + /** + * Set the PrintStream on which the debug output is printed. + * @@param s The stream that is used for debugging output. + */ + public final void setDebugStream(java.io.PrintStream s) { yyDebugStream = s; } + + private int yydebug = 0; + + /** + * Answer the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + */ + public final int getDebugLevel() { return yydebug; } + + /** + * Set the verbosity of the debugging output; 0 means that all kinds of + * output from the parser are suppressed. + * @@param level The verbosity level for debugging output. + */ + public final void setDebugLevel(int level) { yydebug = level; } +]])[ + + private int yynerrs = 0; + + /** + * The number of syntax errors so far. + */ + public final int getNumberOfErrors() { return yynerrs; } + + /** + * Print an error message via the lexer. + *]b4_locations_if([[ Use a null location.]])[ + * @@param msg The error message. + */ + public final void yyerror(String msg) { + yylexer.yyerror(]b4_locations_if([[(]b4_location_type[)null, ]])[msg); + } +]b4_locations_if([[ + /** + * Print an error message via the lexer. + * @@param loc The location associated with the message. + * @@param msg The error message. + */ + public final void yyerror(]b4_location_type[ loc, String msg) { + yylexer.yyerror(loc, msg); + } + + /** + * Print an error message via the lexer. + * @@param pos The position associated with the message. + * @@param msg The error message. + */ + public final void yyerror(]b4_position_type[ pos, String msg) { + yylexer.yyerror(new ]b4_location_type[ (pos), msg); + }]])[ +]b4_parse_trace_if([[ + protected final void yycdebugNnl(String s) { + if (0 < yydebug) + yyDebugStream.print(s); + } + + protected final void yycdebug(String s) { + if (0 < yydebug) + yyDebugStream.println(s); + }]])[ + + private final class YYStack { + private int[] stateStack = new int[16];]b4_locations_if([[ + private ]b4_location_type[[] locStack = new ]b4_location_type[[16];]])[ + private ]b4_yystype[[] valueStack = new ]b4_yystype[[16]; + + public int size = 16; + public int height = -1; + + public final void push(int state, ]b4_yystype[ value]b4_locations_if([, ]b4_location_type[ loc])[) { + height++; + if (size == height) { + int[] newStateStack = new int[size * 2]; + System.arraycopy(stateStack, 0, newStateStack, 0, height); + stateStack = newStateStack;]b4_locations_if([[ + ]b4_location_type[[] newLocStack = new ]b4_location_type[[size * 2]; + System.arraycopy(locStack, 0, newLocStack, 0, height); + locStack = newLocStack;]]) + + b4_yystype[[] newValueStack = new ]b4_yystype[[size * 2]; + System.arraycopy(valueStack, 0, newValueStack, 0, height); + valueStack = newValueStack; + + size *= 2; + } + + stateStack[height] = state;]b4_locations_if([[ + locStack[height] = loc;]])[ + valueStack[height] = value; + } + + public final void pop() { + pop(1); + } + + public final void pop(int num) { + // Avoid memory leaks... garbage collection is a white lie! + if (0 < num) { + java.util.Arrays.fill(valueStack, height - num + 1, height + 1, null);]b4_locations_if([[ + java.util.Arrays.fill(locStack, height - num + 1, height + 1, null);]])[ + } + height -= num; + } + + public final int stateAt(int i) { + return stateStack[height - i]; + } +]b4_locations_if([[ + + public final ]b4_location_type[ locationAt(int i) { + return locStack[height - i]; + } +]])[ + public final ]b4_yystype[ valueAt(int i) { + return valueStack[height - i]; + } + + // Print the state stack on the debug stream. + public void print(java.io.PrintStream out) { + out.print ("Stack now"); + + for (int i = 0; i <= height; i++) { + out.print(' '); + out.print(stateStack[i]); + } + out.println(); + } + } + + /** + * Returned by a Bison action in order to stop the parsing process and + * return success (true). + */ + public static final int YYACCEPT = 0; + + /** + * Returned by a Bison action in order to stop the parsing process and + * return failure (false). + */ + public static final int YYABORT = 1; + +]b4_push_if([ + /** + * Returned by a Bison action in order to request a new token. + */ + public static final int YYPUSH_MORE = 4;])[ + + /** + * Returned by a Bison action in order to start error recovery without + * printing an error message. + */ + public static final int YYERROR = 2; + + /** + * Internal return codes that are not supported for user semantic + * actions. + */ + private static final int YYERRLAB = 3; + private static final int YYNEWSTATE = 4; + private static final int YYDEFAULT = 5; + private static final int YYREDUCE = 6; + private static final int YYERRLAB1 = 7; + private static final int YYRETURN = 8; +]b4_push_if([[ private static final int YYGETTOKEN = 9; /* Signify that a new token is expected when doing push-parsing. */]])[ + + private int yyerrstatus_ = 0; + +]b4_push_if([b4_define_state])[ + /** + * Whether error recovery is being done. In this state, the parser + * reads token until it reaches a known state, and then restarts normal + * operation. + */ + public final boolean recovering () + { + return yyerrstatus_ == 0; + } + + /** Compute post-reduction state. + * @@param yystate the current state + * @@param yysym the nonterminal to push on the stack + */ + private int yyLRGotoState(int yystate, int yysym) { + int yyr = yypgoto_[yysym - YYNTOKENS_] + yystate; + if (0 <= yyr && yyr <= YYLAST_ && yycheck_[yyr] == yystate) + return yytable_[yyr]; + else + return yydefgoto_[yysym - YYNTOKENS_]; + } + + private int yyaction(int yyn, YYStack yystack, int yylen)]b4_maybe_throws([b4_throws])[ + { + /* If YYLEN is nonzero, implement the default value of the action: + '$$ = $1'. Otherwise, use the top of the stack. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. */ + ]b4_yystype[ yyval = (0 < yylen) ? yystack.valueAt(yylen - 1) : yystack.valueAt(0);]b4_locations_if([[ + ]b4_location_type[ yyloc = yylloc(yystack, yylen);]])[]b4_parse_trace_if([[ + + yyReducePrint(yyn, yystack);]])[ + + switch (yyn) + { + ]b4_user_actions[ + default: break; + }]b4_parse_trace_if([[ + + yySymbolPrint("-> $$ =", SymbolKind.get(yyr1_[yyn]), yyval]b4_locations_if([, yyloc])[);]])[ + + yystack.pop(yylen); + yylen = 0; + /* Shift the result of the reduction. */ + int yystate = yyLRGotoState(yystack.stateAt(0), yyr1_[yyn]); + yystack.push(yystate, yyval]b4_locations_if([, yyloc])[); + return YYNEWSTATE; + } + +]b4_parse_trace_if([[ + /*--------------------------------. + | Print this symbol on YYOUTPUT. | + `--------------------------------*/ + + private void yySymbolPrint(String s, SymbolKind yykind, + ]b4_yystype[ yyvalue]b4_locations_if([, ]b4_location_type[ yylocation])[) { + if (0 < yydebug) { + yycdebug(s + + (yykind.getCode() < YYNTOKENS_ ? " token " : " nterm ") + + yykind.getName() + " ("]b4_locations_if([ + + yylocation + ": "])[ + + (yyvalue == null ? "(null)" : yyvalue.toString()) + ")"); + } + }]])[ + +]b4_push_if([],[[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public boolean parse()]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[]])[ +]b4_push_if([ + /** + * Push Parse input from external lexer + * + * @@param yylextoken current token + * @@param yylexval current lval]b4_locations_if([[ + * @@param yylexloc current position]])[ + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int push_parse(int yylextoken, b4_yystype yylexval[]b4_locations_if([, b4_location_type yylexloc]))b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])])[ + {]b4_locations_if([[ + /* @@$. */ + ]b4_location_type[ yyloc;]])[ +]b4_push_if([],[[ +]b4_define_state[ +]b4_lac_if([[ + // Discard the LAC context in case there still is one left from a + // previous invocation. + yylacDiscard("init");]])[ +]b4_parse_trace_if([[ + yycdebug ("Starting parse");]])[ + yyerrstatus_ = 0; + yynerrs = 0; + + /* Initialize the stack. */ + yystack.push (yystate, yylval]b4_locations_if([, yylloc])[); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef[]dnl +])[ +]])[ +]b4_push_if([[ + if (!this.push_parse_initialized) + { + push_parse_initialize (); +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([yylval], [], [], [yylloc])dnl + b4_user_initial_action +b4_dollar_popdef[]dnl +])[]b4_parse_trace_if([[ + yycdebug ("Starting parse");]])[ + yyerrstatus_ = 0; + } else + label = YYGETTOKEN; + + boolean push_token_consumed = true; +]])[ + for (;;) + switch (label) + { + /* New state. Unlike in the C/C++ skeletons, the state is already + pushed when we come here. */ + case YYNEWSTATE:]b4_parse_trace_if([[ + yycdebug ("Entering state " + yystate); + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + + /* Accept? */ + if (yystate == YYFINAL_) + ]b4_push_if([{label = YYACCEPT; break;}], + [return true;])[ + + /* Take a decision. First try without lookahead. */ + yyn = yypact_[yystate]; + if (yyPactValueIsDefault (yyn)) + { + label = YYDEFAULT; + break; + } +]b4_push_if([ /* Fall Through */ + + case YYGETTOKEN:])[ + /* Read a lookahead token. */ + if (yychar == YYEMPTY_) + { +]b4_push_if([[ + if (!push_token_consumed) + return YYPUSH_MORE;]b4_parse_trace_if([[ + yycdebug ("Reading a token");]])[ + yychar = yylextoken; + yylval = yylexval;]b4_locations_if([ + yylloc = yylexloc;])[ + push_token_consumed = false;]], [b4_parse_trace_if([[ + yycdebug ("Reading a token");]])[ + yychar = yylexer.yylex (); + yylval = yylexer.getLVal();]b4_locations_if([[ + yylloc = new ]b4_location_type[(yylexer.getStartPos(), + yylexer.getEndPos());]])[ +]])[ + } + + /* Convert token to internal form. */ + yytoken = yytranslate_ (yychar);]b4_parse_trace_if([[ + yySymbolPrint("Next token is", yytoken, + yylval]b4_locations_if([, yylloc])[);]])[ + + if (yytoken == ]b4_symbol(error, kind)[) + { + // The scanner already issued an error message, process directly + // to error recovery. But do not keep the error token as + // lookahead, it is too special and may lead us to an endless + // loop in error recovery. */ + yychar = Lexer.]b4_symbol(undef, id)[; + yytoken = ]b4_symbol(undef, kind)[;]b4_locations_if([[ + yyerrloc = yylloc;]])[ + label = YYERRLAB1; + } + else + { + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken.getCode(); + if (yyn < 0 || YYLAST_ < yyn || yycheck_[yyn] != yytoken.getCode()) {]b4_lac_if([[ + if (!yylacEstablish(yystack, yytoken)) { + label = YYERRLAB; + } else]])[ + label = YYDEFAULT; + } + + /* <= 0 means reduce or error. */ + else if ((yyn = yytable_[yyn]) <= 0) + { + if (yyTableValueIsError(yyn)) { + label = YYERRLAB; + }]b4_lac_if([[ else if (!yylacEstablish(yystack, yytoken)) { + label = YYERRLAB; + }]])[ else { + yyn = -yyn; + label = YYREDUCE; + } + } + + else + { + /* Shift the lookahead token. */]b4_parse_trace_if([[ + yySymbolPrint("Shifting", yytoken, + yylval]b4_locations_if([, yylloc])[); +]])[ + /* Discard the token being shifted. */ + yychar = YYEMPTY_; + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus_ > 0) + --yyerrstatus_; + + yystate = yyn; + yystack.push(yystate, yylval]b4_locations_if([, yylloc])[);]b4_lac_if([[ + yylacDiscard("shift");]])[ + label = YYNEWSTATE; + } + } + break; + + /*-----------------------------------------------------------. + | yydefault -- do the default action for the current state. | + `-----------------------------------------------------------*/ + case YYDEFAULT: + yyn = yydefact_[yystate]; + if (yyn == 0) + label = YYERRLAB; + else + label = YYREDUCE; + break; + + /*-----------------------------. + | yyreduce -- Do a reduction. | + `-----------------------------*/ + case YYREDUCE: + yylen = yyr2_[yyn]; + label = yyaction(yyn, yystack, yylen); + yystate = yystack.stateAt(0); + break; + + /*------------------------------------. + | yyerrlab -- here on detecting error | + `------------------------------------*/ + case YYERRLAB: + /* If not already recovering from an error, report this error. */ + if (yyerrstatus_ == 0) + { + ++yynerrs; + if (yychar == YYEMPTY_) + yytoken = null; + yyreportSyntaxError(new Context(this, yystack, yytoken]b4_locations_if([[, yylloc]])[)); + } +]b4_locations_if([[ + yyerrloc = yylloc;]])[ + if (yyerrstatus_ == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= Lexer.]b4_symbol(eof, id)[) + { + /* Return failure if at end of input. */ + if (yychar == Lexer.]b4_symbol(eof, id)[) + ]b4_push_if([{label = YYABORT; break;}], [return false;])[ + } + else + yychar = YYEMPTY_; + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + label = YYERRLAB1; + break; + + /*-------------------------------------------------. + | errorlab -- error raised explicitly by YYERROR. | + `-------------------------------------------------*/ + case YYERROR:]b4_locations_if([[ + yyerrloc = yystack.locationAt (yylen - 1);]])[ + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + yystack.pop (yylen); + yylen = 0; + yystate = yystack.stateAt(0); + label = YYERRLAB1; + break; + + /*-------------------------------------------------------------. + | yyerrlab1 -- common code for both syntax error and YYERROR. | + `-------------------------------------------------------------*/ + case YYERRLAB1: + yyerrstatus_ = 3; /* Each real token shifted decrements this. */ + + // Pop stack until we find a state that shifts the error token. + for (;;) + { + yyn = yypact_[yystate]; + if (!yyPactValueIsDefault (yyn)) + { + yyn += ]b4_symbol(error, kind)[.getCode(); + if (0 <= yyn && yyn <= YYLAST_ + && yycheck_[yyn] == ]b4_symbol(error, kind)[.getCode()) + { + yyn = yytable_[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the + * error token. */ + if (yystack.height == 0) + ]b4_push_if([{label = YYABORT; break;}],[return false;])[ + +]b4_locations_if([[ + yyerrloc = yystack.locationAt (0);]])[ + yystack.pop (); + yystate = yystack.stateAt(0);]b4_parse_trace_if([[ + if (0 < yydebug) + yystack.print (yyDebugStream);]])[ + } + + if (label == YYABORT) + /* Leave the switch. */ + break; + +]b4_locations_if([[ + /* Muck with the stack to setup for yylloc. */ + yystack.push (0, null, yylloc); + yystack.push (0, null, yyerrloc); + yyloc = yylloc (yystack, 2); + yystack.pop (2);]])[ + + /* Shift the error token. */]b4_lac_if([[ + yylacDiscard("error recovery");]])[]b4_parse_trace_if([[ + yySymbolPrint("Shifting", SymbolKind.get(yystos_[yyn]), + yylval]b4_locations_if([, yyloc])[);]])[ + + yystate = yyn; + yystack.push (yyn, yylval]b4_locations_if([, yyloc])[); + label = YYNEWSTATE; + break; + + /* Accept. */ + case YYACCEPT: + ]b4_push_if([this.push_parse_initialized = false; return YYACCEPT;], + [return true;])[ + + /* Abort. */ + case YYABORT: + ]b4_push_if([this.push_parse_initialized = false; return YYABORT;], + [return false;])[ + } +} +]b4_push_if([[ + boolean push_parse_initialized = false; + + /** + * (Re-)Initialize the state of the push parser. + */ + public void push_parse_initialize () + { + /* Lookahead and lookahead in internal form. */ + this.yychar = YYEMPTY_; + this.yytoken = null; + + /* State. */ + this.yyn = 0; + this.yylen = 0; + this.yystate = 0; + this.yystack = new YYStack();]b4_lac_if([[ + this.yylacStack = new ArrayList(); + this.yylacEstablished = false;]])[ + this.label = YYNEWSTATE; + + /* Error handling. */ + this.yynerrs = 0;]b4_locations_if([[ + /* The location where the error started. */ + this.yyerrloc = null; + this.yylloc = new ]b4_location_type[ (null, null);]])[ + + /* Semantic value of the lookahead. */ + this.yylval = null; + + yystack.push (this.yystate, this.yylval]b4_locations_if([, this.yylloc])[); + + this.push_parse_initialized = true; + + } +]b4_locations_if([[ + /** + * Push parse given input from an external lexer. + * + * @@param yylextoken current token + * @@param yylexval current lval + * @@param yyylexpos current position + * + * @@return YYACCEPT, YYABORT, YYPUSH_MORE + */ + public int push_parse(int yylextoken, ]b4_yystype[ yylexval, ]b4_position_type[ yylexpos)]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[ { + return push_parse(yylextoken, yylexval, new ]b4_location_type[(yylexpos)); + } +]])])[ + +]b4_both_if([[ + /** + * Parse input from the scanner that was specified at object construction + * time. Return whether the end of the input was reached successfully. + * This version of parse() is defined only when api.push-push=both. + * + * @@return true if the parsing succeeds. Note that this does not + * imply that there were no syntax errors. + */ + public boolean parse()]b4_maybe_throws([b4_list2([b4_lex_throws], [b4_throws])])[ { + if (yylexer == null) + throw new NullPointerException("Null Lexer"); + int status; + do { + int token = yylexer.yylex(); + ]b4_yystype[ lval = yylexer.getLVal();]b4_locations_if([[ + ]b4_location_type[ yyloc = new ]b4_location_type[(yylexer.getStartPos(), yylexer.getEndPos()); + status = push_parse(token, lval, yyloc);]], [[ + status = push_parse(token, lval);]])[ + } while (status == YYPUSH_MORE); + return status == YYACCEPT; + } +]])[ + + /** + * Information needed to get the list of expected tokens and to forge + * a syntax error diagnostic. + */ + public static final class Context { + Context(]b4_parser_class[ parser, YYStack stack, SymbolKind token]b4_locations_if([[, ]b4_location_type[ loc]])[) { + yyparser = parser; + yystack = stack; + yytoken = token;]b4_locations_if([[ + yylocation = loc;]])[ + } + + private ]b4_parser_class[ yyparser; + private YYStack yystack; + + + /** + * The symbol kind of the lookahead token. + */ + public final SymbolKind getToken() { + return yytoken; + } + + private SymbolKind yytoken;]b4_locations_if([[ + + /** + * The location of the lookahead. + */ + public final ]b4_location_type[ getLocation() { + return yylocation; + } + + private ]b4_location_type[ yylocation;]])[ + static final int NTOKENS = ]b4_parser_class[.YYNTOKENS_; + + /** + * Put in YYARG at most YYARGN of the expected tokens given the + * current YYCTX, and return the number of tokens stored in YYARG. If + * YYARG is null, return the number of expected tokens (guaranteed to + * be less than YYNTOKENS). + */ + int getExpectedTokens(SymbolKind yyarg[], int yyargn) { + return getExpectedTokens (yyarg, 0, yyargn); + } + + int getExpectedTokens(SymbolKind yyarg[], int yyoffset, int yyargn) { + int yycount = yyoffset;]b4_lac_if([b4_parse_trace_if([[ + // Execute LAC once. We don't care if it is successful, we + // only do it for the sake of debugging output. + if (!yyparser.yylacEstablished) + yyparser.yylacCheck(yystack, yytoken); +]])[ + for (int yyx = 0; yyx < YYNTOKENS_; ++yyx) + { + SymbolKind yysym = SymbolKind.get(yyx); + if (yysym != ]b4_symbol(error, kind)[ + && yysym != ]b4_symbol(undef, kind)[ + && yyparser.yylacCheck(yystack, yysym)) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], [[ + int yyn = yypact_[this.yystack.stateAt(0)]; + if (!yyPactValueIsDefault(yyn)) + { + /* Start YYX at -YYN if negative to avoid negative + indexes in YYCHECK. In other words, skip the first + -YYN actions for this state because they are default + actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST_ - yyn + 1; + int yyxend = yychecklim < NTOKENS ? yychecklim : NTOKENS; + for (int yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck_[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[.getCode() + && !yyTableValueIsError(yytable_[yyx + yyn])) + { + if (yyarg == null) + yycount += 1; + else if (yycount == yyargn) + return 0; // FIXME: this is incorrect. + else + yyarg[yycount++] = SymbolKind.get(yyx); + } + }]])[ + if (yyarg != null && yycount == yyoffset && yyoffset < yyargn) + yyarg[yycount] = null; + return yycount - yyoffset; + } + } + +]b4_lac_if([[ + /** Check the lookahead yytoken. + * \returns true iff the token will be eventually shifted. + */ + boolean yylacCheck(YYStack yystack, SymbolKind yytoken) + { + // Logically, the yylacStack's lifetime is confined to this function. + // Clear it, to get rid of potential left-overs from previous call. + yylacStack.clear(); + // Reduce until we encounter a shift and thereby accept the token. + yycdebugNnl("LAC: checking lookahead " + yytoken.getName() + ":"); + int lacTop = 0; + while (true) + { + int topState = (yylacStack.isEmpty() + ? yystack.stateAt(lacTop) + : yylacStack.get(yylacStack.size() - 1)); + int yyrule = yypact_[topState]; + if (yyPactValueIsDefault(yyrule) + || (yyrule += yytoken.getCode()) < 0 || YYLAST_ < yyrule + || yycheck_[yyrule] != yytoken.getCode()) + { + // Use the default action. + yyrule = yydefact_[+topState]; + if (yyrule == 0) { + yycdebug(" Err"); + return false; + } + } + else + { + // Use the action from yytable. + yyrule = yytable_[yyrule]; + if (yyTableValueIsError(yyrule)) { + yycdebug(" Err"); + return false; + } + if (0 < yyrule) { + yycdebug(" S" + yyrule); + return true; + } + yyrule = -yyrule; + } + // By now we know we have to simulate a reduce. + yycdebugNnl(" R" + (yyrule - 1)); + // Pop the corresponding number of values from the stack. + { + int yylen = yyr2_[yyrule]; + // First pop from the LAC stack as many tokens as possible. + int lacSize = yylacStack.size(); + if (yylen < lacSize) { + // yylacStack.setSize(lacSize - yylen); + for (/* Nothing */; 0 < yylen; yylen -= 1) { + yylacStack.remove(yylacStack.size() - 1); + } + yylen = 0; + } else if (lacSize != 0) { + yylacStack.clear(); + yylen -= lacSize; + } + // Only afterwards look at the main stack. + // We simulate popping elements by incrementing lacTop. + lacTop += yylen; + } + // Keep topState in sync with the updated stack. + topState = (yylacStack.isEmpty() + ? yystack.stateAt(lacTop) + : yylacStack.get(yylacStack.size() - 1)); + // Push the resulting state of the reduction. + int state = yyLRGotoState(topState, yyr1_[yyrule]); + yycdebugNnl(" G" + state); + yylacStack.add(state); + } + } + + /** Establish the initial context if no initial context currently exists. + * \returns true iff the token will be eventually shifted. + */ + boolean yylacEstablish(YYStack yystack, SymbolKind yytoken) { + /* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + yylacEstablish should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). + + For parse.lac=full, the implementation of yylacEstablish is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. */ + if (yylacEstablished) { + return true; + } else { + yycdebug("LAC: initial context established for " + yytoken.getName()); + yylacEstablished = true; + return yylacCheck(yystack, yytoken); + } + } + + /** Discard any previous initial lookahead context because of event. + * \param event the event which caused the lookahead to be discarded. + * Only used for debbuging output. */ + void yylacDiscard(String event) { + /* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ + if (yylacEstablished) { + yycdebug("LAC: initial context discarded due to " + event); + yylacEstablished = false; + } + } + + /** The stack for LAC. + * Logically, the yylacStack's lifetime is confined to the function + * yylacCheck. We just store it as a member of this class to hold + * on to the memory and to avoid frequent reallocations. + */ + ArrayList yylacStack; + /** Whether an initial LAC context was established. */ + boolean yylacEstablished; +]])[ + +]b4_parse_error_bmatch( +[detailed\|verbose], [[ + private int yysyntaxErrorArguments(Context yyctx, SymbolKind[] yyarg, int yyargn) { + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, + then the only way this function was invoked is if the + default action is an error action. In that case, don't + check for expected tokens because there are none. + - The only way there can be no lookahead present (in tok) is + if this state is a consistent state with a default action. + Thus, detecting the absence of a lookahead is sufficient to + determine that there is no unexpected or expected token to + report. In that case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this + state is a consistent state with a default action. There + might have been a previous inconsistent state, consistent + state with a non-default action, or user semantic action + that manipulated yychar. (However, yychar is currently out + of scope during semantic actions.) + - Of course, the expected token list depends on states to + have correct lookahead information, and it depends on the + parser not to perform extra reductions after fetching a + lookahead from the scanner and before detecting a syntax + error. Thus, state merging (from LALR or IELR) and default + reductions corrupt the expected token list. However, the + list is correct for canonical LR with one exception: it + will still contain any token that will not be accepted due + to an error action in a later state. + */ + int yycount = 0; + if (yyctx.getToken() != null) + { + if (yyarg != null) + yyarg[yycount] = yyctx.getToken(); + yycount += 1; + yycount += yyctx.getExpectedTokens(yyarg, 1, yyargn); + } + return yycount; + } +]])[ + + /** + * Build and emit a "syntax error" message in a user-defined way. + * + * @@param ctx The context of the error. + */ + private void yyreportSyntaxError(Context yyctx) {]b4_parse_error_bmatch( +[custom], [[ + yylexer.reportSyntaxError(yyctx);]], +[detailed\|verbose], [[ + if (yyErrorVerbose) { + final int argmax = 5; + SymbolKind[] yyarg = new SymbolKind[argmax]; + int yycount = yysyntaxErrorArguments(yyctx, yyarg, argmax); + String[] yystr = new String[yycount]; + for (int yyi = 0; yyi < yycount; ++yyi) { + yystr[yyi] = yyarg[yyi].getName(); + } + String yyformat; + switch (yycount) { + default: + case 0: yyformat = ]b4_trans(["syntax error"])[; break; + case 1: yyformat = ]b4_trans(["syntax error, unexpected {0}"])[; break; + case 2: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1}"])[; break; + case 3: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2}"])[; break; + case 4: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2} or {3}"])[; break; + case 5: yyformat = ]b4_trans(["syntax error, unexpected {0}, expecting {1} or {2} or {3} or {4}"])[; break; + } + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[new MessageFormat(yyformat).format(yystr)); + } else { + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[]b4_trans(["syntax error"])[); + }]], +[simple], [[ + yyerror(]b4_locations_if([[yyctx.yylocation, ]])[]b4_trans(["syntax error"])[);]])[ + } + + /** + * Whether the given yypact_ value indicates a defaulted state. + * @@param yyvalue the value to check + */ + private static boolean yyPactValueIsDefault(int yyvalue) { + return yyvalue == yypact_ninf_; + } + + /** + * Whether the given yytable_ + * value indicates a syntax error. + * @@param yyvalue the value to check + */ + private static boolean yyTableValueIsError(int yyvalue) { + return yyvalue == yytable_ninf_; + } + + private static final ]b4_int_type_for([b4_pact])[ yypact_ninf_ = ]b4_pact_ninf[; + private static final ]b4_int_type_for([b4_table])[ yytable_ninf_ = ]b4_table_ninf[; + +]b4_parser_tables_define[ + +]b4_parse_trace_if([[ + ]b4_integral_parser_table_define([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ + + + // Report on the debug stream that the rule yyrule is going to be reduced. + private void yyReducePrint (int yyrule, YYStack yystack) + { + if (yydebug == 0) + return; + + int yylno = yyrline_[yyrule]; + int yynrhs = yyr2_[yyrule]; + /* Print the symbols being reduced, and their result. */ + yycdebug ("Reducing stack by rule " + (yyrule - 1) + + " (line " + yylno + "):"); + + /* The symbols being reduced. */ + for (int yyi = 0; yyi < yynrhs; yyi++) + yySymbolPrint(" $" + (yyi + 1) + " =", + SymbolKind.get(yystos_[yystack.stateAt(yynrhs - (yyi + 1))]), + ]b4_rhs_data(yynrhs, yyi + 1)b4_locations_if([, + b4_rhs_location(yynrhs, yyi + 1)])[); + }]])[ + + /* YYTRANSLATE_(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ + private static final SymbolKind yytranslate_(int t) +]b4_api_token_raw_if(dnl +[[ { + return SymbolKind.get(t); + } +]], +[[ { + // Last valid token kind. + int code_max = ]b4_code_max[; + if (t <= 0) + return ]b4_symbol(eof, kind)[; + else if (t <= code_max) + return SymbolKind.get(yytranslate_table_[t]); + else + return ]b4_symbol(undef, kind)[; + } + ]b4_integral_parser_table_define([translate_table], [b4_translate])[ +]])[ + + private static final int YYLAST_ = ]b4_last[; + private static final int YYEMPTY_ = -2; + private static final int YYFINAL_ = ]b4_final_state_number[; + private static final int YYNTOKENS_ = ]b4_tokens_number[; + +]b4_percent_code_get[ +} +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/RelWithDebInfo/data/skeletons/location.cc b/bison/RelWithDebInfo/data/skeletons/location.cc new file mode 100644 index 0000000..3870b2b --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/location.cc @@ -0,0 +1,380 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_pushdef([b4_copyright_years], + [2002-2015, 2018-2021]) + + +# b4_location_file +# ---------------- +# Name of the file containing the position/location class, +# if we want this file. +b4_percent_define_check_file([b4_location_file], + [[api.location.file]], + b4_header_if([[location.hh]])) + +# b4_location_include +# ------------------- +# If location.hh is to be generated, the name under which should it be +# included. +# +# b4_location_path +# ---------------- +# The path to use for the CPP guard. +m4_ifdef([b4_location_file], +[m4_define([b4_location_include], + [b4_percent_define_get([[api.location.include]], + ["b4_location_file"])]) + m4_define([b4_location_path], + b4_percent_define_get([[api.location.include]], + ["b4_mapped_dir_prefix[]b4_location_file"])) + m4_define([b4_location_path], + m4_substr(m4_defn([b4_location_path]), 1, m4_eval(m4_len(m4_defn([b4_location_path])) - 2))) + ]) + + +# b4_position_file +# ---------------- +# Name of the file containing the position class, if we want this file. +b4_header_if( + [b4_required_version_if( + [30200], [], + [m4_ifdef([b4_location_file], + [m4_define([b4_position_file], [position.hh])])])]) + + + +# b4_location_define +# ------------------ +# Define the position and location classes. +m4_define([b4_location_define], +[[ /// A point in a source file. + class position + { + public: + /// Type for file name. + typedef ]b4_percent_define_get([[api.filename.type]])[ filename_type; + /// Type for line and column numbers. + typedef int counter_type; +]m4_ifdef([b4_location_constructors], [[ + /// Construct a position. + explicit position (filename_type* f = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + : filename (f) + , line (l) + , column (c) + {} + +]])[ + /// Initialization. + void initialize (filename_type* fn = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + { + filename = fn; + line = l; + column = c; + } + + /** \name Line and Column related manipulators + ** \{ */ + /// (line related) Advance to the COUNT next lines. + void lines (counter_type count = 1) + { + if (count) + { + column = ]b4_location_initial_column[; + line = add_ (line, count, ]b4_location_initial_line[); + } + } + + /// (column related) Advance to the COUNT next columns. + void columns (counter_type count = 1) + { + column = add_ (column, count, ]b4_location_initial_column[); + } + /** \} */ + + /// File name to which this position refers. + filename_type* filename; + /// Current line number. + counter_type line; + /// Current column number. + counter_type column; + + private: + /// Compute max (min, lhs+rhs). + static counter_type add_ (counter_type lhs, counter_type rhs, counter_type min) + { + return lhs + rhs < min ? min : lhs + rhs; + } + }; + + /// Add \a width columns, in place. + inline position& + operator+= (position& res, position::counter_type width) + { + res.columns (width); + return res; + } + + /// Add \a width columns. + inline position + operator+ (position res, position::counter_type width) + { + return res += width; + } + + /// Subtract \a width columns, in place. + inline position& + operator-= (position& res, position::counter_type width) + { + return res += -width; + } + + /// Subtract \a width columns. + inline position + operator- (position res, position::counter_type width) + { + return res -= width; + } +]b4_percent_define_flag_if([[define_location_comparison]], [[ + /// Compare two position objects. + inline bool + operator== (const position& pos1, const position& pos2) + { + return (pos1.line == pos2.line + && pos1.column == pos2.column + && (pos1.filename == pos2.filename + || (pos1.filename && pos2.filename + && *pos1.filename == *pos2.filename))); + } + + /// Compare two position objects. + inline bool + operator!= (const position& pos1, const position& pos2) + { + return !(pos1 == pos2); + } +]])[ + /** \brief Intercept output stream redirection. + ** \param ostr the destination output stream + ** \param pos a reference to the position to redirect + */ + template + std::basic_ostream& + operator<< (std::basic_ostream& ostr, const position& pos) + { + if (pos.filename) + ostr << *pos.filename << ':'; + return ostr << pos.line << '.' << pos.column; + } + + /// Two points in a source file. + class location + { + public: + /// Type for file name. + typedef position::filename_type filename_type; + /// Type for line and column numbers. + typedef position::counter_type counter_type; +]m4_ifdef([b4_location_constructors], [ + /// Construct a location from \a b to \a e. + location (const position& b, const position& e) + : begin (b) + , end (e) + {} + + /// Construct a 0-width location in \a p. + explicit location (const position& p = position ()) + : begin (p) + , end (p) + {} + + /// Construct a 0-width location in \a f, \a l, \a c. + explicit location (filename_type* f, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + : begin (f, l, c) + , end (f, l, c) + {} + +])[ + /// Initialization. + void initialize (filename_type* f = YY_NULLPTR, + counter_type l = ]b4_location_initial_line[, + counter_type c = ]b4_location_initial_column[) + { + begin.initialize (f, l, c); + end = begin; + } + + /** \name Line and Column related manipulators + ** \{ */ + public: + /// Reset initial location to final location. + void step () + { + begin = end; + } + + /// Extend the current location to the COUNT next columns. + void columns (counter_type count = 1) + { + end += count; + } + + /// Extend the current location to the COUNT next lines. + void lines (counter_type count = 1) + { + end.lines (count); + } + /** \} */ + + + public: + /// Beginning of the located region. + position begin; + /// End of the located region. + position end; + }; + + /// Join two locations, in place. + inline location& + operator+= (location& res, const location& end) + { + res.end = end.end; + return res; + } + + /// Join two locations. + inline location + operator+ (location res, const location& end) + { + return res += end; + } + + /// Add \a width columns to the end position, in place. + inline location& + operator+= (location& res, location::counter_type width) + { + res.columns (width); + return res; + } + + /// Add \a width columns to the end position. + inline location + operator+ (location res, location::counter_type width) + { + return res += width; + } + + /// Subtract \a width columns to the end position, in place. + inline location& + operator-= (location& res, location::counter_type width) + { + return res += -width; + } + + /// Subtract \a width columns to the end position. + inline location + operator- (location res, location::counter_type width) + { + return res -= width; + } +]b4_percent_define_flag_if([[define_location_comparison]], [[ + /// Compare two location objects. + inline bool + operator== (const location& loc1, const location& loc2) + { + return loc1.begin == loc2.begin && loc1.end == loc2.end; + } + + /// Compare two location objects. + inline bool + operator!= (const location& loc1, const location& loc2) + { + return !(loc1 == loc2); + } +]])[ + /** \brief Intercept output stream redirection. + ** \param ostr the destination output stream + ** \param loc a reference to the location to redirect + ** + ** Avoid duplicate information. + */ + template + std::basic_ostream& + operator<< (std::basic_ostream& ostr, const location& loc) + { + location::counter_type end_col + = 0 < loc.end.column ? loc.end.column - 1 : 0; + ostr << loc.begin; + if (loc.end.filename + && (!loc.begin.filename + || *loc.begin.filename != *loc.end.filename)) + ostr << '-' << loc.end.filename << ':' << loc.end.line << '.' << end_col; + else if (loc.begin.line < loc.end.line) + ostr << '-' << loc.end.line << '.' << end_col; + else if (loc.begin.column < end_col) + ostr << '-' << end_col; + return ostr; + } +]]) + + +m4_ifdef([b4_position_file], [[ +]b4_output_begin([b4_dir_prefix], [b4_position_file])[ +]b4_generated_by[ +// Starting with Bison 3.2, this file is useless: the structure it +// used to define is now defined in "]b4_location_file[". +// +// To get rid of this file: +// 1. add '%require "3.2"' (or newer) to your grammar file +// 2. remove references to this file from your build system +// 3. if you used to include it, include "]b4_location_file[" instead. + +#include ]b4_location_include[ +]b4_output_end[ +]]) + + +m4_ifdef([b4_location_file], [[ +]b4_output_begin([b4_dir_prefix], [b4_location_file])[ +]b4_copyright([Locations for Bison parsers in C++])[ +/** + ** \file ]b4_location_path[ + ** Define the ]b4_namespace_ref[::location class. + */ + +]b4_cpp_guard_open([b4_location_path])[ + +# include +# include + +]b4_null_define[ + +]b4_namespace_open[ +]b4_location_define[ +]b4_namespace_close[ +]b4_cpp_guard_close([b4_location_path])[ +]b4_output_end[ +]]) + + +m4_popdef([b4_copyright_years]) diff --git a/bison/RelWithDebInfo/data/skeletons/stack.hh b/bison/RelWithDebInfo/data/skeletons/stack.hh new file mode 100644 index 0000000..9891325 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/stack.hh @@ -0,0 +1,157 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# b4_stack_file +# ------------- +# Name of the file containing the stack class, if we want this file. +b4_header_if([b4_required_version_if([30200], [], + [m4_define([b4_stack_file], [stack.hh])])]) + + +# b4_stack_define +# --------------- +m4_define([b4_stack_define], +[[ /// A stack with random access from its top. + template > + class stack + { + public: + // Hide our reversed order. + typedef typename S::iterator iterator; + typedef typename S::const_iterator const_iterator; + typedef typename S::size_type size_type; + typedef typename std::ptrdiff_t index_type; + + stack (size_type n = 200) YY_NOEXCEPT + : seq_ (n) + {} + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + stack (const stack&) = delete; + /// Non copyable. + stack& operator= (const stack&) = delete; +#endif + + /// Random access. + /// + /// Index 0 returns the topmost element. + const T& + operator[] (index_type i) const + { + return seq_[size_type (size () - 1 - i)]; + } + + /// Random access. + /// + /// Index 0 returns the topmost element. + T& + operator[] (index_type i) + { + return seq_[size_type (size () - 1 - i)]; + } + + /// Steal the contents of \a t. + /// + /// Close to move-semantics. + void + push (YY_MOVE_REF (T) t) + { + seq_.push_back (T ()); + operator[] (0).move (t); + } + + /// Pop elements from the stack. + void + pop (std::ptrdiff_t n = 1) YY_NOEXCEPT + { + for (; 0 < n; --n) + seq_.pop_back (); + } + + /// Pop all elements from the stack. + void + clear () YY_NOEXCEPT + { + seq_.clear (); + } + + /// Number of elements on the stack. + index_type + size () const YY_NOEXCEPT + { + return index_type (seq_.size ()); + } + + /// Iterator on top of the stack (going downwards). + const_iterator + begin () const YY_NOEXCEPT + { + return seq_.begin (); + } + + /// Bottom of the stack. + const_iterator + end () const YY_NOEXCEPT + { + return seq_.end (); + } + + /// Present a slice of the top of a stack. + class slice + { + public: + slice (const stack& stack, index_type range) YY_NOEXCEPT + : stack_ (stack) + , range_ (range) + {} + + const T& + operator[] (index_type i) const + { + return stack_[range_ - i]; + } + + private: + const stack& stack_; + index_type range_; + }; + + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + stack (const stack&); + /// Non copyable. + stack& operator= (const stack&); +#endif + /// The wrapped container. + S seq_; + }; +]]) + +m4_ifdef([b4_stack_file], +[b4_output_begin([b4_dir_prefix], [b4_stack_file])[ +]b4_generated_by[ +// Starting with Bison 3.2, this file is useless: the structure it +// used to define is now defined with the parser itself. +// +// To get rid of this file: +// 1. add '%require "3.2"' (or newer) to your grammar file +// 2. remove references to this file from your build system. +]b4_output_end[ +]]) diff --git a/bison/RelWithDebInfo/data/skeletons/traceon.m4 b/bison/RelWithDebInfo/data/skeletons/traceon.m4 new file mode 100644 index 0000000..344d7d1 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/traceon.m4 @@ -0,0 +1,2 @@ +dnl GNU M4 treats -dV in a position-independent manner. +m4_debugmode(V)m4_traceon()dnl diff --git a/bison/RelWithDebInfo/data/skeletons/variant.hh b/bison/RelWithDebInfo/data/skeletons/variant.hh new file mode 100644 index 0000000..2a490e8 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/variant.hh @@ -0,0 +1,525 @@ +# C++ skeleton for Bison + +# Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +## --------- ## +## variant. ## +## --------- ## + +# b4_assert +# --------- +# The name of YY_ASSERT. +m4_define([b4_assert], + [b4_api_PREFIX[]_ASSERT]) + + +# b4_symbol_variant(YYTYPE, YYVAL, ACTION, [ARGS]) +# ------------------------------------------------ +# Run some ACTION ("build", or "destroy") on YYVAL of symbol type +# YYTYPE. +m4_define([b4_symbol_variant], +[m4_pushdef([b4_dollar_dollar], + [$2.$3< $][3 > (m4_shift3($@))])dnl +switch ($1) + { +b4_type_foreach([_b4_type_action])[]dnl + default: + break; + } +m4_popdef([b4_dollar_dollar])dnl +]) + + +# _b4_char_sizeof_counter +# ----------------------- +# A counter used by _b4_char_sizeof_dummy to create fresh symbols. +m4_define([_b4_char_sizeof_counter], +[0]) + +# _b4_char_sizeof_dummy +# --------------------- +# At each call return a new C++ identifier. +m4_define([_b4_char_sizeof_dummy], +[m4_define([_b4_char_sizeof_counter], m4_incr(_b4_char_sizeof_counter))dnl +dummy[]_b4_char_sizeof_counter]) + + +# b4_char_sizeof(SYMBOL-NUMS) +# --------------------------- +# To be mapped on the list of type names to produce: +# +# char dummy1[sizeof (type_name_1)]; +# char dummy2[sizeof (type_name_2)]; +# +# for defined type names. +m4_define([b4_char_sizeof], +[b4_symbol_if([$1], [has_type], +[ +m4_map([ b4_symbol_tag_comment], [$@])dnl + char _b4_char_sizeof_dummy@{sizeof (b4_symbol([$1], [type]))@}; +])]) + + +# b4_variant_includes +# ------------------- +# The needed includes for variants support. +m4_define([b4_variant_includes], +[b4_parse_assert_if([[#include +#ifndef ]b4_assert[ +# include +# define ]b4_assert[ assert +#endif +]])]) + + + +## -------------------------- ## +## Adjustments for variants. ## +## -------------------------- ## + + +# b4_value_type_declare +# --------------------- +# Define value_type. +m4_define([b4_value_type_declare], +[[ /// A buffer to store and retrieve objects. + /// + /// Sort of a variant, but does not keep track of the nature + /// of the stored data, since that knowledge is available + /// via the current parser state. + class value_type + { + public: + /// Type of *this. + typedef value_type self_type; + + /// Empty construction. + value_type () YY_NOEXCEPT + : yyraw_ ()]b4_parse_assert_if([ + , yytypeid_ (YY_NULLPTR)])[ + {} + + /// Construct and fill. + template + value_type (YY_RVREF (T) t)]b4_parse_assert_if([ + : yytypeid_ (&typeid (T))])[ + {]b4_parse_assert_if([[ + ]b4_assert[ (sizeof (T) <= size);]])[ + new (yyas_ ()) T (YY_MOVE (t)); + } + +#if 201103L <= YY_CPLUSPLUS + /// Non copyable. + value_type (const self_type&) = delete; + /// Non copyable. + self_type& operator= (const self_type&) = delete; +#endif + + /// Destruction, allowed only if empty. + ~value_type () YY_NOEXCEPT + {]b4_parse_assert_if([ + ]b4_assert[ (!yytypeid_); + ])[} + +# if 201103L <= YY_CPLUSPLUS + /// Instantiate a \a T in here from \a t. + template + T& + emplace (U&&... u) + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (std::forward (u)...); + } +# else + /// Instantiate an empty \a T in here. + template + T& + emplace () + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (); + } + + /// Instantiate a \a T in here from \a t. + template + T& + emplace (const T& t) + {]b4_parse_assert_if([[ + ]b4_assert[ (!yytypeid_); + ]b4_assert[ (sizeof (T) <= size); + yytypeid_ = & typeid (T);]])[ + return *new (yyas_ ()) T (t); + } +# endif + + /// Instantiate an empty \a T in here. + /// Obsolete, use emplace. + template + T& + build () + { + return emplace (); + } + + /// Instantiate a \a T in here from \a t. + /// Obsolete, use emplace. + template + T& + build (const T& t) + { + return emplace (t); + } + + /// Accessor to a built \a T. + template + T& + as () YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == typeid (T)); + ]b4_assert[ (sizeof (T) <= size);]])[ + return *yyas_ (); + } + + /// Const accessor to a built \a T (for %printer). + template + const T& + as () const YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == typeid (T)); + ]b4_assert[ (sizeof (T) <= size);]])[ + return *yyas_ (); + } + + /// Swap the content with \a that, of same type. + /// + /// Both variants must be built beforehand, because swapping the actual + /// data requires reading it (with as()), and this is not possible on + /// unconstructed variants: it would require some dynamic testing, which + /// should not be the variant's responsibility. + /// Swapping between built and (possibly) non-built is done with + /// self_type::move (). + template + void + swap (self_type& that) YY_NOEXCEPT + {]b4_parse_assert_if([[ + ]b4_assert[ (yytypeid_); + ]b4_assert[ (*yytypeid_ == *that.yytypeid_);]])[ + std::swap (as (), that.as ()); + } + + /// Move the content of \a that to this. + /// + /// Destroys \a that. + template + void + move (self_type& that) + { +# if 201103L <= YY_CPLUSPLUS + emplace (std::move (that.as ())); +# else + emplace (); + swap (that); +# endif + that.destroy (); + } + +# if 201103L <= YY_CPLUSPLUS + /// Move the content of \a that to this. + template + void + move (self_type&& that) + { + emplace (std::move (that.as ())); + that.destroy (); + } +#endif + + /// Copy the content of \a that to this. + template + void + copy (const self_type& that) + { + emplace (that.as ()); + } + + /// Destroy the stored \a T. + template + void + destroy () + { + as ().~T ();]b4_parse_assert_if([ + yytypeid_ = YY_NULLPTR;])[ + } + + private: +#if YY_CPLUSPLUS < 201103L + /// Non copyable. + value_type (const self_type&); + /// Non copyable. + self_type& operator= (const self_type&); +#endif + + /// Accessor to raw memory as \a T. + template + T* + yyas_ () YY_NOEXCEPT + { + void *yyp = yyraw_; + return static_cast (yyp); + } + + /// Const accessor to raw memory as \a T. + template + const T* + yyas_ () const YY_NOEXCEPT + { + const void *yyp = yyraw_; + return static_cast (yyp); + } + + /// An auxiliary type to compute the largest semantic type. + union union_type + {]b4_type_foreach([b4_char_sizeof])[ }; + + /// The size of the largest semantic type. + enum { size = sizeof (union_type) }; + + /// A buffer to store semantic values. + union + { + /// Strongest alignment constraints. + long double yyalign_me_; + /// A buffer large enough to store any of the semantic values. + char yyraw_[size]; + };]b4_parse_assert_if([ + + /// Whether the content is built: if defined, the name of the stored type. + const std::type_info *yytypeid_;])[ + }; +]]) + + +# How the semantic value is extracted when using variants. + +# b4_symbol_value(VAL, SYMBOL-NUM, [TYPE]) +# ---------------------------------------- +# See README. +m4_define([b4_symbol_value], +[m4_ifval([$3], + [$1.as< $3 > ()], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [$1.as < b4_symbol([$2], [type]) > ()], + [$1])], + [$1])])]) + +# b4_symbol_value_template(VAL, SYMBOL-NUM, [TYPE]) +# ------------------------------------------------- +# Same as b4_symbol_value, but used in a template method. +m4_define([b4_symbol_value_template], +[m4_ifval([$3], + [$1.template as< $3 > ()], + [m4_ifval([$2], + [b4_symbol_if([$2], [has_type], + [$1.template as < b4_symbol([$2], [type]) > ()], + [$1])], + [$1])])]) + + + +## ------------- ## +## make_SYMBOL. ## +## ------------- ## + + +# _b4_includes_tokens(SYMBOL-NUM...) +# ---------------------------------- +# Expands to non-empty iff one of the SYMBOL-NUM denotes +# a token. +m4_define([_b4_is_token], + [b4_symbol_if([$1], [is_token], [1])]) +m4_define([_b4_includes_tokens], + [m4_map([_b4_is_token], [$@])]) + + +# _b4_token_maker_define(SYMBOL-NUM) +# ---------------------------------- +# Declare make_SYMBOL for SYMBOL-NUM. Use at class-level. +m4_define([_b4_token_maker_define], +[b4_token_visible_if([$1], +[#if 201103L <= YY_CPLUSPLUS + static + symbol_type + make_[]_b4_symbol([$1], [id]) (b4_join( + b4_symbol_if([$1], [has_type], + [b4_symbol([$1], [type]) v]), + b4_locations_if([location_type l]))) + { + return symbol_type (b4_join([token::b4_symbol([$1], [id])], + b4_symbol_if([$1], [has_type], [std::move (v)]), + b4_locations_if([std::move (l)]))); + } +#else + static + symbol_type + make_[]_b4_symbol([$1], [id]) (b4_join( + b4_symbol_if([$1], [has_type], + [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))) + { + return symbol_type (b4_join([token::b4_symbol([$1], [id])], + b4_symbol_if([$1], [has_type], [v]), + b4_locations_if([l]))); + } +#endif +])]) + + +# b4_token_kind(SYMBOL-NUM) +# ------------------------- +# Some tokens don't have an ID. +m4_define([b4_token_kind], +[b4_symbol_if([$1], [has_id], + [token::b4_symbol([$1], [id])], + [b4_symbol([$1], [code])])]) + + +# _b4_tok_in(SYMBOL-NUM, ...) +# --------------------------- +# See b4_tok_in below. The SYMBOL-NUMs... are tokens only. +# +# We iterate over the tokens to group them by "range" of token numbers (not +# symbols numbers!). +# +# b4_fst is the start of that range. +# b4_prev is the previous value. +# b4_val is the current value. +# If b4_val is the successor of b4_prev in token numbers, update the latter, +# otherwise emit the code for range b4_fst .. b4_prev. +# $1 is also used as a terminator in the foreach, but it will not be printed. +# +m4_define([_b4_tok_in], +[m4_pushdef([b4_prev], [$1])dnl +m4_pushdef([b4_fst], [$1])dnl +m4_pushdef([b4_sep], [])dnl +m4_foreach([b4_val], m4_dquote(m4_shift($@, $1)), + [m4_if(b4_symbol(b4_val, [code]), m4_eval(b4_symbol(b4_prev, [code]) + 1), [], + [b4_sep[]m4_if(b4_fst, b4_prev, + [tok == b4_token_kind(b4_fst)], + [(b4_token_kind(b4_fst) <= tok && tok <= b4_token_kind(b4_prev))])[]dnl +m4_define([b4_fst], b4_val)dnl +m4_define([b4_sep], [ + || ])])dnl +m4_define([b4_prev], b4_val)])dnl +m4_popdef([b4_sep])dnl +m4_popdef([b4_fst])dnl +m4_popdef([b4_prev])dnl +]) + + +# _b4_filter_tokens(SYMBOL-NUM, ...) +# ---------------------------------- +# Expand as the list of tokens amongst SYMBOL-NUM. +m4_define([_b4_filter_tokens], +[m4_pushdef([b4_sep])dnl +m4_foreach([b4_val], [$@], + [b4_symbol_if(b4_val, [is_token], [b4_sep[]b4_val[]m4_define([b4_sep], [,])])])dnl +m4_popdef([b4_sep])dnl +]) + + +# b4_tok_in(SYMBOL-NUM, ...) +# --------------------------- +# A C++ conditional that checks that `tok` is a member of this list of symbol +# numbers. +m4_define([b4_tok_in], + [_$0(_b4_filter_tokens($@))]) + + + + +# _b4_symbol_constructor_define(SYMBOL-NUM...) +# -------------------------------------------- +# Define a symbol_type constructor common to all the SYMBOL-NUM (they +# have the same type). Use at class-level. +m4_define([_b4_symbol_constructor_define], +[m4_ifval(_b4_includes_tokens($@), +[[#if 201103L <= YY_CPLUSPLUS + symbol_type (]b4_join( + [int tok], + b4_symbol_if([$1], [has_type], + [b4_symbol([$1], [type]) v]), + b4_locations_if([location_type l]))[) + : super_type (]b4_join([token_kind_type (tok)], + b4_symbol_if([$1], [has_type], [std::move (v)]), + b4_locations_if([std::move (l)]))[) +#else + symbol_type (]b4_join( + [int tok], + b4_symbol_if([$1], [has_type], + [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))[) + : super_type (]b4_join([token_kind_type (tok)], + b4_symbol_if([$1], [has_type], [v]), + b4_locations_if([l]))[) +#endif + {]b4_parse_assert_if([[ +#if !defined _MSC_VER || defined __clang__ + ]b4_assert[ (]b4_tok_in($@)[); +#endif + ]])[} +]])]) + + +# b4_basic_symbol_constructor_define(SYMBOL-NUM) +# ---------------------------------------------- +# Generate a constructor for basic_symbol from given type. +m4_define([b4_basic_symbol_constructor_define], +[[#if 201103L <= YY_CPLUSPLUS + basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_symbol_if([$1], [has_type], [b4_symbol([$1], [type])&& v]), + b4_locations_if([location_type&& l]))[) + : Base (t)]b4_symbol_if([$1], [has_type], [ + , value (std::move (v))])[]b4_locations_if([ + , location (std::move (l))])[ + {} +#else + basic_symbol (]b4_join( + [typename Base::kind_type t], + b4_symbol_if([$1], [has_type], [const b4_symbol([$1], [type])& v]), + b4_locations_if([const location_type& l]))[) + : Base (t)]b4_symbol_if([$1], [has_type], [ + , value (v)])[]b4_locations_if([ + , location (l)])[ + {} +#endif +]]) + + +# b4_token_constructor_define +# --------------------------- +# Define the overloaded versions of make_FOO for all the token kinds. +m4_define([b4_token_constructor_define], +[ // Implementation of make_symbol for each token kind. +b4_symbol_foreach([_b4_token_maker_define])]) diff --git a/bison/RelWithDebInfo/data/skeletons/yacc.c b/bison/RelWithDebInfo/data/skeletons/yacc.c new file mode 100644 index 0000000..64b9ac6 --- /dev/null +++ b/bison/RelWithDebInfo/data/skeletons/yacc.c @@ -0,0 +1,2209 @@ +# -*- C -*- +# Yacc compatible skeleton for Bison + +# Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software +# Foundation, Inc. + +m4_pushdef([b4_copyright_years], + [1984, 1989-1990, 2000-2015, 2018-2021]) + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +m4_include(b4_skeletonsdir/[c.m4]) + + +## ---------- ## +## api.pure. ## +## ---------- ## + +b4_percent_define_default([[api.pure]], [[false]]) +b4_percent_define_check_values([[[[api.pure]], + [[false]], [[true]], [[]], [[full]]]]) + +m4_define([b4_pure_flag], [[0]]) +m4_case(b4_percent_define_get([[api.pure]]), + [false], [m4_define([b4_pure_flag], [[0]])], + [true], [m4_define([b4_pure_flag], [[1]])], + [], [m4_define([b4_pure_flag], [[1]])], + [full], [m4_define([b4_pure_flag], [[2]])]) + +m4_define([b4_pure_if], +[m4_case(b4_pure_flag, + [0], [$2], + [1], [$1], + [2], [$1])]) + [m4_fatal([invalid api.pure value: ]$1)])]) + +## --------------- ## +## api.push-pull. ## +## --------------- ## + +# b4_pull_if, b4_push_if +# ---------------------- +# Whether the pull/push APIs are needed. Both can be enabled. + +b4_percent_define_default([[api.push-pull]], [[pull]]) +b4_percent_define_check_values([[[[api.push-pull]], + [[pull]], [[push]], [[both]]]]) +b4_define_flag_if([pull]) m4_define([b4_pull_flag], [[1]]) +b4_define_flag_if([push]) m4_define([b4_push_flag], [[1]]) +m4_case(b4_percent_define_get([[api.push-pull]]), + [pull], [m4_define([b4_push_flag], [[0]])], + [push], [m4_define([b4_pull_flag], [[0]])]) + +# Handle BISON_USE_PUSH_FOR_PULL for the test suite. So that push parsing +# tests function as written, do not let BISON_USE_PUSH_FOR_PULL modify the +# behavior of Bison at all when push parsing is already requested. +b4_define_flag_if([use_push_for_pull]) +b4_use_push_for_pull_if([ + b4_push_if([m4_define([b4_use_push_for_pull_flag], [[0]])], + [m4_define([b4_push_flag], [[1]])])]) + +## ----------- ## +## parse.lac. ## +## ----------- ## + +b4_percent_define_default([[parse.lac]], [[none]]) +b4_percent_define_default([[parse.lac.es-capacity-initial]], [[20]]) +b4_percent_define_default([[parse.lac.memory-trace]], [[failures]]) +b4_percent_define_check_values([[[[parse.lac]], [[full]], [[none]]]], + [[[[parse.lac.memory-trace]], + [[failures]], [[full]]]]) +b4_define_flag_if([lac]) +m4_define([b4_lac_flag], + [m4_if(b4_percent_define_get([[parse.lac]]), + [none], [[0]], [[1]])]) + +## ---------------- ## +## Default values. ## +## ---------------- ## + +# Stack parameters. +m4_define_default([b4_stack_depth_max], [10000]) +m4_define_default([b4_stack_depth_init], [200]) + + +# b4_yyerror_arg_loc_if(ARG) +# -------------------------- +# Expand ARG iff yyerror is to be given a location as argument. +m4_define([b4_yyerror_arg_loc_if], +[b4_locations_if([m4_case(b4_pure_flag, + [1], [m4_ifset([b4_parse_param], [$1])], + [2], [$1])])]) + +# b4_yyerror_formals +# ------------------ +m4_define([b4_yyerror_formals], +[b4_pure_if([b4_locations_if([, [[const ]b4_api_PREFIX[LTYPE *yyllocp], [&yylloc]]])[]dnl +m4_ifdef([b4_parse_param], [, b4_parse_param])[]dnl +,])dnl +[[const char *msg], [msg]]]) + + + +# b4_yyerror_args +# --------------- +# Arguments passed to yyerror: user args plus yylloc. +m4_define([b4_yyerror_args], +[b4_yyerror_arg_loc_if([&yylloc, ])dnl +m4_ifset([b4_parse_param], [b4_args(b4_parse_param), ])]) + + + +## ----------------- ## +## Semantic Values. ## +## ----------------- ## + + +# b4_accept([SYMBOL-NUM]) +# ----------------------- +# Used in actions of the rules of accept, the initial symbol, to call +# YYACCEPT. If SYMBOL-NUM is specified, run "yyvalue->SLOT = $2;" +# before, using the slot of SYMBOL-NUM. +m4_define([b4_accept], +[m4_ifval([$1], + [b4_symbol_value(yyimpl->yyvalue, [$1]) = b4_rhs_value(2, 1, [$1]); ]) YYACCEPT]) + + +# b4_lhs_value(SYMBOL-NUM, [TYPE]) +# -------------------------------- +# See README. +m4_define([b4_lhs_value], +[b4_symbol_value(yyval, [$1], [$2])]) + + +# b4_rhs_value(RULE-LENGTH, POS, [SYMBOL-NUM], [TYPE]) +# ---------------------------------------------------- +# See README. +m4_define([b4_rhs_value], +[b4_symbol_value([yyvsp@{b4_subtract([$2], [$1])@}], [$3], [$4])]) + + +## ----------- ## +## Locations. ## +## ----------- ## + +# b4_lhs_location() +# ----------------- +# Expansion of @$. +# Overparenthetized to avoid obscure problems with "foo$$bar = foo$1bar". +m4_define([b4_lhs_location], +[(yyloc)]) + + +# b4_rhs_location(RULE-LENGTH, POS) +# --------------------------------- +# Expansion of @POS, where the current rule has RULE-LENGTH symbols +# on RHS. +# Overparenthetized to avoid obscure problems with "foo$$bar = foo$1bar". +m4_define([b4_rhs_location], +[(yylsp@{b4_subtract([$2], [$1])@})]) + + +## -------------- ## +## Declarations. ## +## -------------- ## + +# _b4_declare_sub_yyparse(START-SYMBOL-NUM, SWITCHING-TOKEN-SYMBOL-NUM) +# --------------------------------------------------------------------- +# Define the return type of the parsing function for SYMBOL-NUM, and +# declare its parsing function. +m4_define([_b4_declare_sub_yyparse], +[[ +// Return type when parsing one ]_b4_symbol($1, tag)[. +typedef struct +{]b4_symbol_if([$1], [has_type], [[ + ]_b4_symbol($1, type)[ yyvalue;]])[ + int yystatus; + int yynerrs; +} ]b4_prefix[parse_]_b4_symbol($1, id)[_t; + +// Parse one ]_b4_symbol($1, tag)[. +]b4_prefix[parse_]_b4_symbol($1, id)[_t ]b4_prefix[parse_]_b4_symbol($1, id)[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]]) + + +# _b4_first_switching_token +# ------------------------- +m4_define([b4_first], [$1]) +m4_define([b4_second], [$2]) +m4_define([_b4_first_switching_token], +[b4_second(b4_first(b4_start_symbols))]) + + +# _b4_define_sub_yyparse(START-SYMBOL-NUM, SWITCHING-TOKEN-SYMBOL-NUM) +# -------------------------------------------------------------------- +# Define the parsing function for START-SYMBOL-NUM. +m4_define([_b4_define_sub_yyparse], +[[ +]b4_prefix[parse_]_b4_symbol($1, id)[_t +]b4_prefix[parse_]_b4_symbol($1, id)[ (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + ]b4_prefix[parse_]_b4_symbol($1, id)[_t yyres; + yy_parse_impl_t yyimpl; + yyres.yystatus = yy_parse_impl (]b4_symbol($2, id)[, &yyimpl]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[);]b4_symbol_if([$1], [has_type], [[ + yyres.yyvalue = yyimpl.yyvalue.]b4_symbol($1, slot)[;]])[ + yyres.yynerrs = yyimpl.yynerrs; + return yyres; +} +]]) + + +# b4_declare_scanner_communication_variables +# ------------------------------------------ +# Declare the variables that are global, or local to YYPARSE if +# pure-parser. +m4_define([b4_declare_scanner_communication_variables], [[ +]m4_ifdef([b4_start_symbols], [], +[[/* Lookahead token kind. */ +int yychar; +]])[ +]b4_pure_if([[ +/* The semantic value of the lookahead symbol. */ +/* Default value used for initialization, for pacifying older GCCs + or non-GCC compilers. */ +YY_INITIAL_VALUE (static YYSTYPE yyval_default;) +YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);]b4_locations_if([[ + +/* Location data for the lookahead symbol. */ +static YYLTYPE yyloc_default]b4_yyloc_default[; +YYLTYPE yylloc = yyloc_default;]])], +[[/* The semantic value of the lookahead symbol. */ +YYSTYPE yylval;]b4_locations_if([[ +/* Location data for the lookahead symbol. */ +YYLTYPE yylloc]b4_yyloc_default[;]])[ +/* Number of syntax errors so far. */ +int yynerrs;]])]) + + +# b4_declare_parser_state_variables([INIT]) +# ----------------------------------------- +# Declare all the variables that are needed to maintain the parser state +# between calls to yypush_parse. +# If INIT is non-null, initialize these variables. +m4_define([b4_declare_parser_state_variables], +[b4_pure_if([[ + /* Number of syntax errors so far. */ + int yynerrs]m4_ifval([$1], [ = 0])[; +]])[ + yy_state_fast_t yystate]m4_ifval([$1], [ = 0])[; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus]m4_ifval([$1], [ = 0])[; + + /* Refer to the stacks through separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* Their size. */ + YYPTRDIFF_T yystacksize]m4_ifval([$1], [ = YYINITDEPTH])[; + + /* The state stack: array, bottom, top. */ + yy_state_t yyssa[YYINITDEPTH]; + yy_state_t *yyss]m4_ifval([$1], [ = yyssa])[; + yy_state_t *yyssp]m4_ifval([$1], [ = yyss])[; + + /* The semantic value stack: array, bottom, top. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs]m4_ifval([$1], [ = yyvsa])[; + YYSTYPE *yyvsp]m4_ifval([$1], [ = yyvs])[;]b4_locations_if([[ + + /* The location stack: array, bottom, top. */ + YYLTYPE yylsa[YYINITDEPTH]; + YYLTYPE *yyls]m4_ifval([$1], [ = yylsa])[; + YYLTYPE *yylsp]m4_ifval([$1], [ = yyls])[;]])[]b4_lac_if([[ + + yy_state_t yyesa@{]b4_percent_define_get([[parse.lac.es-capacity-initial]])[@}; + yy_state_t *yyes]m4_ifval([$1], [ = yyesa])[; + YYPTRDIFF_T yyes_capacity][]m4_ifval([$1], + [m4_do([ = b4_percent_define_get([[parse.lac.es-capacity-initial]]) < YYMAXDEPTH], + [ ? b4_percent_define_get([[parse.lac.es-capacity-initial]])], + [ : YYMAXDEPTH])])[;]])]) + + +m4_define([b4_macro_define], +[[#]define $1 $2]) + +m4_define([b4_macro_undef], +[[#]undef $1]) + +m4_define([b4_pstate_macro_define], +[b4_macro_define([$1], [yyps->$1])]) + +# b4_parse_state_variable_macros(b4_macro_define|b4_macro_undef) +# -------------------------------------------------------------- +m4_define([b4_parse_state_variable_macros], +[b4_pure_if([$1([b4_prefix[]nerrs])]) +$1([yystate]) +$1([yyerrstatus]) +$1([yyssa]) +$1([yyss]) +$1([yyssp]) +$1([yyvsa]) +$1([yyvs]) +$1([yyvsp])[]b4_locations_if([ +$1([yylsa]) +$1([yyls]) +$1([yylsp])]) +$1([yystacksize])[]b4_lac_if([ +$1([yyesa]) +$1([yyes]) +$1([yyes_capacity])])]) + + + + +# _b4_declare_yyparse_push +# ------------------------ +# Declaration of yyparse (and dependencies) when using the push parser +# (including in pull mode). +m4_define([_b4_declare_yyparse_push], +[[#ifndef YYPUSH_MORE_DEFINED +# define YYPUSH_MORE_DEFINED +enum { YYPUSH_MORE = 4 }; +#endif + +typedef struct ]b4_prefix[pstate ]b4_prefix[pstate; + +]b4_pull_if([[ +int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[);]])[ +int ]b4_prefix[push_parse (]b4_prefix[pstate *ps]b4_pure_if([[, + int pushed_char, ]b4_api_PREFIX[STYPE const *pushed_val]b4_locations_if([[, ]b4_api_PREFIX[LTYPE *pushed_loc]])])b4_user_formals[); +]b4_pull_if([[int ]b4_prefix[pull_parse (]b4_prefix[pstate *ps]b4_user_formals[);]])[ +]b4_prefix[pstate *]b4_prefix[pstate_new (void); +void ]b4_prefix[pstate_delete (]b4_prefix[pstate *ps); +]]) + + +# _b4_declare_yyparse +# ------------------- +# When not the push parser. +m4_define([_b4_declare_yyparse], +[[int ]b4_prefix[parse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[); +]m4_ifdef([b4_start_symbols], + [m4_map([_b4_declare_sub_yyparse], m4_defn([b4_start_symbols]))])]) + + +# b4_declare_yyparse +# ------------------ +m4_define([b4_declare_yyparse], +[b4_push_if([_b4_declare_yyparse_push], + [_b4_declare_yyparse])[]dnl +]) + + +# b4_declare_yyerror_and_yylex +# ---------------------------- +# Comply with POSIX Yacc. +# +m4_define([b4_declare_yyerror_and_yylex], +[b4_posix_if([[#if !defined ]b4_prefix[error && !defined ]b4_api_PREFIX[ERROR_IS_DECLARED +]b4_function_declare([b4_prefix[error]], void, b4_yyerror_formals)[ +#endif +#if !defined ]b4_prefix[lex && !defined ]b4_api_PREFIX[LEX_IS_DECLARED +]b4_function_declare([b4_prefix[lex]], int, b4_yylex_formals)[ +#endif +]])dnl +]) + + +# b4_shared_declarations +# ---------------------- +# Declarations that might either go into the header (if --header) +# or into the implementation file. +m4_define([b4_shared_declarations], +[b4_cpp_guard_open([b4_spec_mapped_header_file])[ +]b4_declare_yydebug[ +]b4_percent_code_get([[requires]])[ +]b4_token_enums_defines[ +]b4_declare_yylstype[ +]b4_declare_yyerror_and_yylex[ +]b4_declare_yyparse[ +]b4_percent_code_get([[provides]])[ +]b4_cpp_guard_close([b4_spec_mapped_header_file])[]dnl +]) + + +# b4_header_include_if(IF-TRUE, IF-FALSE) +# --------------------------------------- +# Run IF-TRUE if we generate an output file and api.header.include +# is defined. +m4_define([b4_header_include_if], +[m4_ifval(m4_quote(b4_spec_header_file), + [b4_percent_define_ifdef([[api.header.include]], + [$1], + [$2])], + [$2])]) + +m4_if(b4_spec_header_file, [y.tab.h], [], + [b4_percent_define_default([[api.header.include]], + [["@basename(]b4_spec_header_file[@)"]])]) + + + + +## -------------- ## +## Output files. ## +## -------------- ## + + +b4_header_if([[ +]b4_output_begin([b4_spec_header_file])[ +]b4_copyright([Bison interface for Yacc-like parsers in C])[ +]b4_disclaimer[ +]b4_shared_declarations[ +]b4_output_end[ +]])# b4_header_if + +b4_output_begin([b4_parser_file_name])[ +]b4_copyright([Bison implementation for Yacc-like parsers in C])[ +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ + +]b4_disclaimer[ +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ + +]b4_identification[ +]b4_percent_code_get([[top]])[]dnl +m4_if(b4_api_prefix, [yy], [], +[[/* Substitute the type names. */ +#define YYSTYPE ]b4_api_PREFIX[STYPE]b4_locations_if([[ +#define YYLTYPE ]b4_api_PREFIX[LTYPE]])])[ +]m4_if(b4_prefix, [yy], [], +[[/* Substitute the variable and function names. */]b4_pull_if([[ +#define yyparse ]b4_prefix[parse]])b4_push_if([[ +#define yypush_parse ]b4_prefix[push_parse]b4_pull_if([[ +#define yypull_parse ]b4_prefix[pull_parse]])[ +#define yypstate_new ]b4_prefix[pstate_new +#define yypstate_clear ]b4_prefix[pstate_clear +#define yypstate_delete ]b4_prefix[pstate_delete +#define yypstate ]b4_prefix[pstate]])[ +#define yylex ]b4_prefix[lex +#define yyerror ]b4_prefix[error +#define yydebug ]b4_prefix[debug +#define yynerrs ]b4_prefix[nerrs]]b4_pure_if([], [[ +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])]))[ + +]b4_user_pre_prologue[ +]b4_cast_define[ +]b4_null_define[ + +]b4_header_include_if([[#include ]b4_percent_define_get([[api.header.include]])], + [m4_ifval(m4_quote(b4_spec_header_file), + [/* Use api.header.include to #include this header + instead of duplicating it here. */ +])b4_shared_declarations])[ +]b4_declare_symbol_enum[ + +]b4_user_post_prologue[ +]b4_percent_code_get[ +]b4_c99_int_type_define[ + +]b4_sizes_types_define[ + +/* Stored state numbers (used for stacks). */ +typedef ]b4_int_type(0, m4_eval(b4_states_number - 1))[ yy_state_t; + +/* State numbers in computations. */ +typedef int yy_state_fast_t; + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif +]b4_has_translations_if([ +#ifndef N_ +# define N_(Msgid) Msgid +#endif +])[ + +]b4_attribute_define[ + +]b4_parse_assert_if([[#ifdef NDEBUG +# define YY_ASSERT(E) ((void) (0 && (E))) +#else +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_ASSERT(E) assert (E) +#endif +]], +[[#define YY_ASSERT(E) ((void) (0 && (E)))]])[ + +#if ]b4_lac_if([[1]], [b4_parse_error_case([simple], [[!defined yyoverflow]], [[1]])])[ + +/* The parser invokes alloca or malloc; define the necessary symbols. */]dnl +b4_push_if([], [b4_lac_if([], [[ + +# ifdef YYSTACK_USE_ALLOCA +# if YYSTACK_USE_ALLOCA +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca +# else +# define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS +# include /* INFRINGES ON USER NAME SPACE */ + /* Use EXIT_SUCCESS as a witness for stdlib.h. */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# endif +# endif +# endif]])])[ + +# ifdef YYSTACK_ALLOC + /* Pacify GCC's 'empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +# endif +# else +# define YYSTACK_ALLOC YYMALLOC +# define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) +# include /* INFRINGES ON USER NAME SPACE */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined EXIT_SUCCESS +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined EXIT_SUCCESS +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# endif]b4_lac_if([[ +# define YYCOPY_NEEDED 1]])[ +#endif /* ]b4_lac_if([[1]], [b4_parse_error_case([simple], [[!defined yyoverflow]], [[1]])])[ */ + +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (]b4_locations_if([[defined ]b4_api_PREFIX[LTYPE_IS_TRIVIAL && ]b4_api_PREFIX[LTYPE_IS_TRIVIAL \ + && ]])[defined ]b4_api_PREFIX[STYPE_IS_TRIVIAL && ]b4_api_PREFIX[STYPE_IS_TRIVIAL))) + +/* A type that is properly aligned for any stack member. */ +union yyalloc +{ + yy_state_t yyss_alloc; + YYSTYPE yyvs_alloc;]b4_locations_if([ + YYLTYPE yyls_alloc;])[ +}; + +/* The size of the maximum gap between one aligned stack and the next. */ +# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1) + +/* The size of an array large to enough to hold all stacks, each with + N elements. */ +]b4_locations_if( +[# define YYSTACK_BYTES(N) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE) \ + + YYSIZEOF (YYLTYPE)) \ + + 2 * YYSTACK_GAP_MAXIMUM)], +[# define YYSTACK_BYTES(N) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \ + + YYSTACK_GAP_MAXIMUM)])[ + +# define YYCOPY_NEEDED 1 + +/* Relocate STACK from its old location to the new one. The + local variables YYSIZE and YYSTACKSIZE give the old and new number of + elements in the stack, and YYPTR gives the new location of the + stack. Advance YYPTR to a properly aligned location for the next + stack. */ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ + do \ + { \ + YYPTRDIFF_T yynewbytes; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ + yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / YYSIZEOF (*yyptr); \ + } \ + while (0) + +#endif + +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from SRC to DST. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(Dst, Src, Count) \ + __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src))) +# else +# define YYCOPY(Dst, Src, Count) \ + do \ + { \ + YYPTRDIFF_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (Dst)[yyi] = (Src)[yyi]; \ + } \ + while (0) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL ]b4_final_state_number[ +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST ]b4_last[ + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS ]b4_tokens_number[ +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS ]b4_nterms_number[ +/* YYNRULES -- Number of rules. */ +#define YYNRULES ]b4_rules_number[ +/* YYNSTATES -- Number of states. */ +#define YYNSTATES ]b4_states_number[ + +/* YYMAXUTOK -- Last valid token kind. */ +#define YYMAXUTOK ]b4_code_max[ + + +/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ +]b4_api_token_raw_if(dnl +[[#define YYTRANSLATE(YYX) YY_CAST (yysymbol_kind_t, YYX)]], +[[#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK \ + ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \ + : ]b4_symbol_prefix[YYUNDEF) + +/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM + as returned by yylex. */ +static const ]b4_int_type_for([b4_translate])[ yytranslate[] = +{ + ]b4_translate[ +};]])[ + +#if ]b4_api_PREFIX[DEBUG +]b4_integral_parser_table_define([rline], [b4_rline], + [[YYRLINE[YYN] -- Source line where rule number YYN was defined.]])[ +#endif + +/** Accessing symbol of state STATE. */ +#define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State]) + +#if ]b4_parse_error_case([simple], [b4_api_PREFIX[DEBUG || ]b4_token_table_flag], [[1]])[ +/* The user-facing name of the symbol whose (internal) number is + YYSYMBOL. No bounds checking. */ +static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED; + +]b4_parse_error_bmatch([simple\|verbose], +[[/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + ]b4_tname[ +}; + +static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + return yytname[yysymbol]; +}]], +[[static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + static const char *const yy_sname[] = + { + ]b4_symbol_names[ + };]b4_has_translations_if([[ + /* YYTRANSLATABLE[SYMBOL-NUM] -- Whether YY_SNAME[SYMBOL-NUM] is + internationalizable. */ + static ]b4_int_type_for([b4_translatable])[ yytranslatable[] = + { + ]b4_translatable[ + }; + return (yysymbol < YYNTOKENS && yytranslatable[yysymbol] + ? _(yy_sname[yysymbol]) + : yy_sname[yysymbol]);]], [[ + return yy_sname[yysymbol];]])[ +}]])[ +#endif + +#define YYPACT_NINF (]b4_pact_ninf[) + +#define yypact_value_is_default(Yyn) \ + ]b4_table_value_equals([[pact]], [[Yyn]], [b4_pact_ninf], [YYPACT_NINF])[ + +#define YYTABLE_NINF (]b4_table_ninf[) + +#define yytable_value_is_error(Yyn) \ + ]b4_table_value_equals([[table]], [[Yyn]], [b4_table_ninf], [YYTABLE_NINF])[ + +]b4_parser_tables_define[ + +enum { YYENOMEM = -2 }; + +#define yyerrok (yyerrstatus = 0) +#define yyclearin (yychar = ]b4_symbol(empty, id)[) + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab +#define YYNOMEM goto yyexhaustedlab + + +#define YYRECOVERING() (!!yyerrstatus) + +#define YYBACKUP(Token, Value) \ + do \ + if (yychar == ]b4_symbol(empty, id)[) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (yylen); \ + yystate = *yyssp; \]b4_lac_if([[ + YY_LAC_DISCARD ("YYBACKUP"); \]])[ + goto yybackup; \ + } \ + else \ + { \ + yyerror (]b4_yyerror_args[YY_("syntax error: cannot back up")); \ + YYERROR; \ + } \ + while (0) + +/* Backward compatibility with an undocumented macro. + Use ]b4_symbol(error, id)[ or ]b4_symbol(undef, id)[. */ +#define YYERRCODE ]b4_symbol(undef, id)[ +]b4_locations_if([[ +]b4_yylloc_default_define[ +#define YYRHSLOC(Rhs, K) ((Rhs)[K]) +]])[ + +/* Enable debugging if requested. */ +#if ]b4_api_PREFIX[DEBUG + +# ifndef YYFPRINTF +# include /* INFRINGES ON USER NAME SPACE */ +# define YYFPRINTF fprintf +# endif + +# define YYDPRINTF(Args) \ +do { \ + if (yydebug) \ + YYFPRINTF Args; \ +} while (0) + +]b4_yylocation_print_define[ + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Kind, Value]b4_locations_if([, Location])[]b4_user_args[); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (0) + +]b4_yy_symbol_print_define[ + +/*------------------------------------------------------------------. +| yy_stack_print -- Print the state stack from its BOTTOM up to its | +| TOP (included). | +`------------------------------------------------------------------*/ + +static void +yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop) +{ + YYFPRINTF (stderr, "Stack now"); + for (; yybottom <= yytop; yybottom++) + { + int yybot = *yybottom; + YYFPRINTF (stderr, " %d", yybot); + } + YYFPRINTF (stderr, "\n"); +} + +# define YY_STACK_PRINT(Bottom, Top) \ +do { \ + if (yydebug) \ + yy_stack_print ((Bottom), (Top)); \ +} while (0) + + +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ + +static void +yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp,]b4_locations_if([[ YYLTYPE *yylsp,]])[ + int yyrule]b4_user_formals[) +{ + int yylno = yyrline[yyrule]; + int yynrhs = yyr2[yyrule]; + int yyi; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YYFPRINTF (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, + YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]), + &]b4_rhs_value(yynrhs, yyi + 1)[]b4_locations_if([, + &]b4_rhs_location(yynrhs, yyi + 1))[]b4_user_args[); + YYFPRINTF (stderr, "\n"); + } +} + +# define YY_REDUCE_PRINT(Rule) \ +do { \ + if (yydebug) \ + yy_reduce_print (yyssp, yyvsp, ]b4_locations_if([yylsp, ])[Rule]b4_user_args[); \ +} while (0) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; +#else /* !]b4_api_PREFIX[DEBUG */ +# define YYDPRINTF(Args) ((void) 0) +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) +# define YY_STACK_PRINT(Bottom, Top) +# define YY_REDUCE_PRINT(Rule) +#endif /* !]b4_api_PREFIX[DEBUG */ + + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH ]b4_stack_depth_init[ +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH ]b4_stack_depth_max[ +#endif]b4_push_if([[ +/* Parser data structure. */ +struct yypstate + {]b4_declare_parser_state_variables[ + /* Whether this instance has not started parsing yet. + * If 2, it corresponds to a finished parsing. */ + int yynew; + };]b4_pure_if([], [[ + +/* Whether the only allowed instance of yypstate is allocated. */ +static char yypstate_allocated = 0;]])])[ +]b4_lac_if([[ + +/* Given a state stack such that *YYBOTTOM is its bottom, such that + *YYTOP is either its top or is YYTOP_EMPTY to indicate an empty + stack, and such that *YYCAPACITY is the maximum number of elements it + can hold without a reallocation, make sure there is enough room to + store YYADD more elements. If not, allocate a new stack using + YYSTACK_ALLOC, copy the existing elements, and adjust *YYBOTTOM, + *YYTOP, and *YYCAPACITY to reflect the new capacity and memory + location. If *YYBOTTOM != YYBOTTOM_NO_FREE, then free the old stack + using YYSTACK_FREE. Return 0 if successful or if no reallocation is + required. Return YYENOMEM if memory is exhausted. */ +static int +yy_lac_stack_realloc (YYPTRDIFF_T *yycapacity, YYPTRDIFF_T yyadd, +#if ]b4_api_PREFIX[DEBUG + char const *yydebug_prefix, + char const *yydebug_suffix, +#endif + yy_state_t **yybottom, + yy_state_t *yybottom_no_free, + yy_state_t **yytop, yy_state_t *yytop_empty) +{ + YYPTRDIFF_T yysize_old = + *yytop == yytop_empty ? 0 : *yytop - *yybottom + 1; + YYPTRDIFF_T yysize_new = yysize_old + yyadd; + if (*yycapacity < yysize_new) + { + YYPTRDIFF_T yyalloc = 2 * yysize_new; + yy_state_t *yybottom_new; + /* Use YYMAXDEPTH for maximum stack size given that the stack + should never need to grow larger than the main state stack + needs to grow without LAC. */ + if (YYMAXDEPTH < yysize_new) + { + YYDPRINTF ((stderr, "%smax size exceeded%s", yydebug_prefix, + yydebug_suffix)); + return YYENOMEM; + } + if (YYMAXDEPTH < yyalloc) + yyalloc = YYMAXDEPTH; + yybottom_new = + YY_CAST (yy_state_t *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, + yyalloc * YYSIZEOF (*yybottom_new)))); + if (!yybottom_new) + { + YYDPRINTF ((stderr, "%srealloc failed%s", yydebug_prefix, + yydebug_suffix)); + return YYENOMEM; + } + if (*yytop != yytop_empty) + { + YYCOPY (yybottom_new, *yybottom, yysize_old); + *yytop = yybottom_new + (yysize_old - 1); + } + if (*yybottom != yybottom_no_free) + YYSTACK_FREE (*yybottom); + *yybottom = yybottom_new; + *yycapacity = yyalloc;]m4_if(b4_percent_define_get([[parse.lac.memory-trace]]), + [full], [[ + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "%srealloc to %ld%s", yydebug_prefix, + YY_CAST (long, yyalloc), yydebug_suffix)); + YY_IGNORE_USELESS_CAST_END]])[ + } + return 0; +} + +/* Establish the initial context for the current lookahead if no initial + context is currently established. + + We define a context as a snapshot of the parser stacks. We define + the initial context for a lookahead as the context in which the + parser initially examines that lookahead in order to select a + syntactic action. Thus, if the lookahead eventually proves + syntactically unacceptable (possibly in a later context reached via a + series of reductions), the initial context can be used to determine + the exact set of tokens that would be syntactically acceptable in the + lookahead's place. Moreover, it is the context after which any + further semantic actions would be erroneous because they would be + determined by a syntactically unacceptable token. + + YY_LAC_ESTABLISH should be invoked when a reduction is about to be + performed in an inconsistent state (which, for the purposes of LAC, + includes consistent states that don't know they're consistent because + their default reductions have been disabled). Iff there is a + lookahead token, it should also be invoked before reporting a syntax + error. This latter case is for the sake of the debugging output. + + For parse.lac=full, the implementation of YY_LAC_ESTABLISH is as + follows. If no initial context is currently established for the + current lookahead, then check if that lookahead can eventually be + shifted if syntactic actions continue from the current context. + Report a syntax error if it cannot. */ +#define YY_LAC_ESTABLISH \ +do { \ + if (!yy_lac_established) \ + { \ + YYDPRINTF ((stderr, \ + "LAC: initial context established for %s\n", \ + yysymbol_name (yytoken))); \ + yy_lac_established = 1; \ + switch (yy_lac (yyesa, &yyes, &yyes_capacity, yyssp, yytoken)) \ + { \ + case YYENOMEM: \ + YYNOMEM; \ + case 1: \ + goto yyerrlab; \ + } \ + } \ +} while (0) + +/* Discard any previous initial lookahead context because of Event, + which may be a lookahead change or an invalidation of the currently + established initial context for the current lookahead. + + The most common example of a lookahead change is a shift. An example + of both cases is syntax error recovery. That is, a syntax error + occurs when the lookahead is syntactically erroneous for the + currently established initial context, so error recovery manipulates + the parser stacks to try to find a new initial context in which the + current lookahead is syntactically acceptable. If it fails to find + such a context, it discards the lookahead. */ +#if ]b4_api_PREFIX[DEBUG +# define YY_LAC_DISCARD(Event) \ +do { \ + if (yy_lac_established) \ + { \ + YYDPRINTF ((stderr, "LAC: initial context discarded due to " \ + Event "\n")); \ + yy_lac_established = 0; \ + } \ +} while (0) +#else +# define YY_LAC_DISCARD(Event) yy_lac_established = 0 +#endif + +/* Given the stack whose top is *YYSSP, return 0 iff YYTOKEN can + eventually (after perhaps some reductions) be shifted, return 1 if + not, or return YYENOMEM if memory is exhausted. As preconditions and + postconditions: *YYES_CAPACITY is the allocated size of the array to + which *YYES points, and either *YYES = YYESA or *YYES points to an + array allocated with YYSTACK_ALLOC. yy_lac may overwrite the + contents of either array, alter *YYES and *YYES_CAPACITY, and free + any old *YYES other than YYESA. */ +static int +yy_lac (yy_state_t *yyesa, yy_state_t **yyes, + YYPTRDIFF_T *yyes_capacity, yy_state_t *yyssp, yysymbol_kind_t yytoken) +{ + yy_state_t *yyes_prev = yyssp; + yy_state_t *yyesp = yyes_prev; + /* Reduce until we encounter a shift and thereby accept the token. */ + YYDPRINTF ((stderr, "LAC: checking lookahead %s:", yysymbol_name (yytoken))); + if (yytoken == ]b4_symbol_prefix[YYUNDEF) + { + YYDPRINTF ((stderr, " Always Err\n")); + return 1; + } + while (1) + { + int yyrule = yypact[+*yyesp]; + if (yypact_value_is_default (yyrule) + || (yyrule += yytoken) < 0 || YYLAST < yyrule + || yycheck[yyrule] != yytoken) + { + /* Use the default action. */ + yyrule = yydefact[+*yyesp]; + if (yyrule == 0) + { + YYDPRINTF ((stderr, " Err\n")); + return 1; + } + } + else + { + /* Use the action from yytable. */ + yyrule = yytable[yyrule]; + if (yytable_value_is_error (yyrule)) + { + YYDPRINTF ((stderr, " Err\n")); + return 1; + } + if (0 < yyrule) + { + YYDPRINTF ((stderr, " S%d\n", yyrule)); + return 0; + } + yyrule = -yyrule; + } + /* By now we know we have to simulate a reduce. */ + YYDPRINTF ((stderr, " R%d", yyrule - 1)); + { + /* Pop the corresponding number of values from the stack. */ + YYPTRDIFF_T yylen = yyr2[yyrule]; + /* First pop from the LAC stack as many tokens as possible. */ + if (yyesp != yyes_prev) + { + YYPTRDIFF_T yysize = yyesp - *yyes + 1; + if (yylen < yysize) + { + yyesp -= yylen; + yylen = 0; + } + else + { + yyesp = yyes_prev; + yylen -= yysize; + } + } + /* Only afterwards look at the main stack. */ + if (yylen) + yyesp = yyes_prev -= yylen; + } + /* Push the resulting state of the reduction. */ + { + yy_state_fast_t yystate; + { + const int yylhs = yyr1[yyrule] - YYNTOKENS; + const int yyi = yypgoto[yylhs] + *yyesp; + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyesp + ? yytable[yyi] + : yydefgoto[yylhs]); + } + if (yyesp == yyes_prev) + { + yyesp = *yyes; + YY_IGNORE_USELESS_CAST_BEGIN + *yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + } + else + { + if (yy_lac_stack_realloc (yyes_capacity, 1, +#if ]b4_api_PREFIX[DEBUG + " (", ")", +#endif + yyes, yyesa, &yyesp, yyes_prev)) + { + YYDPRINTF ((stderr, "\n")); + return YYENOMEM; + } + YY_IGNORE_USELESS_CAST_BEGIN + *++yyesp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + } + YYDPRINTF ((stderr, " G%d", yystate)); + } + } +}]])[ + +]b4_parse_error_case([simple], [], +[[/* Context of a parse error. */ +typedef struct +{]b4_push_if([[ + yypstate* yyps;]], [[ + yy_state_t *yyssp;]b4_lac_if([[ + yy_state_t *yyesa; + yy_state_t **yyes; + YYPTRDIFF_T *yyes_capacity;]])])[ + yysymbol_kind_t yytoken;]b4_locations_if([[ + YYLTYPE *yylloc;]])[ +} yypcontext_t; + +/* Put in YYARG at most YYARGN of the expected tokens given the + current YYCTX, and return the number of tokens stored in YYARG. If + YYARG is null, return the number of expected tokens (guaranteed to + be less than YYNTOKENS). Return YYENOMEM on memory exhaustion. + Return 0 if there are more than YYARGN expected tokens, yet fill + YYARG up to YYARGN. */]b4_push_if([[ +static int +yypstate_expected_tokens (yypstate *yyps, + yysymbol_kind_t yyarg[], int yyargn)]], [[ +static int +yypcontext_expected_tokens (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn)]])[ +{ + /* Actual size of YYARG. */ + int yycount = 0; +]b4_lac_if([[ + int yyx; + for (yyx = 0; yyx < YYNTOKENS; ++yyx) + { + yysymbol_kind_t yysym = YY_CAST (yysymbol_kind_t, yyx); + if (yysym != ]b4_symbol(error, kind)[ && yysym != ]b4_symbol_prefix[YYUNDEF) + switch (yy_lac (]b4_push_if([[yyps->yyesa, &yyps->yyes, &yyps->yyes_capacity, yyps->yyssp, yysym]], + [[yyctx->yyesa, yyctx->yyes, yyctx->yyes_capacity, yyctx->yyssp, yysym]])[)) + { + case YYENOMEM: + return YYENOMEM; + case 1: + continue; + default: + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = yysym; + } + }]], +[[ int yyn = yypact@{+*]b4_push_if([yyps], [yyctx])[->yyssp@}; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != ]b4_symbol(error, kind)[ + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (!yyarg) + ++yycount; + else if (yycount == yyargn) + return 0; + else + yyarg[yycount++] = YY_CAST (yysymbol_kind_t, yyx); + } + }]])[ + if (yyarg && yycount == 0 && 0 < yyargn) + yyarg[0] = ]b4_symbol(empty, kind)[; + return yycount; +} + +]b4_push_if([[ +/* Similar to the previous function. */ +static int +yypcontext_expected_tokens (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn) +{ + return yypstate_expected_tokens (yyctx->yyps, yyarg, yyargn); +}]])[ +]])[ + +]b4_parse_error_bmatch( + [custom], +[[/* The kind of the lookahead of this context. */ +static yysymbol_kind_t +yypcontext_token (const yypcontext_t *yyctx) YY_ATTRIBUTE_UNUSED; + +static yysymbol_kind_t +yypcontext_token (const yypcontext_t *yyctx) +{ + return yyctx->yytoken; +} + +]b4_locations_if([[/* The location of the lookahead of this context. */ +static YYLTYPE * +yypcontext_location (const yypcontext_t *yyctx) YY_ATTRIBUTE_UNUSED; + +static YYLTYPE * +yypcontext_location (const yypcontext_t *yyctx) +{ + return yyctx->yylloc; +}]])[ + +/* User defined function to report a syntax error. */ +static int +yyreport_syntax_error (const yypcontext_t *yyctx]b4_user_formals[);]], + [detailed\|verbose], +[[#ifndef yystrlen +# if defined __GLIBC__ && defined _STRING_H +# define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S))) +# else +/* Return the length of YYSTR. */ +static YYPTRDIFF_T +yystrlen (const char *yystr) +{ + YYPTRDIFF_T yylen; + for (yylen = 0; yystr[yylen]; yylen++) + continue; + return yylen; +} +# endif +#endif + +#ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +static char * +yystpcpy (char *yydest, const char *yysrc) +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +#endif + +]b4_parse_error_case( + [verbose], +[[#ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYPTRDIFF_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYPTRDIFF_T yyn = 0; + char const *yyp = yystr; + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + else + goto append; + + append: + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (yyres) + return yystpcpy (yyres, yystr) - yyres; + else + return yystrlen (yystr); +} +#endif +]])[ + +static int +yy_syntax_error_arguments (const yypcontext_t *yyctx, + yysymbol_kind_t yyarg[], int yyargn) +{ + /* Actual size of YYARG. */ + int yycount = 0; + /* There are many possibilities here to consider: + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar.]b4_lac_if([[ + In the first two cases, it might appear that the current syntax + error should have been detected in the previous state when yy_lac + was invoked. However, at that time, there might have been a + different syntax error that discarded a different initial context + during error recovery, leaving behind the current lookahead.]], [[ + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state.]])[ + */ + if (yyctx->yytoken != ]b4_symbol(empty, kind)[) + { + int yyn;]b4_lac_if([[ + YYDPRINTF ((stderr, "Constructing syntax error message\n"));]])[ + if (yyarg) + yyarg[yycount] = yyctx->yytoken; + ++yycount; + yyn = yypcontext_expected_tokens (yyctx, + yyarg ? yyarg + 1 : yyarg, yyargn - 1); + if (yyn == YYENOMEM) + return YYENOMEM;]b4_lac_if([[ + else if (yyn == 0) + YYDPRINTF ((stderr, "No expected tokens.\n"));]])[ + else + yycount += yyn; + } + return yycount; +} + +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP.]b4_lac_if([[ In order to see if a particular token T is a + valid looakhead, invoke yy_lac (YYESA, YYES, YYES_CAPACITY, YYSSP, T).]])[ + + Return 0 if *YYMSG was successfully written. Return -1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return YYENOMEM if the + required number of bytes is too large to store]b4_lac_if([[ or if + yy_lac returned YYENOMEM]])[. */ +static int +yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg, + const yypcontext_t *yyctx) +{ + enum { YYARGS_MAX = 5 }; + /* Internationalized format string. */ + const char *yyformat = YY_NULLPTR; + /* Arguments of yyformat: reported tokens (one for the "unexpected", + one per "expected"). */ + yysymbol_kind_t yyarg[YYARGS_MAX]; + /* Cumulated lengths of YYARG. */ + YYPTRDIFF_T yysize = 0; + + /* Actual size of YYARG. */ + int yycount = yy_syntax_error_arguments (yyctx, yyarg, YYARGS_MAX); + if (yycount == YYENOMEM) + return YYENOMEM; + + switch (yycount) + { +#define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + default: /* Avoid compiler warnings. */ + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +#undef YYCASE_ + } + + /* Compute error message size. Don't count the "%s"s, but reserve + room for the terminator. */ + yysize = yystrlen (yyformat) - 2 * yycount + 1; + { + int yyi; + for (yyi = 0; yyi < yycount; ++yyi) + { + YYPTRDIFF_T yysize1 + = yysize + ]b4_parse_error_case( + [verbose], [[yytnamerr (YY_NULLPTR, yytname[yyarg[yyi]])]], + [[yystrlen (yysymbol_name (yyarg[yyi]))]]);[ + if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM) + yysize = yysize1; + else + return YYENOMEM; + } + } + + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return -1; + } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + {]b4_parse_error_case([verbose], [[ + yyp += yytnamerr (yyp, yytname[yyarg[yyi++]]);]], [[ + yyp = yystpcpy (yyp, yysymbol_name (yyarg[yyi++]));]])[ + yyformat += 2; + } + else + { + ++yyp; + ++yyformat; + } + } + return 0; +} +]])[ + +]b4_yydestruct_define[ + +]b4_pure_if([], [b4_declare_scanner_communication_variables])[ + +]b4_push_if([b4_pull_if([[ + +int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + yypstate *yyps = yypstate_new (); + if (!yyps) + {]b4_pure_if([b4_locations_if([[ + static YYLTYPE yyloc_default][]b4_yyloc_default[; + YYLTYPE yylloc = yyloc_default;]])[ + yyerror (]b4_yyerror_args[YY_("memory exhausted"));]], [[ + if (!yypstate_allocated) + yyerror (]b4_yyerror_args[YY_("memory exhausted"));]])[ + return 2; + } + int yystatus = yypull_parse (yyps]b4_user_args[); + yypstate_delete (yyps); + return yystatus; +} + +int +yypull_parse (yypstate *yyps]b4_user_formals[) +{ + YY_ASSERT (yyps);]b4_pure_if([b4_locations_if([[ + static YYLTYPE yyloc_default][]b4_yyloc_default[; + YYLTYPE yylloc = yyloc_default;]])])[ + int yystatus; + do { +]b4_pure_if([[ YYSTYPE yylval; + int ]])[yychar = ]b4_yylex[; + yystatus = yypush_parse (yyps]b4_pure_if([[, yychar, &yylval]b4_locations_if([[, &yylloc]])])m4_ifset([b4_parse_param], [, b4_args(b4_parse_param)])[); + } while (yystatus == YYPUSH_MORE); + return yystatus; +}]])[ + +]b4_parse_state_variable_macros([b4_pstate_macro_define])[ + +/* Initialize the parser data structure. */ +static void +yypstate_clear (yypstate *yyps) +{ + yynerrs = 0; + yystate = 0; + yyerrstatus = 0; + + yyssp = yyss; + yyvsp = yyvs;]b4_locations_if([[ + yylsp = yyls;]])[ + + /* Initialize the state stack, in case yypcontext_expected_tokens is + called before the first call to yyparse. */ + *yyssp = 0; + yyps->yynew = 1; +} + +/* Initialize the parser data structure. */ +yypstate * +yypstate_new (void) +{ + yypstate *yyps;]b4_pure_if([], [[ + if (yypstate_allocated) + return YY_NULLPTR;]])[ + yyps = YY_CAST (yypstate *, YYMALLOC (sizeof *yyps)); + if (!yyps) + return YY_NULLPTR;]b4_pure_if([], [[ + yypstate_allocated = 1;]])[ + yystacksize = YYINITDEPTH; + yyss = yyssa; + yyvs = yyvsa;]b4_locations_if([[ + yyls = yylsa;]])[]b4_lac_if([[ + yyes = yyesa; + yyes_capacity = ]b4_percent_define_get([[parse.lac.es-capacity-initial]])[; + if (YYMAXDEPTH < yyes_capacity) + yyes_capacity = YYMAXDEPTH;]])[ + yypstate_clear (yyps); + return yyps; +} + +void +yypstate_delete (yypstate *yyps) +{ + if (yyps) + { +#ifndef yyoverflow + /* If the stack was reallocated but the parse did not complete, then the + stack still needs to be freed. */ + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif]b4_lac_if([[ + if (yyes != yyesa) + YYSTACK_FREE (yyes);]])[ + YYFREE (yyps);]b4_pure_if([], [[ + yypstate_allocated = 0;]])[ + } +} +]])[ + +]b4_push_if([[ +/*---------------. +| yypush_parse. | +`---------------*/ + +int +yypush_parse (yypstate *yyps]b4_pure_if([[, + int yypushed_char, YYSTYPE const *yypushed_val]b4_locations_if([[, YYLTYPE *yypushed_loc]])])b4_user_formals[)]], +[[ +/*----------. +| yyparse. | +`----------*/ + +]m4_ifdef([b4_start_symbols], +[[// Extract data from the parser. +typedef struct +{ + YYSTYPE yyvalue; + int yynerrs; +} yy_parse_impl_t; + +// Run a full parse, using YYCHAR as switching token. +static int +yy_parse_impl (int yychar, yy_parse_impl_t *yyimpl]m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])[); + +]m4_map([_b4_define_sub_yyparse], m4_defn([b4_start_symbols]))[ + +int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[) +{ + return yy_parse_impl (]b4_symbol(_b4_first_switching_token, id)[, YY_NULLPTR]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[); +} + +static int +yy_parse_impl (int yychar, yy_parse_impl_t *yyimpl]m4_ifset([b4_parse_param], [, b4_formals(b4_parse_param)])[)]], +[[int +yyparse (]m4_ifset([b4_parse_param], [b4_formals(b4_parse_param)], [void])[)]])])[ +{]b4_pure_if([b4_declare_scanner_communication_variables +])b4_push_if([b4_pure_if([], [[ + int yypushed_char = yychar; + YYSTYPE yypushed_val = yylval;]b4_locations_if([[ + YYLTYPE yypushed_loc = yylloc;]]) +])], + [b4_declare_parser_state_variables([init]) +])b4_lac_if([[ + /* Whether LAC context is established. A Boolean. */ + int yy_lac_established = 0;]])[ + int yyn; + /* The return value of yyparse. */ + int yyresult; + /* Lookahead symbol kind. */ + yysymbol_kind_t yytoken = ]b4_symbol(empty, kind)[; + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval;]b4_locations_if([[ + YYLTYPE yyloc; + + /* The locations where the error started and ended. */ + YYLTYPE yyerror_range[3];]])[ + +]b4_parse_error_bmatch([detailed\|verbose], +[[ /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;]])[ + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)]b4_locations_if([, yylsp -= (N)])[) + + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0;]b4_push_if([[ + + switch (yyps->yynew) + { + case 0: + yyn = yypact[yystate]; + goto yyread_pushed_token; + + case 2: + yypstate_clear (yyps); + break; + + default: + break; + }]])[ + + YYDPRINTF ((stderr, "Starting parse\n")); + +]m4_ifdef([b4_start_symbols], [], +[[ yychar = ]b4_symbol(empty, id)[; /* Cause a token to be read. */ +]])[ +]m4_ifdef([b4_initial_action], [ +b4_dollar_pushdef([m4_define([b4_dollar_dollar_used])yylval], [], [], + [b4_push_if([b4_pure_if([*])yypushed_loc], [yylloc])])dnl +b4_user_initial_action +b4_dollar_popdef[]dnl +m4_ifdef([b4_dollar_dollar_used],[[ yyvsp[0] = yylval; +]])])dnl +b4_locations_if([[ yylsp[0] = ]b4_push_if([b4_pure_if([*])yypushed_loc], [yylloc])[; +]])dnl +[ goto yysetstate; + + +/*------------------------------------------------------------. +| yynewstate -- push a new state, which is found in yystate. | +`------------------------------------------------------------*/ +yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. So pushing a state here evens the stacks. */ + yyssp++; + + +/*--------------------------------------------------------------------. +| yysetstate -- set current state (the top of the stack) to yystate. | +`--------------------------------------------------------------------*/ +yysetstate: + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + YY_ASSERT (0 <= yystate && yystate < YYNSTATES); + YY_IGNORE_USELESS_CAST_BEGIN + *yyssp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + YY_STACK_PRINT (yyss, yyssp); + + if (yyss + yystacksize - 1 <= yyssp) +#if !defined yyoverflow && !defined YYSTACK_RELOCATE + YYNOMEM; +#else + { + /* Get the current used size of the three stacks, in elements. */ + YYPTRDIFF_T yysize = yyssp - yyss + 1; + +# if defined yyoverflow + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into + memory. */ + yy_state_t *yyss1 = yyss; + YYSTYPE *yyvs1 = yyvs;]b4_locations_if([ + YYLTYPE *yyls1 = yyls;])[ + + /* Each stack pointer address is followed by the size of the + data in use in that stack, in bytes. This used to be a + conditional around just the two extra args, but that might + be undefined if yyoverflow is a macro. */ + yyoverflow (YY_("memory exhausted"), + &yyss1, yysize * YYSIZEOF (*yyssp), + &yyvs1, yysize * YYSIZEOF (*yyvsp),]b4_locations_if([ + &yyls1, yysize * YYSIZEOF (*yylsp),])[ + &yystacksize); + yyss = yyss1; + yyvs = yyvs1;]b4_locations_if([ + yyls = yyls1;])[ + } +# else /* defined YYSTACK_RELOCATE */ + /* Extend the stack our own way. */ + if (YYMAXDEPTH <= yystacksize) + YYNOMEM; + yystacksize *= 2; + if (YYMAXDEPTH < yystacksize) + yystacksize = YYMAXDEPTH; + + { + yy_state_t *yyss1 = yyss; + union yyalloc *yyptr = + YY_CAST (union yyalloc *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize)))); + if (! yyptr) + YYNOMEM; + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs);]b4_locations_if([ + YYSTACK_RELOCATE (yyls_alloc, yyls);])[ +# undef YYSTACK_RELOCATE + if (yyss1 != yyssa) + YYSTACK_FREE (yyss1); + } +# endif + + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1;]b4_locations_if([ + yylsp = yyls + yysize - 1;])[ + + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "Stack size increased to %ld\n", + YY_CAST (long, yystacksize))); + YY_IGNORE_USELESS_CAST_END + + if (yyss + yystacksize - 1 <= yyssp) + YYABORT; + } +#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */ + +]m4_ifdef([b4_start_symbols], [], [[ + if (yystate == YYFINAL) + YYACCEPT;]])[ + + goto yybackup; + + +/*-----------. +| yybackup. | +`-----------*/ +yybackup: + /* Do appropriate processing given the current state. Read a + lookahead token if we need one and don't already have one. */ + + /* First try to decide what to do without reference to lookahead token. */ + yyn = yypact[yystate]; + if (yypact_value_is_default (yyn)) + goto yydefault; + + /* Not known => get a lookahead token if don't already have one. */ + + /* YYCHAR is either empty, or end-of-input, or a valid lookahead. */ + if (yychar == ]b4_symbol(empty, id)[) + {]b4_push_if([[ + if (!yyps->yynew) + {]b4_use_push_for_pull_if([], [[ + YYDPRINTF ((stderr, "Return for a new token:\n"));]])[ + yyresult = YYPUSH_MORE; + goto yypushreturn; + } + yyps->yynew = 0;]b4_pure_if([], [[ + /* Restoring the pushed token is only necessary for the first + yypush_parse invocation since subsequent invocations don't overwrite + it before jumping to yyread_pushed_token. */ + yychar = yypushed_char; + yylval = yypushed_val;]b4_locations_if([[ + yylloc = yypushed_loc;]])])[ +yyread_pushed_token:]])[ + YYDPRINTF ((stderr, "Reading a token\n"));]b4_push_if([b4_pure_if([[ + yychar = yypushed_char; + if (yypushed_val) + yylval = *yypushed_val;]b4_locations_if([[ + if (yypushed_loc) + yylloc = *yypushed_loc;]])])], [[ + yychar = ]b4_yylex[;]])[ + } + + if (yychar <= ]b4_symbol(eof, [id])[) + { + yychar = ]b4_symbol(eof, [id])[; + yytoken = ]b4_symbol(eof, [kind])[; + YYDPRINTF ((stderr, "Now at end of input.\n")); + } + else if (yychar == ]b4_symbol(error, [id])[) + { + /* The scanner already issued an error message, process directly + to error recovery. But do not keep the error token as + lookahead, it is too special and may lead us to an endless + loop in error recovery. */ + yychar = ]b4_symbol(undef, [id])[; + yytoken = ]b4_symbol(error, [kind])[;]b4_locations_if([[ + yyerror_range[1] = yylloc;]])[ + goto yyerrlab1; + } + else + { + yytoken = YYTRANSLATE (yychar); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)]b4_lac_if([[ + { + YY_LAC_ESTABLISH; + goto yydefault; + }]], [[ + goto yydefault;]])[ + yyn = yytable[yyn]; + if (yyn <= 0) + { + if (yytable_value_is_error (yyn)) + goto yyerrlab; + yyn = -yyn;]b4_lac_if([[ + YY_LAC_ESTABLISH;]])[ + goto yyreduce; + } + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; + + /* Shift the lookahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + yystate = yyn; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END]b4_locations_if([ + *++yylsp = yylloc;])[ + + /* Discard the shifted token. */ + yychar = ]b4_symbol(empty, id)[;]b4_lac_if([[ + YY_LAC_DISCARD ("shift");]])[ + goto yynewstate; + + +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + +/*-----------------------------. +| yyreduce -- do a reduction. | +`-----------------------------*/ +yyreduce: + /* yyn is the number of a rule to reduce with. */ + yylen = yyr2[yyn]; + + /* If YYLEN is nonzero, implement the default value of the action: + '$$ = $1'. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. Assigning to YYVAL + unconditionally makes the parser a bit smaller, and it avoids a + GCC warning that YYVAL may be used uninitialized. */ + yyval = yyvsp[1-yylen]; + +]b4_locations_if( +[[ /* Default location. */ + YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); + yyerror_range[1] = yyloc;]])[ + YY_REDUCE_PRINT (yyn);]b4_lac_if([[ + { + int yychar_backup = yychar; + switch (yyn) + { +]b4_user_actions[ + default: break; + } + if (yychar_backup != yychar) + YY_LAC_DISCARD ("yychar change"); + }]], [[ + switch (yyn) + { +]b4_user_actions[ + default: break; + }]])[ + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ + YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc); + + YYPOPSTACK (yylen); + yylen = 0; + + *++yyvsp = yyval;]b4_locations_if([ + *++yylsp = yyloc;])[ + + /* Now 'shift' the result of the reduction. Determine what state + that goes to, based on the state we popped back to and the rule + number reduced by. */ + { + const int yylhs = yyr1[yyn] - YYNTOKENS; + const int yyi = yypgoto[yylhs] + *yyssp; + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp + ? yytable[yyi] + : yydefgoto[yylhs]); + } + + goto yynewstate; + + +/*--------------------------------------. +| yyerrlab -- here on detecting error. | +`--------------------------------------*/ +yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == ]b4_symbol(empty, id)[ ? ]b4_symbol(empty, kind)[ : YYTRANSLATE (yychar); + /* If not already recovering from an error, report this error. */ + if (!yyerrstatus) + { + ++yynerrs; +]b4_parse_error_case( + [custom], +[[ { + yypcontext_t yyctx + = {]b4_push_if([[yyps]], [[yyssp]b4_lac_if([[, yyesa, &yyes, &yyes_capacity]])])[, yytoken]b4_locations_if([[, &yylloc]])[};]b4_lac_if([[ + if (yychar != ]b4_symbol(empty, id)[) + YY_LAC_ESTABLISH;]])[ + if (yyreport_syntax_error (&yyctx]m4_ifset([b4_parse_param], + [[, ]b4_args(b4_parse_param)])[) == 2) + YYNOMEM; + }]], + [simple], +[[ yyerror (]b4_yyerror_args[YY_("syntax error"));]], +[[ { + yypcontext_t yyctx + = {]b4_push_if([[yyps]], [[yyssp]b4_lac_if([[, yyesa, &yyes, &yyes_capacity]])])[, yytoken]b4_locations_if([[, &yylloc]])[}; + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status;]b4_lac_if([[ + if (yychar != ]b4_symbol(empty, id)[) + YY_LAC_ESTABLISH;]])[ + yysyntax_error_status = yysyntax_error (&yymsg_alloc, &yymsg, &yyctx); + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == -1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = YY_CAST (char *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc))); + if (yymsg) + { + yysyntax_error_status + = yysyntax_error (&yymsg_alloc, &yymsg, &yyctx); + yymsgp = yymsg; + } + else + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = YYENOMEM; + } + } + yyerror (]b4_yyerror_args[yymsgp); + if (yysyntax_error_status == YYENOMEM) + YYNOMEM; + }]])[ + } +]b4_locations_if([[ + yyerror_range[1] = yylloc;]])[ + if (yyerrstatus == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= ]b4_symbol(eof, [id])[) + { + /* Return failure if at end of input. */ + if (yychar == ]b4_symbol(eof, [id])[) + YYABORT; + } + else + { + yydestruct ("Error: discarding", + yytoken, &yylval]b4_locations_if([, &yylloc])[]b4_user_args[); + yychar = ]b4_symbol(empty, id)[; + } + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + goto yyerrlab1; + + +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: + /* Pacify compilers when the user code never invokes YYERROR and the + label yyerrorlab therefore never appears in user code. */ + if (0) + YYERROR; + ++yynerrs; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + yystate = *yyssp; + goto yyerrlab1; + + +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ + + /* Pop stack until we find a state that shifts the error token. */ + for (;;) + { + yyn = yypact[yystate]; + if (!yypact_value_is_default (yyn)) + { + yyn += ]b4_symbol(error, kind)[; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == ]b4_symbol(error, kind)[) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; + +]b4_locations_if([[ yyerror_range[1] = *yylsp;]])[ + yydestruct ("Error: popping", + YY_ACCESSING_SYMBOL (yystate), yyvsp]b4_locations_if([, yylsp])[]b4_user_args[); + YYPOPSTACK (1); + yystate = *yyssp; + YY_STACK_PRINT (yyss, yyssp); + }]b4_lac_if([[ + + /* If the stack popping above didn't lose the initial context for the + current lookahead token, the shift below will for sure. */ + YY_LAC_DISCARD ("error recovery");]])[ + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END +]b4_locations_if([[ + yyerror_range[2] = yylloc; + ++yylsp; + YYLLOC_DEFAULT (*yylsp, yyerror_range, 2);]])[ + + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp); + + yystate = yyn; + goto yynewstate; + + +/*-------------------------------------. +| yyacceptlab -- YYACCEPT comes here. | +`-------------------------------------*/ +yyacceptlab: + yyresult = 0; + goto yyreturnlab; + + +/*-----------------------------------. +| yyabortlab -- YYABORT comes here. | +`-----------------------------------*/ +yyabortlab: + yyresult = 1; + goto yyreturnlab; + + +/*-----------------------------------------------------------. +| yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here. | +`-----------------------------------------------------------*/ +yyexhaustedlab: + yyerror (]b4_yyerror_args[YY_("memory exhausted")); + yyresult = 2; + goto yyreturnlab; + + +/*----------------------------------------------------------. +| yyreturnlab -- parsing is finished, clean up and return. | +`----------------------------------------------------------*/ +yyreturnlab: + if (yychar != ]b4_symbol(empty, id)[) + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval]b4_locations_if([, &yylloc])[]b4_user_args[); + } + /* Do not reclaim the symbols of the rule whose action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + YY_ACCESSING_SYMBOL (+*yyssp), yyvsp]b4_locations_if([, yylsp])[]b4_user_args[); + YYPOPSTACK (1); + }]b4_push_if([[ + yyps->yynew = 2; + goto yypushreturn; + + +/*-------------------------. +| yypushreturn -- return. | +`-------------------------*/ +yypushreturn:]], [[ +#ifndef yyoverflow + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif]b4_lac_if([[ + if (yyes != yyesa) + YYSTACK_FREE (yyes);]])])[ +]b4_parse_error_bmatch([detailed\|verbose], +[[ if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg);]])[]m4_ifdef([b4_start_symbols], [[ + if (yyimpl) + yyimpl->yynerrs = yynerrs;]])[ + return yyresult; +} +]b4_push_if([b4_parse_state_variable_macros([b4_macro_undef])])[ +]b4_percent_code_get([[epilogue]])[]dnl +b4_epilogue[]dnl +b4_output_end diff --git a/bison/RelWithDebInfo/data/xslt/bison.xsl b/bison/RelWithDebInfo/data/xslt/bison.xsl new file mode 100644 index 0000000..989a343 --- /dev/null +++ b/bison/RelWithDebInfo/data/xslt/bison.xsl @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + s + + + r + + + + + + , + + + + + 0 + + + + + + + + + + + diff --git a/bison/RelWithDebInfo/data/xslt/xml2dot.xsl b/bison/RelWithDebInfo/data/xslt/xml2dot.xsl new file mode 100644 index 0000000..7715d1a --- /dev/null +++ b/bison/RelWithDebInfo/data/xslt/xml2dot.xsl @@ -0,0 +1,401 @@ + + + + + + + + + + + + + + + // Generated by GNU Bison + + . + // Report bugs to < + + >. + // Home page: < + + >. + + + + + + + + digraph " + + + + " { + node [fontname = courier, shape = box, colorscheme = paired6] + edge [fontname = courier] + + + + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + label="[ + + + + + + , + + + ]", + + + + style=solid] + + + + + + + + + 3 + + + 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + : + + + + . + + + + + + + . + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + -> " + + R + + + d + + " [ + + + + + + + + " + + R + + + d + + " [label=" + + + Acc", fillcolor=1 + + + R + + ", fillcolor= + + + + , shape=diamond, style=filled] + + + + + + + + + + dotted + + + solid + + + dashed + + + + + + + + + + + + + + + + + [label=" + State + + \n + + + + \l"] + + + + + + + + + + -> + + [style= + + + label=" + + + + " + + ] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/bison/RelWithDebInfo/data/xslt/xml2text.xsl b/bison/RelWithDebInfo/data/xslt/xml2text.xsl new file mode 100644 index 0000000..1fc5731 --- /dev/null +++ b/bison/RelWithDebInfo/data/xslt/xml2text.xsl @@ -0,0 +1,572 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Nonterminals useless in grammar + + + + + + + + + + + + Terminals unused in grammar + + + + + + + + + + + + + + Rules useless in grammar + + + + + + + + + + + Rules useless in parser due to conflicts + + + + + + + + + Grammar + + + + + + + + + + + + + + + + + + + + + + + + + Terminals, with rules where they appear + + + + + + Nonterminals, with rules where they appear + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + on@left: + + + + + + + + + on@right: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + State + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + : + + + + + + + + + + + + + + + + + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + + + shift, and go to state + + + + go to state + + + + + + + + + + + + + + error + ( + + ) + + + + + + + + + + + + [ + + + + accept + + + reduce using rule + + ( + + ) + + + + ] + + + + + + + + + + + + + Conflict between rule + + and token + + resolved as + + an + + + ( + + ). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/bison/RelWithDebInfo/data/xslt/xml2xhtml.xsl b/bison/RelWithDebInfo/data/xslt/xml2xhtml.xsl new file mode 100644 index 0000000..aaa5dba --- /dev/null +++ b/bison/RelWithDebInfo/data/xslt/xml2xhtml.xsl @@ -0,0 +1,765 @@ + + + + + + + + + + + + + + + + <xsl:value-of select="bison-xml-report/filename"/> + <xsl:text> - GNU Bison XML Automaton Report</xsl:text> + + + + + + +

      + + + + + +

      GNU Bison XML Automaton Report

      +

      + input grammar: +

      + + +

      Table of Contents

      + + + + + + +
      + + +

      + + Reductions +

      + + + +
      + + +

      + + Nonterminals useless in grammar +

      + + +

      + + + + + + +

      +
      + + + +

      + + Terminals unused in grammar +

      + + +

      + + + + + + + +

      +
      + + + +

      + + Rules useless in grammar +

      + + + +

      + + + + +

      +
      + + + + + +

      + + Rules useless in parser due to conflicts +

      + +

      + + + +

      + + + + + +

      + + Grammar +

      + +

      + + + + +

      + + + + + + + + + + + + + + + + + + + + + + + +

      + + Conflicts +

      + + + + + +

      + + +

      +
      + + + + + + + + + +
      + + + + + + conflicts: + + + + + + + + + + + + + + +

      + + Terminals, with rules where they appear +

      + +
        + + +
      + +
      + + +

      + + Nonterminals, with rules where they appear +

      + +
        + + +
      + + + + +
    5. + + + + + + + + +
    6. + +
      + + + +
    7. + + + + + + +
        + + + +
      • + on left: + + + +
      • + +
        + + +
      • + on right: + + + +
      • + +
        + +
      + +
    8. + +
      + + + +
      + + + + + + + + +

      + + Automaton +

      + + + +
      + + + + +

      + + + + + + State + +

      + +

      + + + + + + + + + + + + +

      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + %empty + + + + [ + + ] + + + + + + , + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + error + ( + + ) + + + + + + + + + + + + [ + + + + accept + + + + + + + + + ( + + ) + + + + ] + + + + + + + + + + + + + Conflict between + + + + + + + and token + + resolved as + + an + + + ( + + ). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + + + + + + diff --git a/bison/RelWithDebInfo/win_bison.exe b/bison/RelWithDebInfo/win_bison.exe new file mode 100644 index 0000000000000000000000000000000000000000..517b470b39814b055d9dc829053a959cec01394b GIT binary patch literal 805376 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%0AV^Pz_KCQ90iece|glbq| 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∓yTOv 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

      a?juB3UP$n5$>@TG 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 literal 0 HcmV?d00001 diff --git a/common/RelWithDebInfo/winflexbison_common.lib b/common/RelWithDebInfo/winflexbison_common.lib new file mode 100644 index 0000000000000000000000000000000000000000..a1731fb659f2d3bf84b27c59d44d3699e137245c GIT binary patch literal 2594984 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

      650^PmGqc#(8{95b;L(83 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

      VeoVZ%9(2OM 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.-H{l?o7GKh@B`{s&I0e2aV3OoG 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¯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

      Bp9qc2i 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%0An;|KqqIV=4= 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 literal 0 HcmV?d00001 diff --git a/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CL.read.1.tlog b/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..89203a42a52a2122ae5cbc497c2550be2b76ca38 GIT binary patch literal 582498 zcmeHwSyLQG6YV@Z;`)WKCE20y8w`suFkog7pdc>)|4-a|^K>ewmhOS+>ZNj| z69j0n+?|t^mCMQP|NYc>4Wsf0zIA`{ILq{Uy)&Q+|(s zc`yI&PX1r~KR5DsUz|__&fN*^O5KZd>ej-yqlR9u95lKv8aewavT`aivJq+cqmhZ{ z#aH3=v;57Cd|frNbS*#iZ~qj@{eAJVksADjlznVuCY3Y%>pPJtJo!Q-_;f2#)4q2t z+`pRXU64$C>U;U5kWl>oNjNnh1z+V|xYuX$Ry)`F`Xj%w(27B$lxRxmOZ$9%|9|LU z$g`dn^yvBaS@n5!B-G&sLh}y)gzx23ZbSxeXS{D4k-+2cy23s|eZGRDcXA_x+)b-@ zt{N?;w$~3AuH^GC8+|mN{)Ifi>j?5(UmDgz&0Ry4r@No)NmxmEh<9>>{m4)^l}phv zPm7nx?o4~X+WrLIeF&!tzuY68>&91kZm2tQc3a^^!2?xG7JQph+mFwuXMmV%6IsW; zPej}XU4JaUBEDORcEx>tFTW4AroP5I6TJ@|9DL#WG~ph=HhAJwuHE#udZ#jQ@}<+S z9U|303rF2iy2T}{47t{rR&&$16t!baJK2`b6zZSk-$rn6kzf?jFVR4p%Gx?!X^^qbG zeyGY%*mQd;iG6jN-8MsH^ZQo%ykj|6#p3k-z86_MZ#1KEwDidu3nQ)={-j6IF&n{~ zj^x+iTlA$Y_M&n=B3=!#W8Wv+>D-8S2B|!fn{rwFxnnwm&3!MHU??Z!rvWiMlY3o$ zK5aTx#)nY4`BpkArWO;!c`7yA_!#y`}LPJ&F!i>id-{eM_MV$i98b`gG;q z5Htbwz(x>}5aHFQ6Mp!{m3NzSE~ju>jlB!`^mukTryd#|hlnb@4SlUdtd~@Gt~#}6 zSse!A7T|)gh^)crstC!?)i;L68Vs%VX=@I%M$>AnIV&I_nXJKR*Kp-GmNgi=>)lv` zVU>&H))BG>W7A{{S%U#SAl_gNMp;E}uFWlyW(`Jn1#`|X)?oCl0k`T9)?k#^(X$3a zyAa;$H|V~ttifOnhE-ZYd$9&%NKcREebUT#eXKXX`K-Yxw>EmhtieDJU0;0JvS_Tq z(ApE$VDy)vI7bm{+p%gI(q|5@X^81f>m|yoTXsKlIK6g9S%dK`^_|8I)?oDOxi*jT zQTkcuslh1ANuDR^3A@5|W}o3l%t#KMG8p68 zR+n5q^2+TrGm^|m?laHR@c6u&*(AF!erwNTMv@uHQW=V~aj~{#MiQOo%t(f*z$zW= z3V(ZMv-y9A+!bDykvwar6lm`&vyxq1lD_kPzNuqYl37V+C7G4P?t`gj(yN!lS=I1i zP(cO+$6|~6$P2TQ%t{W$6x-+>=9h9-^{!1XIlq{dWLA<{$<6m}b?+UBHqX?1WM@;q zIjg!WhiG&5%oFRIDTq;CW+jJu5HU_}CsN-x&h0d_lFUjnE7`qS(K4sdtDIFmB-dx0 zRGkPfV~ng>Y_DQ%JA~5R&m5lRi=WLtNzST9y)g6%mBb9_)5SOWW>%6} z$zhw1b3dC|NoFOPm1I_uSxMOYX{SarE2+BHqAhOF{X;xDeD9vzoZD+|(EW1(WbC74 zFt7_J&Stfz!E=M|FmKUjq~gZLJIm_h#YP#Yx0d6??3HA%Bzq+-2ga$ql+1XTUP{^{=hsM7v;268q`~%PX;0k{fjU&sjC;u{fDo zNoFOPm1I_Os5KfhD+%o7RyImv6EEktwzt#yu2}U=9dnY*NirwNoFsFS%t@l=>C0kz zK3J^9oMeB@ggHs(Brjxt*{O6}zgzq&Rq3A>)6I6a%pY@-HbH!!K8d)-`?$%RV;0hr z)VuqN1(=g$PLerE^LhH_9pYQgPDyr30yVCa&&@NZ%t#h5TAa+BBy*DK-JG^|UgeJSTYrxEt$p=;?Dr}fwG`CwPU`B-lP>GM zv{|^=R)&11?o!%_6)VkpnjVFJ1Z#L9{+ZEOzmm)s7LfapzNur@l37b;Enmx84$D6mZ#L&EwANY zg~;+`OWRRntWmWxaIiQ03&)UHM2T*^0oeicgZw%nXn+hT$v zX1Ak?{%4D2y5z-2Jd;v}Jrb*}M(_}CrS!pXKW#kuu?g=E3@~%|QZzkZC^7 zQwA-+7l&ONUrPeRDQgYTO5#MjvD13wZHy;)DJxgG+Fa5U*YL2yI54$(a}0V$Own29MNzc6Y8Z@6e-N7h6iDP7xf`#fIqL$EjWlMb}%O zvwkcYd*|HTy5$Bxvyd=M@@ z$b67b4&_YyePAoJ1`U(2{hTIZQLW6w*3YL#*0itM4~^z&A_om^;!E?X6@y0rd<&>A zbRT-;P3!rvX}MS6m(pA&abIq~BVgDW0*?XlkPp79Z*|o~-tZed*^m?+)(S+8c+pei zgMUCQz_)L5XK=2bw4-wDTs&tl(T7rW-(ZOKPcW6Qjd-Ouf{E47J(yPjO|cSf>?PlT zI1!e@WZsjk$F&chbXa_rng#KpxAZ0|MOI7YMb4C}b>oTn(x_dOd5I#rX#42IN~*M_ zb>ww3T1pF0={xbwJl#onWFG3bQ2VLgA#UQz6_4O)Z6s#CtWH(xLp(GVyS_Z7RH)i;Ve$#_l15}`EK*vcc9+|?{3&`f!cmoeQl)qxVRgwK27b78Pi&0 z&rzzE?zf=Bb3GJStC<&5UxvD=#AK2uK|(_0Gp%H`{XF(wuD|PSY`?|4zAMSu?yt$U z-sM?N5VaT{a=igl!c?(mp-Cqj1R1M;8&E-@$dV_H<#+U^qao=22Vqz144- zZYq5qCI$p_d0M@p776zwoL4#Bc#76vp=-I65Aj6ub%Rmj{sHxSX?l^)WExgn7uA>E z`1$IWEoF)tWF(&|KIF;EM%SE;#D^H6g-(Jl7?&$1&3LL#hd|#KsyN0tN4q1KRu^~e z_T{iqiCzg{JVsl6&1W|$Ok1c=Q(NyH0+oTr?)klaWhTDwCO7ZD%lNH$1?3WM()ie5 z(P{o{42F;MJda4I#YQoo)r2$q^tsewJ%Ec16#r>XTKnr-QW+@(C_RO)VP?<^{r&9N=?MeB^snmV)z&VC~*i{Ji^-Q}CXj)XRjRpoUg;S~b zuZ&1_2&Yny!@2rB!LOYwr&9O9aXd{ENKchhso%EvDaYcoMSpK6a#M$*I)+bG^#Bd;+lTnDV6c%+uslYRs`IJ?Y#l;8bc%BpOoh zr8h|D4st4Wsa)EGUQVUn$1~NMHcqA9pI4kpyVC*v7uP;I=6hx#;Me= z^N3TaU-ux=T)f&wPNfDO{o4KGRO)WMqP^J^<>QmLOv*k=` z*w+2)3}36|_j%?&9;kv2B|b1lrPcA*x zkJgui4v>>=p0bwYrL_5)=9bdNDN*}lNUw3Oey87S)Nx8wpK3-=)&1$Ia!S%^67oD#MF{2oq;>RSm3l#o-R`gP!hIZT`q)sJ(ypT|Zs6$0<>$zTY<{(i}CXM7^FBQOUA={*@pn zKCJDDSOi!KlX+jB0H;Ltzlo?*M#adJ*!@#Ca;8*qN>o2&u8V7&618jEkWQ=uDt#w& z0et9J)%cte_1YvKvx=}n579h_T2XSE^?nd-id$P-o>HpN7mBzYu{?U}YEu{cH|qtq z5c;5qQ=QGX#^DCcQ-3TRQ}5%s#IJdIENu{m$!?9nLC zganQI#Q5~zON^-AGJ5jA$!!gF-lgX=$9%5G#@`uBX9X=d{>-mfKHBe@dZt+4GmNQ) z4Z4w=p&A@sChDWEw^BWPUfGR2@ln2^g_eu|Eq)Q{`)AvYbSCe|e?Jz<1YWR`|AIL9 zTE6s8=z&|y-|644nyr!^X7E~1vG0j8zNrgQj%nul-YBFGw?NO==$h7Yw)eQt^IlFW z^CoX&Pb!PG@0UjVPAkdk1Nxg$b{JEe#;~?sww!kNSMf2%?}H8)Mrt))#AmtL`cVFK z4DGH?Zlc|t!zKXB0>96q2;ASD0Ol0#Y~L8APfS(+vl~(qK5u=Rat+FfokL~}1;qOTd>s#r}GaRJU2gHkJ>kSUNp7dTs%Yco7SVPDcEV$(uLLZFEhm zW$3xlb5n$Fe8dD1bezeof5Uv(@cMk9-`aOpfMqFi?>ca@d(wPgf6a0<=W=)2TW@?w zj-NTNyG|wU`!qXRpLeHRuYwCtdK5lx1lc{3U$3^3KjhP% zeXl`5uaeFx8D6b~d0aO_r{2+kAdQ99*trm`AzDMUrag<6XbsVtDbX6!zjJU|eJWPC zytc7DjWFW8s$cKZHbD z5fCCEZT&?AWRBSUXR9>MweK7}CjOzl1N-0~KKHV71A3`{p2s@O`tE-ha^88#`qsy5 zFqHvQoe(!$)Zl@tC#g1m7Qa59E!a1rN%Q1K@=4Lze<85~KCw=uu+QE1*%sZ5m(#X= zM7CeVDD!Y4VM3-Ks`7iy8n!FIXU7-ExUbOStd z^+o(F#1#Id;6&~;ruqV>2;BB2sV73=i}24Qt?|t9IO3`$k8xF)VPv(>Go~q?Vu&7T z++juXYEzl&p3CM=tmG&5deP9sCrCcb3uQuN#P)=Jd(QDcj5 z8rT=d;{G28F6aDE7+XIE$>4{fBh@dyH z-2@p9?7ZFFrYxGo3sITcMNc zv1`@OY2rpMC5}N>1{l6Y^PXrlPZJ0}w23cIQ>_?00^nOfeWCkqMDv-}^I_9+ufQ** zxlBS9Z{^&9fT89M9s~R@AAD8c>PjfX)Hjn&AC@jf*0r)pBi^`+xK^&o?6C6fTXVj~ zKObkS96J}!*$cv>6x}x&!}>QMm9LF>rRlV!x{{^5T8TFHl5aqq2uqRb3Lml_*AS`o z_o2g7OXyju4e-IQm?Eow@FHi*C+s}+hPQT6<|T^gqV1y-FGHm*txv71U6mG8oMAGt zr#lIctbUEF>MivSb^EX<9>Ig&NX&d${p3;~0(}6$xN7q%rAlq1c9f!z$ZU0NV4{x6Lau0ev-PD_tI9AgJYoq$ti>1*_XxCJy`sZP^!BPW*pX(;VFUa>f^qrny6H`zJ2XEeJ_rO(r zKHu97Y!;kvD%FDojpOXhj3;iG+`JdLN1exQ7!pUbj<4MY9)~I zy*{sU8-=b9RPCXv)i0H>dj7T{=Dakmlb-psejnbI?;V`>ji$BYp7~OJfY8JM&Iud*@&MQ*P(F zrj38vIpr|d&bOqEGjrRJN$VOidmKkbicXitbGfCrTQNMIi|2#CZ!`m=I7V@d;<`2@ zw)LFd!)f*FoG}z^F)B~d3yEwtevd6B@#d6iKkd&L#l>29E}81e$$9i$>eIwHmT@fl z)vp)tq`p||zSi>lx$B)6$66&LZY1N_agZgAw%c*+)K(s68CQiJcFgF(O6fK^+>N-l z#}8%g{?M`G;nL@s*Q@zV)A1I^n@2V*+CG;I>5H7qSNRp%>r}p8#M`#|HFm7bZBM<| zLZM;_a$@pV|0btMtZimi8% z-mzixHS(|Yj_Do$xqyx6stzMw><>G`ywEW5XSnu{^?sL5rk9Kj6wu9=!g=iSeQxec zS*1c3YCH#i4m2vv#;7mV^vmg&|8Mb&+^B!#K7DN}1|Xpy#1egwFP*W3i8H!!2)FK9 z{uOW{+&^rE{wTld&t3Klx-IXUAEGfIg@TL4w zZh<{6T~Q2k3v=MoKU;30t$&rvUVQ7cGG%^0Yb@)gUXo5W!(>EQYnyY%`cl@HqB=x- zC^(zPGGnxOw0L$W#={GP#fx>a#jPIfo_340doujc2HY#|WSQ13E6V1zb{6sR@fP=} ze@1yGnN_Og7-bjE?eB!W)C$z+49<()r)4>vw%)+T=yvyM{Zr-?r4Nh07N48E!CPH9 zT{mI~G90`o!)u3UR*|1aud_}$(*0xRj}42zW83#E)%Q=5KSbvqW(GV-k0+w8kP9h` z!{f|_`T|S&B)CnhW+p+H=hm0+mSyRBR{dKT=kM!NlWQ;E)N$t-a6N9IF)cT3{B($z zc72V~_A>hF@7OXdn;x(;u{L(*L!OpfvN4|dx~;S~Oe?9rBmFcNQC~v4e7pKo<(Bxc zXU0w|?`?$puxIV`)oJG8YF%G@E5@|k@2ab+e}7a55>n67d z#C|CibuWTf-%D(&8@XS^Gr5;s^jQ-Pqk@lduw@{D9RJ>YqnfiDbMYN%`lgO?Fymm( zFHY+n(@b}Lf5dYf{F+^}h_$az8b|GEOuWzAruA4EANR4$^rXu(-+2^&$e#4HchYYZ z$xQgPneb`l>PN$d=8I>~C6YzADRYSTw%ZA*Q)wO!L@4w#WrA7-EGtz4>Dt-O1VE;CXwVi%(wuj6-G zhq`HYOorY=_8pdGXMN{^d{f8hmeDPvTSm8xZugtK%;=WUEu-7lw*Ge2*v=o_4$V^O zq?<32Z^B&bvi>LQWkf`oPyVQ%tM%=d`lgOvGreYd&98aQ!zzacgA3?1vnvpL1DYu40Z&)OL3^Il5dKQ{JY4n2L|`SX|bd52B+n8!l4b6)ej zmpd!#$IQ7c_12l+g}wOWTAU}fyW@{apH<;{!ic`lwh@6p-g%inJ|qe?PYCmYQ3K*f zQY}Uc+j9L%fOnr}BR(%^d}(^Ia+G$sM~$;mj~Y9kj=oRWqIXU2Iz`WjC=*d8qMY7| z)Vm&H%VWPd)x*B9WzP8gac6webMMn-I^?$BOST=kcldT)w|z{nj-DJnxzuXWlcOg` zPcFR^sV7$-t%&_WKe$egE)yp$pH@k4Yc6lg@Gat`CEbOFl>f{)DYkrQ#nGAg>)6J3 z-qbs>>h@Qe7xsDa_hPPDC*GwHyC$)r(W}iix~8qsV+Deuc2jftNbm#XSwrn*ea|)b z5mV242x_uR3;RMy)6Dm@5}-b$+9SK!!?2^2$G43(L!ALpB%(-Z#7q>4C=yYm^iE7= z>ta2u){b`c59xdS@O>Zivt&|k1{jinN`kBH^Xp6JQhXr&)b^P@(3Ib3k5p>(>)Sv0F)A?XOJo<)QJ<LTpoC7IXjQLHKy#ZXSikhOltJj{Tf7ZgL*GO=~06 z3qBTELcZKMF~>X8Z1<3;{6wN%#Nf7>#6HE4XU2Z_v*0u1yumUS`q}jk-$wVhFU9se z>==cwb|!R|etLV>?rch5>SBy5U_@QWNm=E5`}xp5L#6??pNQ-atU+nTWBkO|WeT0Y zm+~%b-A4V&YWvP%HJt5!m*L!IF6%}zgLk5Hu4QlBncO^_T8$lYzWpiYvY5+?vGHmB zim!4X!S6%rfT-`WPo2ve;x)8wm!JHSO=2^DtNuy0V=wjYz1s-mWcN(F`g~oBSB*+y zi_AR5+ebnfYD@2;ICfes+Z{1_I3>uD>VH3XQn{u6vLC8)O%X>XeyL;)b)OjtK5is4 zNX#JBh>NvK!k_e=36``HTU`@tt*;plCClQIPDPJBdZXqk!|U;tS@D;J%6+hQrfewg z3nW}6xD>s%oB(LeI~M9|5#MpGZ|aE55}743o7W`AcXk+V8S7rfEQ!kaK^BP0lvmZ} zehX060yOM}oefA`>-Ys1FO3nYHe57nPVLwiJDJ z)J(eYOYK^;EA~C(r&hb#nNMriQ2&X(olqq{?fX>gr?baA$%~KtdMe4dU#qP~@UUq# zrElGIpfANU2px6xYe@E?F-#}&&=0d8#n`6gQA$sm3VqdGK_X0x`MBfIvR`Gls83q& z#gdxkM-H_%@9xDipzi8fel`Ed6HPg~>4(bnCZp>CQ#8=~;Pqx4i-!cH3pmF~b;(Ql zcP>-UE`%zNS`Xb#U&Q{Ym-)#V=WZopzui(-`|hTvnsV-gJI=-D`q?#ge>$U1BSY0D zzGUuF^xO5;meu!BV~cMZ*cZp*vs{WFfI5k<)#Xk37RN#OY1Q-R0-YxsM?10^1-{5LLW52Bf?DB^M+FwPB?`bwLk=8-Qj~@m?DDc z8QrW(oe#P+n-!=7-s9^`A^pdVHe0*moNYNg5j}As-@eXO^{q$E@#Q zWQbPc`QUa!#(ZcDt&xV_(3wrZ7*1SKnEDzU;U8vXpo7_$2GI;4_<6RKKObit*NAwM zJ@}2w#=ZmX^+Z`LWxzf#^9Qybwsa}?*q?UkqSzmm{|YA&VfoR2F-2aYs|VrIgKUTW zl;$!CS-h2V2LgufFL(^_zkKjjeXFY`@`m4_H^(CetCdX}@gjrggMZdP z_pLc!I1!e@WZsjN zjcbTJ>99Ccqc*_DS?WzRtCa5osa18O+)}F6avQzjtzDFPi6Xja`{+b-sI;Z^sdZ&c zX}J^KdMCb_r#q<=VSP}f-XU%xrmohWF&A4!SfK~0d9F=W>O(vTpMY`sqDpNex|%N} zuJd)0x`Vnlztrwr%gJGryDXk!WJ9tzp1JfMX(GANW3Ox(8;R zu0_Uy7ig~IOt@G!*_l&5aMs$r`upM!;Ujj*|F!rm{jB)&vqVdw(l@QD_1&Krw08a5 z-pxUyYuc`wc6aJL??onWu1R0&7b{8(e+Kp$U4`>eaESAlhfMkC*1_{l`|!~v7IdTb zuKB1!&#CgQr`bn6P9L?;{aku4I0G1dD(WKc8{fLj-$KR)dJpwRX2a_tEZsiMi$v^Q zXFjcu1NlP5H#(I3a7JTtocy^Xs^BZZN7D0q5x$)^F&}Et{qU}v%Jvq?`tq;Y%9U`{ zxHqk=xBdChsq9Q&i&7P<@e!Agp3V*Xh3F65>aS47Tl! zX|ieU+??nQ@uU3^U*vd$pHtuW(n!M>O}Un{c*r-Efs)5G=e zVJ`FBsZ>4=|j_QHOaEzNtLK*r!EpEFXK7Q5`i4*J?O%YL-2S>Gpp z5|YO` zODeat?9aQ<3FK%0Nla7j0sEmcl{#)|>5CGk{PVS?B}gEm27mSFZH$^78bkIg&s{mz zu9#(qM#)C!REMNHfw)cSwI0IPI9Gp`)oavoo6_skI8xqunu3>7#%)S(clxFri_enV zl-}l^&T~?(ahuY9o#nu#4V6>Qoi&&pw<#gM*){(NTmx#yZA$w~S=d+PYhJR(0)aa1 z&eyw8J4d4$joXwkb*vA@h5MQgJ619C{_Fi3`s#I~C(*84c;R|O zZT%e2ZfVCR`#V9p?@(p=x>r1#F~np-c;^Iq-^@Fs8A z2^QbkA=+Ir5X(L5lrh!AI@zY)X9ot6QfKmBi>4fD1D~|w=}dmbOo}T9JHNW9#N@c8 zY<@qIX(E{B;gwp>d@(PJGha|!WtJZ^mN@fecm+%MT$<2Ljd>BiwCpa5IrF6t2AAF> zXxXoe7x{@<4Vs4xe6D@|R*?$p>SOv`Ky<85p+1iSO*zibnJ?ux<5)Z+tzO3+seQ`n zt>w&@efpku-HW&*rS`e*Mq-poZskRF3{DbOej_#tdLt$wVGJRoPj>}$(8^Mx~C z=H42i);&hp)T8vFJ2>;jsyl{Nz(Wsn=1ZA&;mntP@k-StTGf6fm8?hNE5YCNq*3zu z8kRNkM5B3{$m^o^$CsxGFNHH-#@U*sHzt=!$RcOH46m5c3PjF)*&nq~j&bG-XTG3E zZMe_LnJ=Yilio!1DsbkD^6<5Z{-gYhyarT#Se@bx-vb^n@W~^2;#^!-ocm1PYHzI7<+{5%9r0wC zaW$mt_)+S++d5b~j;EDpo$iBq0%4LxeNJ^g@dy5){mHZcQ-N?Sr`y^hl-kxWnYAwF< zH}R57pJwO4Wj0#iuCD^%VHl+L$z88-=pZ`8>tgN2HvH0?+ZMIKP--fj-5~k&YPs~7L zEa;=)p-jt%E>E()G=M7BNQ{#YCU%0U3GLprU09RGbN-}H=i6X|5q7=?>*L|JqO%2g zizkTyPv!S!S4u78?s%>56XSRid2Y-wx)VCz%kMo^I-ZFqfC$=?O*Y%$iBG%G7hk8D zQyDnfT@gA&sHlektQ(?B+^S?1%O1W$i4r+w&8jS=SZBO%{&yisyhMo6xvKnvRzN~I!y{~St z+h#MUZHl4Yx6^jbHexJ#(`OE+*G^6MP+rJs zJ&kf!`aI0S4rf0HK9lyAm)^0iJbvl3JZBBNI{Ny4&iFRHHd&zWb4@b4yOV}J?MAFm zzy45PI)uZvHN z`&~M{2cP-J&3^cfvVBv>Ofxgh%rw82X|9iaFuOa=#1&?DH%(m|DrlMAMeOJ=zm{Y6 z?12AMCb4u+w_^wVSbH`s3(f3qNq2G_VKTeB-^Ah|an?s>F>`(YE7!r60q`E#87Gn_qc9+@RU3+VG_u{fcsl0nqb2HvL<96xxw9cRu2hOvSX46Wa$Ly}+>CEo- zpP3U|K)s91?uLvpv%A4hSLtAO_w^Z6@qK!f9H(MOx?`iP$0&Vb*R-s%=UP^>JG)z! zle}p^XgXgSTZ$bM3~gWLIyfMUo|vgyN%!QQEz%>^X&p#-7u= zrozAOrZ{FL%dHKwk^z0}t0N6pW>%6}$uaCKvy#{@827O6zs)#l4)Jial6`Ga z{JGD?Uw;w5?5q5$lU7dU&+4s?(}}8Y82^cnEh@{hv$yi;H;XUq7wz2J>N_j!n>zN3 zvR`z*tob4CXR2Sr!OSc(v&_u?D%1NuFQ(%IGqdHWTb{dMW|o=Rsc$Q%0dFK3=?2+IaB)E<-i zQ7kjF%*?j6G3_Q^oG?BdG{HbxiGAGD?^7ji0*D+0K00T-K>{$t>k0Ltpf??_-9t zR)%ugbM3OWp7el^y(6g}h2C6kH9fSG-FY9JTZ>-6WM-VLZAPr0@lJWzP2nf&5WN>7@zSDO^L?M+fo#A?2X^@N;yqxD`qB=hK24&*W3Z)KB8YoBLKQ@oAY zD_y|Ypj)0A9a)>oR3~1F*1i+Vaw=ZA*BfgXAaeF6&g|Z~=;DjU7x!S3!_A28aBYbT zRCQNP;11W12;ZU-kIYsmq;ePr#ORGJw zYy;@TymMHu+BZUZms041Cg4cNB4y_dr!Jgu>RvP~GDWfO@WC(aVO&YXr+Xfd*YZJ^ z#sYyl;Kjbq6w-g(XfxCv_~G12s6qYyNkbEGY){mwzV)a%zI^ADCvKsR+MmuqR{^$o z;&%FxduWJFb04)M3RvKYD+*Iz15>K8{}UaRzBGt-jcB)o$)69apnXY-uz8X_-D(T_ zjtq<^%3>+I6>V}OmL9eqwsa}?*q?UkqSzmm{|YA&VfoR2F-2aYs|VrIgG{3Rs0|;6ZOBX1=UWRq8`L2%muY)|RJ~s-<{<>NnS>OYa`K zn8NJpx_UrqxfV;~g*R7n`@ML4SBr0QQjZOCf&8Zr9$|(^j9Yl43YPfV4X>6G{dw}# zaeCTY>zOJqUfr!|rX#`PV1qGX+*hs+XXy*`@EDsS=YSIgZQ5(>37tNcneCY4S9h;R z>apB4h^a@KPUHmZ`z~GFQp&tkz3B}Q2oS_%W zlwZIWd{Kn@Nl$*f>IC#k{ZA<~55kYOGK%2S)c3Qx zxP=PI`bbtvSuA0`x^47kqIwve`u_L^d%czj8#=$f-iR$WYMHc3(uW^`>L5s6eGfvp zq?t=E7!qnQ|J~Nc`8YAfNKGGj@gQ*1uq{NVRcY;GeSR5L;2AP<`sWwX4AAyk$M2U) zt;gi{SZqh^w-apFoaSjKwL$8E&|~sSeW^kg8o2kRd?UMR8p8)=s#!4$=E@mmOUWYY zlo}tLQhk3V9nD^JJtQkWKOcOGW!(owT6v9(g+D1rSAx>zgID)rpRYuF`l**uPt+5S z;1AqMt*y$HpP3MAsdMmC2a?`8AJT30n5dDyapD`OUAb;_Q~j#B6#3A3Z1B-9#2Wjm zpj*ogtY4?5(J~N@M}eLZEdvhUq$zNrgZ%+GnI*oVyBgbG$LoL z%UIX)cs3o}JW{jiLwsEI)O7y}y;^#;akVkCg2)?m=^wj!Q(O7@a&n5DGb@OCZPXtd zj@L$c;z+a<{Xo?Qs;yP;`toDr&*v?Q4fXN9seCIdHHO?gx9ZQQ)ke%In@;G8_v+si zr7A_A>r<8MPj)aN12Rs8*qw2hRto^jwS4wGUQql-^i$!_0pFkY)2fC3S869i_xH4K z)N0iDGta~22l#g-IahK(t zR+oLNbOzY-*M0V-em5%TRWD+PCaO(LE0;b|H9Y1%Bd7i%77dlS=kjdS=W9e*`s~N1 zmN)GZpZ26J-hpp0lzMcoh2D@-9w>jUrz&(&ls*rAqxh7%z1==z{aX#1m~k1$pJv9z zsB%w6#Vi-ITy2Zl*7>eK*9|HQl#|^(UE}yMR#|8gG_96n_RM5b zPuFKhCbMV2O@8KnooThe{CS=Djm(~XZE9|SQhtyu><9VM>aOP|?nLMMTK)#Rrr-^u zf8~=zM1Y#u%{dzRM$GJ94&FN)c-*R6-eJItQVjeCIe z%$~LVnUXGjX3u`q?AcgZn2_gU4rXpd*E{0J{&{v9%~jR=bM?=MPNQeRH^#3tu!xiy zn9mJP^j80vdHbI8M1e+TV9HTJ<)Y6i4cG~a39R03FEcPXwpn1rJ9d$9~ zlM8fi@G7c}oz`1u*RmgW|I%0)80a}<4_4%j$HSA}o(>tZH1JU#noVqKfua7k3-apZFoNZU#d)!?x zkClwy$bN>Y@DTPh%p=Y0XPAf2>}Oy<1F&7K^){I+?IUJC!;jL>P~X?I%!B7@upeV; zfRD3gw@DjuD~lX4S(Mvxy0%jscCMq;DtB*!Eqz*wtxY?-rj*9+nUtkZOF!`xmE!2K zKfKv-G0n`GF=xh{S=)j$XQr8)sjC`}zE|ysdB*j<+8iyPB4-xs;PG;1h6B{+A)~;t zcA^AMvU7=@OY=<6RGDMv5<8cs>@o~LWxOr)w+sn;M8Y$HG z?z^g-rq$fsyri|9=w?HuD`tAy7In31+`QDq8E#(EjoVCVJ3!|n6Y--aE2Ub$c?)#iCu5=WPsT9#;!MZy)Cyhj;GDJ zS>+jL$Z>`oXUHJ}Ig#8eu!?t!OUb@s>KJFp0hJq@Gu`-5o|_zJhTK<9j;pYbo!fhc z?IfPZ-)8oO*_Y|EFVMWqxG>`q(C*ysTLf~mVDAfiU*@?f%($T5tzC&xQU%93gWwwH z3^L=wj0-a^H-a8rHJH)0{6uU8^yrg#!5^DFi}<-qU$FN@BL()p0By6lX96>ipV8a6H$H{7M(v4-)Vq@sY0yd_bM~780{8$zm zw~#ja-QrB7<4Uv=szn*=(MHoo(?;*EbfS$$mTBA^F>Q1@Ck}q0TIY?#(`KJmVy%%^ zASO#Y%~-mtR*RVI9GKx((L)-+g)DRZ$a1P!`gKjL{I37$HLm9L5!Ap8>({{svs01q zJ9*BRZ54%=6Hbwn`c$=VU6&-zkMPvz%&ADwok*jn?V6gI!5ukwB-yzP9d_-^w6fmz zaDL8>i|v?5Epd6~@%{pmp1J%x7p*MqNxs^=Y-W?%`0H)`;T3IbbYGwbMM+O;*Uy3bo=j?$WPcN z{-)T%v>JZQe84VGvA&ct8XK>FnOi)5)GZ#R{Yy5TyDOp_H&$dmj`=v|F-pdG) z5#n66gp3f!^B)-@GD0*@(Qqe5h<`0UH}g&~WomatYs8uQ#>uY(#Gw7&K%;~ z5n^fV`PgJAt|V{7c_jHflJX3#-V;PxjJO$bGva2%&4~LozigbGY^-(X$hd1%i~37X zHEK$g?^*bksq;-`;AHot==%ORaTVe!cTF8&-QHlk&$Tn}K5isu{o5qkKz--t<;OdKHte~a+Nx?~T_Nqw&x4rT7M0DMY@DFn8jn;dyYi8@> zowv30W1Jfelatj(c%Ui8${$1nd7(1ZJ(rDjUCB>u-!NV2>t6!)b~+ii*Fj(*Da0Daw!%Tb7R8Z)Oub3Jf%1;^1?kmQRUiyVz&@iKM9Ii`&5-K zMZ=at)mpw#)$Qdht)I;>9-wyU!i4qm!Ml_~A2h)uIunF&0LH9#`HDZPRN)KjR6g@Y3`%e;{sziaYbS3Yixvn$mU?iqAv}C^Igli zt^`*%`SWqcaR-7Y+0$-7*moePo+yi@4A=+u-NM$xKU&H;`_nF66#Jv{U*RMoEI;}$ zrpQZl^&nh&So|#;mHnNdR$IYV=#*Pjg84a3*!!i#G04gQ!?$SO6OHC+0>Oti@um6H zioqiQz6I15x(}5vruBT-wA?H3OKC2Xki}a$cOYOJkpOrMan(d!EKGf?E1?W~flM}i z_|a)jLhBeb;?=IFx)~Go@{Mobn)5aO`M5L6v2*d9y+j{M(S3s>2xQ0mS@}a}xvs4@4NjI2P((Tq>kr%Wd?A zw{}tHC5q^x?V}UaNp)FTEm}+K>y1=efJ$Stfu}nOkIX}_A2Oxt9pWagT=57V^hRRl z%j#66KE#9Y37Btfc}l5L+lVRA7b01{PI4_?SABk|PPi6I9;=_7(t>F0+7T_MQvHhE zfYK|n%yr>8{o77P8%4*zd92y4SjX++E5F*T>NkGi+FGUYy z8hqtZvSt_ZZxQ1?%fCYXB>cRt9lWSW@(`Pvw(vdM#W!{It`NyQH}U74;Qq+YX%39u z6?if3PV=8>OKz@tJ^5DFXKga>&%=$Y*Su57xiMY(GjzxM-mKa^H)h&cUgI0D`_+7O z%7*@N<(6+h%I1>!rZRA{d(Pk-Qm?h=essF>B%LSc(HaUj z#*0ADy3TxB*@t|g;}jDTO!iBo@N1(ff||cG`NF;YZ~L_JY@JTUdoNGJlD_FS`M`ta-PKw&lT(l}I^g zbWLk7+q-M$c`qx&{n>x?SPriYSEMP|zl!UWW=LX9KI}YRwR&lV3gH;@<=Q(C< zZF*OInEKW+*cs1W&LL14XzaGwUe4NE{vh|yn8_-i0iZH?n3=3;`wbssHxUpw!`+<3!`w$jEq{@i^o0wnZT7P1HN| zamJ|k82Wrl+u*~?L`NV|`K9El@0%H>S}pav)V}^Mvu-{t{*wAC*xx^-!YWK4$YayD zV*H_gfOddlO7D?$4KoXl`ZoFl^atnUQTtX)I!!3(fC)FMjH|RA^u>zUrSLp5>KH??=@pChI=Q@1a8=Yebvq zU8a_l)gP?>pm&+xiLt6bc57kP@O^E^CqXLI8+;a9fu{$(J_lB)-pXOjvYa-zY^V_X zmVu`AL)2L9QC{tlqmy3d8`k&CaU)q*(MHW6YyEF1wu7^-f^`+K$MGl;&%oX{9%#T$PCW@kbt+G0Oe%qTC^P-5lQY5c*Wl9!aM4N&IK^qEQ`HroH31 zq3g*XCVTRWc>TZuP)im1_=o1w?qp{oB9>G6dXcI+Oxb5PjkQ|2)@O9V=z`J3bkW5w zJv^3`3YwjfMjC0<_pmkR#%j19w;C?Dre3mJef?^~xz+Q{b=FC(qzdBm(R+epS*eb3Y*Cibo} zRzEVx{YGN%#NJ=`!41D1OH1asLEnfW#>;=MOhI~1ntzCGTZl1!oNPp2>FDB7i1f@t zm-FYf=eK=}ao^K@*5&!3exGHU_XL>@&mR_l@7e**sGCtYqi#mskO9sLxRadxvs4&Q zm4Di$g}uZAOeYNlqOg#33 zpT*l&9n7eF_mtbNSjb<@#yoC0cFW7bv|G zY2;n%^97yj#m7@?%Y6&TK~B4GVOqpq&oQ5HSSqK-4fcO0`N)mrZQ?mc(|(Gsyu-9_ zH2L>74-vET5fMH~S9shHUV5UBa*kK>bt7{AUVeU+r{2jsbS_rt=c(^$`}F^nD$7-Q z(cXEkka1^u+?n&TJHjiEx6u6vO^Qu_cg+M`RKA?c-(l(-rl%8oC-zS4o!C3E_o=b> z*L1PfCr#^jc6qu!eXnWxpeLd8kLTfh{63!`CZsJP>ZHeb$YU;4V%y| z7H5Jy0NJ>bY8XS!JyCfp^eq>c@)NmzztpbftS{voKehhHxH;{8JY75re{RKc&htLC zGC-@&w{P?$FFqy?r1wpcL(>S5Vmm7zoLe__aLdI1@}{%8X$(H&GP(htx%wizEnye@ zNx?}IaKIN2u=c4m2ges3(?^d|>Mb1>cOkfvvk>8Yaw-P_xZmIJ| zTgmW}pwA1=j?U2kn!eeWc;_@;q<-O~6hm*Uag zi1+!m`fX6Y#c`1r?kQ!;wg1F!p`YMsQD3_$UD#rYE+cd;;ePr#%d-YU!X!dPl|U!z zgJ8XC-w5ShN}&&$;1L~*l%0R)n-8k)MZ*FSjCF?(%1|eT==nVWqxZsc~r*29)Aw_Nn3UAidtrvv{LP9nncqyJ)xyhK+I!lj4B-%`Qk?*w%^ z0&K-mgQMQLI!)ZjrNlAF${^EV(Yz;#Gfxu;KD3E1&8JojGYo)l0riFMyAjRj%XZ{m zfnQ2dx<`jqWcCztbc;3d~L)ly%AdyDw=9#MKpd?UZIcOOTGbdA}oc;yeBIg z*Km8%Vewh24e+EJ%qry*$?8hJQni-b=nZe}qRdMa(M8)wCstB*Sz4c3SH_eUpwif2 z<>^ksBdcHIs(MSkL)^rbD;~jv-bl=RS)HoXhjSw34=!_p9e9_48MYsc08M))&k(SS)xE8d=CQ$q?zx&_f7kTzS+e+56 z#`-_Xzrq$}XdvCDiHR8cC)9DQ<^R;b2M!PUuFtcj*c9yk^xdcIo4TOE{G2B|ELcQ6 zU!!ZOAj7u5GRfYU;Tvjtl<6f+Dvz9|d3KU0Nj^G+RCY)bvLxZ!b-6-_2IP zO)Ga@{g$QLIo0%YOvux2v3zoR{S%E*3cJVksmkRn&L4ZH5lp=%9U z9rZ>%WGr_3ENSM}^LgRN%F$*X3cFPPaufoiVpZKhJyT#9Y)HBN5m`33|6~ zZ*BOjm>qz6IpF1UNjTyWpU4nA`hXdD^yv=4Lk={0jW|J}zd4S19844t6GqEtI}!!_ zu=s27xtYlNmWA_qBZvax+)%F`PtYxyKim~VdbDrE)Q0K2+=dXXDz_hph*k}WPW)wD zy0q3XNVGt+l_~&8k2Q{<+xm%qd^Kh`*(RP z?ZMMRmk;alt_15q1gP1@w{|;@i%McX8{}8_5D=4OMII~iK6Ye1iAm1Uw|9trn5CFx zu6c<_{x16tc15K`WybSZ6+2?*WLKu?usbJ9by1iNbK_u3B=ZoLQgyXyVx#eHJ@XLY zWtVT)m4}!%^I?dAuWgM+6>HFk);k7HcH@GjdKz1op&77`8k=$qZz_Erc3W@c3(pN5 z809risZaYNvl+C`9TXE=Ahtkkq09adTOhWe-G6zvp9hTI=69H_sZY~kW?-iB2~wNu z=alsGdaP_?@7*|EJ;aeLZ`ZcqKNpVlNirr{EecExUEQn9_n*VUtHwdCrKg!^N)>Bq z$LJ#@hSdkdDv#r_sR}(x?-$sYhLdCT&gh-dJEQkIv96rZJngKWF72!SQz_1ihqQ|tYe!Ay~T|5m3~}b$tNnX3sFiXaoU_9-i3`8$otxjEWPhG>C5L0C;meG z<%8tnQSGHQIL{*Wx^;Uke{(H20Ei0ep+Cu8_}I)4!p~jN&(Ds(*dClmvGCYjek0s7 z9Wt%fQhg4474pZWTI)ip;KTl<@~40nojQFR>Cz$5@SSiJo3oBYHZhx&lRG%MgOfYj zR;;au=h8y+?FzD33R~wH3x`_GwhukVmsX(<+DGaI+PqPeMh9MjglEvB6)nC)SULkj-9+7k@NDR)?7_^*p*VTcxtI zlv*H-Sy35;+S=2_e_Qz(@2Mt{L!Q{4qd09OsFp6@6IS{OG$V@~g>5+iw?oFX{#|YJ z*8@#y#c9{%v-(te%>xjLYR76sqF|9v1lfTH^=>i6oDucS{7E0D-g4^gsn}m%RyVhB zn(tnUcYw{P<~h~3aydS45m=n#_edqD-tIqH);5kE$`<-kZ+z^jH$cTh-6i@@@8r)< z%$Za`hJ5QI?zdNM#GJ_-{qTo4O}D-e!5l|<#ZvAi`s~-&6ZSTlCg+`b*lD(HTGZ2L zT~!-lEA{-ePi4&B5cqzE?qZ9=vHXc0A~kY?^!$d^JR8<9t%jlJN6)W&)?ukm-=%?B zGxOR$h1}aza+zZZ-m1)b>AC_-paGnMwYZAJ}yxO8r6YTKOV3Y&`qk-3e1lA!jt~p3zW_z@Tpx5ygpU*Dpk1 zh`8v$s=aGrPjPH3KVrHYhXM6~=2e{4mN7&}87;TI{)|dV~0(%Sh@<*}H$wN6` zAH+wzkobU8E=ptDHb;Z3nm6H5I+aTASg6;@KZmi{@L0J+FNyrp?f+9Z36Bd`Q!Y z_$H^4A2hvHj)%o4g$EVf1hlq-mTDDmKnl|@o zW4uu1JuYL7N_mY+ZWXQaEIspSwNFL(y$@Z->Yr(6j@LhBR{spE{uvVY!q#A30`R~0+ge+0rH59!sB4xyE7{Z*O{?Qs$yPh+qlc-JYJrJk z(i*pz)X8mo!R)8icY52>j)~GNfzL{|i^RM163?{ji0a4o*HWLiYP|7BN0A>Sly!B} z*40g`W7?kUVQ;t?lJV0i6DKmC`nIv{%LS%MmTKHCjI+KT@r@DtrjGNZ)%$Jh48tO) z)m5xntFJ%WSZ{o1OLZl1Mohj8y4Q;@*o9>KJB1Xb^}@ScR(xhJd}10o@4Q63h%~0?YFx_BMkTtPmXedjDvRdTDS4? z!;XW90hMP3wVFeB)7^^CXPJ{BdCM>nm>J7oWdqUY#ovqHWWFFa(;(u$X?8BYTU<7? jj@I&D#zTAJ>_>h3mFr+;ESa%nRGA_z<7~if?>YPbF1n(c literal 0 HcmV?d00001 diff --git a/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CL.write.1.tlog b/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..da56461273a48323d92df90d917d37c042dc6737 GIT binary patch literal 25170 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 literal 0 HcmV?d00001 diff --git a/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/Lib-link.write.1.tlog b/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/Lib-link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..65ed7febc2bf4d39423fe9ae1a7782a22288b23a GIT binary patch literal 15928 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 literal 0 HcmV?d00001 diff --git a/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/winflexbison_common.lastbuildstate b/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/winflexbison_common.lastbuildstate new file mode 100644 index 0000000..59e4e44 --- /dev/null +++ b/common/winflexbison_common.dir/MinSizeRel/winflexb.DD225102.tlog/winflexbison_common.lastbuildstate @@ -0,0 +1,2 @@ +PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.31.31103:TargetPlatformVersion=10.0.22581.0: +MinSizeRel|x64|D:\winflexbison\| diff --git a/common/winflexbison_common.dir/MinSizeRel/winflexbison_common.lib.recipe b/common/winflexbison_common.dir/MinSizeRel/winflexbison_common.lib.recipe new file mode 100644 index 0000000..ddb4bf9 --- /dev/null +++ b/common/winflexbison_common.dir/MinSizeRel/winflexbison_common.lib.recipe @@ -0,0 +1,11 @@ + + + + + D:\winflexbison\x64\MinSizeRel\ZERO_CHECK + + + + + + \ No newline at end of file diff --git a/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.command.1.tlog b/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..417fea8bd7b751e67274cfb1d36124cde5c849d4 GIT binary patch literal 134916 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 WJ0T=XbJk!O41-}XEIz}wiSvI>MJvky literal 0 HcmV?d00001 diff --git a/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.read.1.tlog b/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..89203a42a52a2122ae5cbc497c2550be2b76ca38 GIT binary patch literal 582498 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 literal 0 HcmV?d00001 diff --git a/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.write.1.tlog b/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..7e737d671e3b2acac9592eff98dc080913ecf492 GIT binary patch literal 49480 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 literal 0 HcmV?d00001 diff --git a/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/Lib.command.1.tlog b/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/Lib.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..b8bc42d493a1457534bd07fb67b3c676a0b290db GIT binary patch literal 28870 zcmdU1O>Y}V44rd<{)fPKC2djk;G3;4E7n&f*;b06LQxcG5AC^!{`R)-4KvWLc2-sa zQh7ySJF*hJw;T?K~qf)i$m0n~!OTp9}o4SAGBP z(E4|8@u{=4!T;Xi^XB=}cj*DY9p}#`(hBe1r8WK>@O78?{#*R^KD|$WeP&jhG{qB> z(@=`l2An>~NNEfGSYw5$IXkSV%Ia+)qa{{u3u#TDaRdBqompxyya%r>crEdBk@?M` zZ)@xm6@D|UCmHSp89mEzdV)^PAtUO)#>x$$>q9X50BsrzaoU2@2Fy(FhtT@996MSJ zMSgeCE}p%!%x{jLKM1WY{RJ`{V1>tdU1@D+`EPtrWnXl8>M&bDPJ4U}g`~C0_MdCX zoy#>|$gxwhyL0SOo|voj1c|BW7VQSD+7A13f?dg7P`nNejusI-!T(X=!?>l$XaI>R zd1e+>6?Q5TqqltrsabS#$o7I~fX+EJ&g@qBt|7B=dWOVQ{QYwJ&~mAq*yO}0WCA(S zZfUIB1bGRbi56F?Xj8H5WTq3d6;{Psm2*hTqLSqjtI9ma3buZbU#n;vEtch>R2b10 z91B_Y$tMq0DW;s}T{ysZo{3B7mB#8BFM3>zB31l(WAy+@?P2f9OXUnQW|Y-ZjMEDC zN+rrLDH)@$r8K?R^l}2J?7}&2JevM8HH>k#7Qbg$35)&5;A_#X7RLujaf|zzLp~!_ zGKy2k?T{_(GCjg>jKHw)R9tDZZ^qPktLfqfcY;L|wPo34saV+O?62 z-;Ld)h@DuZZ)KR=VZE3w(69sxoQ_3*bQqQFj}D`4u0k4Ri=@JeH>O;>P5MSgn;zk@ zmb+XPIX&k1=y<=Zm498p&!^99{4`|7Iy!Qqtx~b!ZBDHEQ>z`b+gl~Ss#Hb};IprC zCQ3uU3NIBlM@<@JPihM7SL8;ynV+Y_j`to~IkN8&*{rffrLjOAwZe>DM|icyE4%B`Sl#oCr{KDh z$?06i)z1Gh>@=nR{6EnRyJ2tV@3m@O%& zOH8BX9WbY8XYmMU$_&<9L(|LcHM>o8s(A}5R-CC+EbXvvD)wmy8?eTi&$>?yJ>p7f z_Es4)y||sH3;SMlDm?AHqgSS)RWFbbyEm0Gpw>+~%D(G1-}*5=enB*R-u7N>S$- z5wZ@|WTmox#V=Li)9>4SnZ8KxU^mzwahq-+$Nw@h!SY}{Noo@i?1bsgT{xYmU~$e( zdIKg)aA9U`iZ8zA?&K|^)v4Yh1Na?o%irYpeosH8pVP1DxAaH)1-$?K^xmbom(6it z{;b;zO}Y8vbi2j;F;07P{1G_&;$!|%`Pl|lx`i8KSqBvM64TU9V6On^CNDO z|5LIOh&#Kl(>vl>hp;1;^>5n~d&|0pU(SOV8Pjf-ez$@YCE0U5)NxP840SU`iO^I^ zkvQ#cXMd!!Qti&fi1q60?2FO+QXO^Lu@{S0vbcSncyZ|c9d;4>z$)0K*o5krZ z^yk9wzgfOEqf2g!{W-CNvRhXgfm5p$C62d^X;)a*I`AX*dK)#;TWn^Hy7g-@mb8u8 ztxJoLC?nE#jgr4s_T5=WAa!pJ{ZY={21cPZb)%{GzS*4G9T}g<+jfr=6ny2;DkOe~fNDp+82g_QoHjsaeMf zz{K(1IrSO3F&+Z3>~@wpIYx`^`q*gHzL~dCxR=yk#9+54CwAvL8mg}+(Z-DPqgh$q zt~B%Ce|_`#{E_Mty&`tHO)jd<>59+>L+ei8@|U0?)hB92q4B(IPRWYGX-~e2MLABh zio#)>UF*J!z0RPV~ zD-(AX(+V;JNgI4_4vzn`nI`m4lkrEaO&*CsDfi`Z>&9oPO$hOSp7s=kxF>4k)Tb@* z>Ad5ok{9YuEQs)`u6Kg=^`!f2i1oIWdh6p|bDXYNjjDCEUn6H=F|XzSPkTcBU-osF3%JAM(o|r3;(s-=X&k3yW{pWacUhB R5l>X_Fo-}Zd$}pMe*v1vfL#Cp literal 0 HcmV?d00001 diff --git a/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/winflexbison_common.lastbuildstate b/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/winflexbison_common.lastbuildstate new file mode 100644 index 0000000..08ea4b1 --- /dev/null +++ b/common/winflexbison_common.dir/RelWithDebInfo/winflexb.DD225102.tlog/winflexbison_common.lastbuildstate @@ -0,0 +1,2 @@ +PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.31.31103:TargetPlatformVersion=10.0.22581.0: +RelWithDebInfo|x64|D:\winflexbison\| diff --git a/common/winflexbison_common.dir/RelWithDebInfo/winflexbison_common.lib.recipe b/common/winflexbison_common.dir/RelWithDebInfo/winflexbison_common.lib.recipe new file mode 100644 index 0000000..38c7c4a --- /dev/null +++ b/common/winflexbison_common.dir/RelWithDebInfo/winflexbison_common.lib.recipe @@ -0,0 +1,11 @@ + + + + + D:\winflexbison\x64\RelWithDebInfo\ZERO_CHECK + + + + + + \ No newline at end of file diff --git a/flex/MinSizeRel/fl.lib b/flex/MinSizeRel/fl.lib new file mode 100644 index 0000000000000000000000000000000000000000..9e6012d4b774e1dcf76b6ce70e389d0afb9c6dca GIT binary patch literal 2064 zcmcgtO=uHQ5T5PEV1v?>q9O=gOTdV@+59v#wMf!GDkLp5wV*`WB)e(X=Fc>3lb$SE zDSD`aXAcUZ*jojEPJ*Zu6e@Tuf_kyw!6MazhdQ%A&2B7~DmajR^S(E4=FOXLUJkd# z3(3)wHWz0Wx8E0VxA>a9f*IGR9-od6+W?>jfbjsZE9LT3A)bd!T+YHyeR@3=pXd-g z48RJjIL82t>QoEhs&c;FdHn|8sWdOjg;+$+M&)U#UrNW)azgdX=Mv{(%XP{~S#{}G zpdD6^>b#`@!PKO7=r`lVaBGJK){(&Yl*ca~X4Mn=5O`HYYtl_VWzZ1aJ;{ctlu_-y5 zN=v1LJf6$ONW;&ctI!H<^^gEqh6ZSa8T6-*5jk1NjptHD&e?yI>&qAAj65x8N4Sn$ zCNHO@0>ykxsXU+j{@~|e&-+(*?c;9pBi}N$3G5c)dhj(dXAL*}m;fG#ne0=a* zt7r^X&eD!5ie6yS_u`L5OI@SOwkw$4OSzo5_HnuKnss({zU@wJ==j{oSLe4|>j#8$ zXI}>HJJ48>|JhqaF|+*MTa+bLd1c{XM(r)yL7D1OgWZNtlRgFNHszm8L)89rgnL^E zAb&(DD^h|F qQfy4`0lgnALxeVq6Q@H%awb0{mE literal 0 HcmV?d00001 diff --git a/flex/MinSizeRel/win_flex.exe b/flex/MinSizeRel/win_flex.exe new file mode 100644 index 0000000000000000000000000000000000000000..2ec53fc3a7a8ecdd366a7fc03493d573a4b9acae GIT binary patch literal 425472 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 R7yRFPUts6&%unZk{{@M93&;Qf literal 0 HcmV?d00001 diff --git a/flex/RelWithDebInfo/fl.lib b/flex/RelWithDebInfo/fl.lib new file mode 100644 index 0000000000000000000000000000000000000000..bbdeda0cffc1bd4735fced811f3aab4b2db8a289 GIT binary patch literal 4596 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%0DIjX`Ix58vUZIXkSJqfzzONdV|TCRS4Nv>A8 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
      %KMMHgKo+B_a&JpI+< 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�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

      &e1@AZ{-=`1nrncY`;06=*YfgC7AEz~_LsKIci# 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 + + + + D:\winflexbison\x64\MinSizeRel\ZERO_CHECK + + + + + + \ No newline at end of file diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/CL.command.1.tlog b/flex/fl.dir/MinSizeRel/fl.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..1893ccc3cc62a6c76021fc647074fcc945b08ab2 GIT binary patch literal 1938 zcmeH`%S%E*6vn@G(ElLrRmx2WE>cq@U)*c>Koav&f~j1UqCdX+o$)HSkgyi5T+Er7 z^P2B`XU@m_y$Z^xr)K-q0uR5CEUe`n8DUYUtHK(esT}%?)xz3c*P%&ir z*BLEpu7zf-N0!}NN{4$}33nQ4ssVQMTxrd1$eux3}id3|hoY#w_b#_Grx+<2Ug(^4eU6pS;F z&ox#SzrH)~G=|=g1z4@Zz}2`8J-=&r-j-#oSNzB1T@kZjH|@?N4nFJFtwU&-n!Hm6 zVU}*ju^A#C`9=n{eu;>(V|j{r#NGc(hIo5mHT*uZOEt!M1*}%ZHe$r-_#b^Zn@vGd4f5o| zygPmacpAV?h7NE4XGtUXaubeY?z95+h6;z&me_M(+^mV)ASdXr@I4;q&y)A}8Sbb< XB_4mHLB*#zKF#rIj{k3t4^7`E(=#Wb literal 0 HcmV?d00001 diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/CL.read.1.tlog b/flex/fl.dir/MinSizeRel/fl.tlog/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..2cef167bf05e6f649c076eb861c72413dc27830b GIT binary patch literal 1692 zcmd6o-Acni5QWdR;5+nEZ$e{L#Je<2HMlX7Uki)A|4XRf?3#l0PG}7w%Vsh^XU^=* zetx`ZqkDOcD)p?boC>{a%~z`$iQmgSl14ca$KSOoWx*yvcCIs4^YemEtq0Z&jRn?a z@Y%Az!1JAMb-9nXL3hOOLQm**?7UJfSq)8&We>jMTbl4E(G|}Pep2?P*`wEBYxp{} zBf3P7GeMP;V?z!R<%FvYYz<&8$h0G;Wys8HK+_|sd0b$mVvW*N*JQm4x!Y=7tO&gpzm#)%SZJRekt6}Acbd-5H(({0LDyf(8ZX8wMc?C9K)>Sx>^ H(|z&5!HOYa>!H2<>A%ejP$O~rh2a3eN#bSUWK@8475g(we6N4{< zBUq0fP^^Y*Qz986fp!N0%?e-unZ(P$MS@u%_v!)Fdjd^}0lEm}hhQKX1@uJ_5c|Mg Si)xQQ(EVOCvkMV22zvl!o;EE2 literal 0 HcmV?d00001 diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.command.1.tlog b/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.command.1.tlog new file mode 100644 index 0000000..8ba84eb --- /dev/null +++ b/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.command.1.tlog @@ -0,0 +1,10 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT +setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.read.1.tlog b/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.read.1.tlog new file mode 100644 index 0000000..67291c6 --- /dev/null +++ b/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.read.1.tlog @@ -0,0 +1 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.write.1.tlog b/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.write.1.tlog new file mode 100644 index 0000000..8a7c0d0 --- /dev/null +++ b/flex/fl.dir/MinSizeRel/fl.tlog/CustomBuild.write.1.tlog @@ -0,0 +1,2 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT +D:\WINFLEXBISON\FLEX\CMAKEFILES\GENERATE.STAMP diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/Lib-link.read.1.tlog b/flex/fl.dir/MinSizeRel/fl.tlog/Lib-link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..45f9eb741a5f65b8b15098f5a613f71b389483cb GIT binary patch literal 588 zcmcJMO%8%E5QX2`#H+B-ojb5XFa=FpgAn3LIJ^3_L}QFDSxnoRb~^9palgrEr%|11 zwJK$G&{YMQ*NMvbuFa>6_q81LCUtn$fgVR#s+PRqE>E`^e-t`uT4YME9^8&uXT2t^ zwOVA>H={Ub|Dl|LX@_Pb(GvkZ8f~?q5>P1W<3VXq$Z9E+{}lO+v;s-=Cr_>o>;czi b*Q5I`<*lm3YR(NjN?u;*3Givzed6;3`D|9w literal 0 HcmV?d00001 diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/Lib-link.write.1.tlog b/flex/fl.dir/MinSizeRel/fl.tlog/Lib-link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..475aa8441fa65d6224763732b030f00163cf7eba GIT binary patch literal 294 zcmezWFOI>5!HOYa>!H2<>A%ejP$O~rh2a3eN#ULy_pn6Y+AfUJ}SVu6B zi~{Nj0%9Mas1K0u1e9|G%jyBmaANRcsG*51kqnVQcLxFO3SfZQ#LK`%f?e4C015>? Js82xV0RS*REQtUB literal 0 HcmV?d00001 diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/Lib.command.1.tlog b/flex/fl.dir/MinSizeRel/fl.tlog/Lib.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..75dde7e7f68cf89f989defc8e8d178c54de53119 GIT binary patch literal 504 zcmcJLK@Y(|6okLC#D9?ffVzl-n^II($(CrPk%&k*aCY$9G250C2@;35**CLqX6N0m zYx;D^SrQR5zz~uWs7sg%$)8wx^YuQ$3ZE1ciO!W~tjY*A>H~4zg7u{lFy`_XmyAsR zw(^?saH>tbO+02Nu>Y) literal 0 HcmV?d00001 diff --git a/flex/fl.dir/MinSizeRel/fl.tlog/fl.lastbuildstate b/flex/fl.dir/MinSizeRel/fl.tlog/fl.lastbuildstate new file mode 100644 index 0000000..59e4e44 --- /dev/null +++ b/flex/fl.dir/MinSizeRel/fl.tlog/fl.lastbuildstate @@ -0,0 +1,2 @@ +PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.31.31103:TargetPlatformVersion=10.0.22581.0: +MinSizeRel|x64|D:\winflexbison\| diff --git a/flex/fl.dir/RelWithDebInfo/fl.lib.recipe b/flex/fl.dir/RelWithDebInfo/fl.lib.recipe new file mode 100644 index 0000000..38c7c4a --- /dev/null +++ b/flex/fl.dir/RelWithDebInfo/fl.lib.recipe @@ -0,0 +1,11 @@ + + + + + D:\winflexbison\x64\RelWithDebInfo\ZERO_CHECK + + + + + + \ No newline at end of file diff --git a/flex/fl.dir/RelWithDebInfo/fl.tlog/CL.command.1.tlog b/flex/fl.dir/RelWithDebInfo/fl.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..5758cdeeb7f65008f63a09e50b4aa9156b78cfb5 GIT binary patch literal 2002 zcmeH`Pfx-?5XIlw#P2}3gHbMq#Djn!5yTWsg%AmUikK*nQlg(;{mr&CXw;}D4;;F? zeKYg+&CJg0%dILZsxM!4U8<^v&UB*^e{Hou`YF~2@l*zBU@fVsQx}s5+t;2BG**VS z{%b~y>gnD^&$ZA4-yNUfz6!~HqntZU@El?{&y^zn#_UB_i(Kmwi$%6{lJR9 zfbJ5C+bI%fUP!!SpBSsa;ct0flGz#2*Q%w_1GqeO;B8|oWAoStRIbJ9QzMVF)wZ_9 zbdSadl+P9D1iyhhZxB;&Izp_LVd!#<63>t5#@ko|J>wt1yCP=6Zs^7%i$3exg;Qvn zI^0u7;R#*MvInU0iHtPE5@>{Vt|?4r&pM_W6^=X6bSe+h%%)n>ho#d!hGhkV-QA-% zMLn_3=v;`RXbU&?klI-PmhU3At7JS?JhJXR<`dn0SM3Ix>*R6{YW;~{atqC-I*y!h z`uR(@9)8VgQW+4XI%fMe)0>Y2p-gsC~wrR%Edz<1xAB(wbPUBI4Gp oQ}APaf3ElY$^83_chw~mk2iBg#=AM+&ACm}ZqEP5oPRc*Z?|nQ{{R30 literal 0 HcmV?d00001 diff --git a/flex/fl.dir/RelWithDebInfo/fl.tlog/CL.read.1.tlog b/flex/fl.dir/RelWithDebInfo/fl.tlog/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..2cef167bf05e6f649c076eb861c72413dc27830b GIT binary patch literal 1692 zcmd6o-Acni5QWdR;5+nEZ$e{L#Je<2HMlX7Uki)A|4XRf?3#l0PG}7w%Vsh^XU^=* zetx`ZqkDOcD)p?boC>{a%~z`$iQmgSl14ca$KSOoWx*yvcCIs4^YemEtq0Z&jRn?a z@Y%Az!1JAMb-9nXL3hOOLQm**?7UJfSq)8&We>jMTbl4E(G|}Pep2?P*`wEBYxp{} zBf3P7GeMP;V?z!R<%FvYYz<&8$h0G;Wys8HK+_|sd0b$mVvW*N*JQm4x!Y=7tO&gpzm#)%SZJRekt6}Acbd-5H(({0LDyf(8ZX8wMc?C9K)>Sx>^ H(|z&U7e(2=%$cj7g=P&pP4_C_v=B;hQN)M z6MHNTcPia3I3eMO1tFfD5UbaUj%}JT!k)8PdU|Plah-`wYgPqZUT$sje&wLKCOMCL zxUX{~-dboGZ_L4Hu9dT(Go>=5G2X*T@wm8VZXoOZr_Zvqrt=xH%q`4!IL>(4zw!YU CcyodP literal 0 HcmV?d00001 diff --git a/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.command.1.tlog b/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.command.1.tlog new file mode 100644 index 0000000..8ba84eb --- /dev/null +++ b/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.command.1.tlog @@ -0,0 +1,10 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT +setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd diff --git a/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.read.1.tlog b/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.read.1.tlog new file mode 100644 index 0000000..67291c6 --- /dev/null +++ b/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.read.1.tlog @@ -0,0 +1 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT diff --git a/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.write.1.tlog b/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.write.1.tlog new file mode 100644 index 0000000..8a7c0d0 --- /dev/null +++ b/flex/fl.dir/RelWithDebInfo/fl.tlog/CustomBuild.write.1.tlog @@ -0,0 +1,2 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT +D:\WINFLEXBISON\FLEX\CMAKEFILES\GENERATE.STAMP diff --git a/flex/fl.dir/RelWithDebInfo/fl.tlog/Lib-link.read.1.tlog b/flex/fl.dir/RelWithDebInfo/fl.tlog/Lib-link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..90c9ce66ec8d3b5fa43e4d75fa532407377818ea GIT binary patch literal 620 zcmcJN%?^S<420)w;;V4bn>UajG5nZi4MK=d;q210*`?z0~YNtuP zN;S$=Dbqy>QKuGUdSmlfM1Cm;?#QgH&g%f0SygzWb7XNK?8go zJx_XdTx+#x&u@jH-~PkV6y-f$PMm?`@u}8U8xXJ2T5!HOYa>!H2<>A%ejP$O~rh2a3eN#ULy_pn6Y+AfR{i%89|3!4Yh(9#G7Q!Hc1WrnW^gL;~Ft1hg}N0cImF0~ZN) P;`b9Mbo8J;1DOi|bQv$j literal 0 HcmV?d00001 diff --git a/flex/fl.dir/RelWithDebInfo/fl.tlog/Lib.command.1.tlog b/flex/fl.dir/RelWithDebInfo/fl.tlog/Lib.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..20a003447f116ca360b819b6aea9d598a91252d0 GIT binary patch literal 544 zcmcJLu?oUK5JX=s_z#i~h>cj-8I2k_6NwQM2!e>9h1M2+yE=D?b_zi(7H(&DcW&l! z-!f)E$%crS35JlIK;4Q&NcqO9m#_JVRCuaM + + + + D:\winflexbison\x64\MinSizeRel\ZERO_CHECK + + + D:\winflexbison\flex\MinSizeRel\win_flex.exe + + + + + + \ No newline at end of file diff --git a/flex/win_flex.dir/MinSizeRel/win_flex.tlog/CL.command.1.tlog b/flex/win_flex.dir/MinSizeRel/win_flex.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..cb3a0e90bd3599d63b903ade68113ae2b8f4c95e GIT binary patch literal 24408 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 literal 0 HcmV?d00001 diff --git a/flex/win_flex.dir/MinSizeRel/win_flex.tlog/CL.write.1.tlog b/flex/win_flex.dir/MinSizeRel/win_flex.tlog/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..f4a945811a63bfa45d45a2bc27ed2f4c6f49bc3d GIT binary patch literal 3748 zcmcgvL2iRU44iYNeuW40286V<5D-h%q(aR{`t~-nAcswEag@14#L{@|vDfSU|NFrP zFPQL!8ar&!pu!#n{{?ikOlR9f%Yc%W0-v;I{Qh;IOX3~ulDU+*V2uT9pYENLr?YUxv%_H=o!JlDpu|+24Z6!_HGY>eU#r( z2gAqnmNOQ=8s=%y*4q~WAJoHtDgzE^-D-~1pdfp7hYqQaBmKP1T~cvAc{Lg5m`di= zyL}v}%Q8`86wi3NVO}m1`FNhc8L>4xe_}*&1_b_oQ?uC34Xu~)c8vc0;f!nDt~FQl zXPhdJ&)E80!)0eu!?sK`n1d7bGsan;vZC(xE}Y5Q&aVG%}btYFzm2qu;5ru&WzQ zsEHNA?bNCN+^hfkdGlHZ(wDWoltLzQE+ffhDJlOdnIc&qWKL&ukaXEw$PAsa*PKfw&-8>C z<5bUCwS5y~7Akp8{oR%PSTk~4MzOb| zj+W`T=2b;}IPLm!b^=#9&V4MOs&gehV{(u?*wJTFW_Z#V*#w&j{`C1ZHS794 z;ypC~yX0hz{*?TT`BYZ+FRN`9xAAs&!7k{oj+vYpcsf51VhY&&fwhCr72sWlbL?m$yUDc-pLcWCvW7MoqHso>KA?ZWYs>nz z(Y!==$L}o~XU4`Al0BN2M(YdcTe*_Ae7-a5B|fKz9_{^=x%cqg_PEBP9q03Nx3k`( z7Tfw!k;jxhD-(SVM&ERi;@IqKC(p5=w*|dL+&BIW*fAkawVAP&pr4zS2@_yzq0e}m z(E_~^4DClZcg{2C|DW4PNK6*n#-#Pj=rYYlj=iNkmPh!ek!ap8@Ni8 HIIH^wDjUDd literal 0 HcmV?d00001 diff --git a/flex/win_flex.dir/MinSizeRel/win_flex.tlog/link.read.1.tlog b/flex/win_flex.dir/MinSizeRel/win_flex.tlog/link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..965c5c2b742be33b620c5bb24c0c51279ba2b14c GIT binary patch literal 7114 zcmd6s+m6#P5QgU(iFepbxQXa4tPpo;lI@0V+A4=VR1tjD_sK( zKC{5mm1+}(TiFpArOO32(YQmi8cP-?megFO@%U_lrty&)#bdzIoSveijrRhoj~k1% z(8vS+v&sIAys+0>uwc)&(N=ZMu}6_>AzrfZ%*)lmnuJB?02FY&LUX0HC)k@L2!(i*#0az%dEJz2efCGW^ipXFBG zAM3Q7zEAGA2l};q>t!JyxchniTS7}B*Ib_%zu>#}=$OA}##{NwQ`b&SM$#2@L(ln0 z)}fWkHZQ4GuI8PWOg`os*3OnoGvQpKOY?|E*4$!CtyIh`vb;$9DiWF0b^(Kn3wE3F5V^oj*A!g>1*o#|Id{H?UIArXgOx#u`$Oy zJT}^piO0nna$}pg86r-z@z@$)^6|Kc(~R76W6y5_=k2Na*6^GqRhHJHd!FHhvWGKn z;f(seq2K8}r{32y(~dDM3~9r&as0b<{QJ?d%?-a@!;+OV_tbG2_x3ldQjT5G%eO9I z&j}TtvTD66`@W$^;NO8?hY>2%ke9_pRW6aEqn;)B6Qon+9v4}yQ)6YdWa-d{THBv> zs5C8p3I6Dud@+5Y|DEaoX7|KR19m_T&x{Cak;?l;Po9gxIna5m>xrYzQeaEv6B>{E L<7j0-Yd88Alm_;p literal 0 HcmV?d00001 diff --git a/flex/win_flex.dir/MinSizeRel/win_flex.tlog/link.write.1.tlog b/flex/win_flex.dir/MinSizeRel/win_flex.tlog/link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..b070f8c1c63525cd5349141f5179bd85d0a73b44 GIT binary patch literal 2410 zcmcgu%MOAt5S+7#zrqK2<53jl6^aoIkstBf)maFHgBK6ZfhKI)PG)CzyYJTn2@V)= zLxvJ5ayWE|_~%hEGOV#>&$vbcp3Ts3PcfbLT<<*J@XHyEaOK{B_e413`A4J}F%cC= z2^obFBu7qOf|OFX9POl>B8NvJl@ewJwK88TSXm8tYNo)lO4YcqLQQ96Q!miCu_m*I znRJp&TCXxcb`mu6M=0{+f@M8DBu9;U3+n6}MJ;$-sGp|$d-Qzk6s%fm7Lk<`>9)li tiFul;(DBXIur;nRb6ZRBdg?e&It#l!c0bG~-{+lqhT6_Y)>j + + + + D:\winflexbison\x64\RelWithDebInfo\ZERO_CHECK + + + D:\winflexbison\flex\RelWithDebInfo\win_flex.exe + + + + + + \ No newline at end of file diff --git a/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.command.1.tlog b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..d3aceee04172aa5e98bcd94d1d18f912ed9b6a2e GIT binary patch literal 25080 zcmeI4U2obj6o$|Br2U7A`+~amVnXT#gh0{wQppBXXsCs-B6Sq;q3zeNdyn%m0$g+^ zzI#VHu~kF)a7u!BUm4uoiLs zQ9ejXrgDK}^S?`aUoH=RwDA{t(>9)Y?|kB6-W%(DW3)^YHCLY>WMR%rd6gIZ|G>Z6 z2XY;shjMAIW=Q#n` zp!OYU>^)%t-(OIprG#>ebQ5!(Sdy~WxT`f^o4Rk~l!w+NwU!dfZ=?@V?gn{YaaL=R zq5%Ke@aT*2P<;wehbBC{#W%Bna|o{n$hnng+zI6gcb76pNqWCvN@}3xqaJFT7AU1P zo68FQvx2`NdT9Y4LX+bGpUUzJ$7l5D8Xj%;>{|L7ZKM6V%H-H@C9OjpDGKmUJ)fk% ztzukVaj8kmuhCwQXvH%8 zh`!McnVIJX$a!I|HmJuAb)KTOmuahLYi*HlhvOXf&q#YNUu+2F!Os>6g?=QVNGK&2 z2^DcWA3|mMVne7J*k2)`NGNJ3=xGuvZw-~@iw&W4B+w_JNGKADgmN&-%kssBP<4!q zTNwZQ7&S8*#j#!zdtx+-(I}14NEsNl{5TP*TYnqeKVUP)gTQael8vMv+lulmkX( z`C>z;F4lep81F?Z0u$D8H78edGJekZd4BQp)10v(Ru78m9%DbBV?XLD>MH6g2fFH* zF*c;q_a`(SKP0J0Dw2w%azLtM#@LWbBk2{+`Qgnh&iQf9k8^(c&-on^<{V1t`^gpa zt|sGEB5tR}=*!wMZ>ei_~&Qtt@Bkh^2dLaQ6g`2)VzD?)AfWlkvw`9~N#N{z4&5cL%G6!jDt17ix=U=2?Bc2h>Mq8x9IU%S YWMsyOTq(+UJI9EOx4YO+{g^R-0f5r5H~;_u literal 0 HcmV?d00001 diff --git a/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.read.1.tlog b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..0575ce0835cfd9513bc1e03a02a877708bc81fc4 GIT binary patch literal 99654 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 literal 0 HcmV?d00001 diff --git a/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.write.1.tlog b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..784a1e8a59a732910984ef074d1720233cbee1cf GIT binary patch literal 8028 zcmdT|%Wi`}4D`8De+8*(PrdO??QgW9?Pa;mm2f!(RC zcTnX(Jrruyd%VEf3?T@2hbG3bl5WV^}HBhe_<4W&^1`Jwwu~eU;g>CS| zS-nGtI7&D8f$hV6OTk622JbX!tBs3}-k^v6R(5ouqgu@#8e~8(H|QYuxMH9E7$qh0 zlU9>{cPu?Unr3 T(`SEiw4CDm<1c&Uxa|J`dC!Ma literal 0 HcmV?d00001 diff --git a/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.command.1.tlog b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.command.1.tlog new file mode 100644 index 0000000..8ba84eb --- /dev/null +++ b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.command.1.tlog @@ -0,0 +1,10 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT +setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/flex/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd diff --git a/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.read.1.tlog b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.read.1.tlog new file mode 100644 index 0000000..67291c6 --- /dev/null +++ b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.read.1.tlog @@ -0,0 +1 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT diff --git a/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.write.1.tlog b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.write.1.tlog new file mode 100644 index 0000000..8a7c0d0 --- /dev/null +++ b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/CustomBuild.write.1.tlog @@ -0,0 +1,2 @@ +^D:\WINFLEXBISON\FLEX\CMAKELISTS.TXT +D:\WINFLEXBISON\FLEX\CMAKEFILES\GENERATE.STAMP diff --git a/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/link.command.1.tlog b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/link.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..2f0566e42427696d38d34a82582226711a042601 GIT binary patch literal 5308 zcmchbO>fgc5QgWB#D9o-;g*OGafrmhcHGo7Uy5x=q>2hkDiCRqC?F2}cHo)aZ0e5` zrQK>3xw2=+?>nAsGjF7zJfa@i7m|cucfMQV`vFP~IVo zlc0=aVyX2IGK0pZ=8~YCTA^XHb}BP6C^KhE*zBF*>70s5gYK}NjGDiTpsYD(LliiF z9jAUnB76=TUB_}da3{SXtw{W_I7$^r7(2h({Ev7y1X&63EUBO z*_9Fbua>kC4(krv?`fBDx@Df=>xgT})nV_u^pgqqV}7B5l_ zUo<0Uco6Suqj&3M)58y2TRoH6x6LmOp;{Z3!&;ZK<1zcOG<%Y=OMR1D6P|5M)T#n5 zovL)&db+iG$!X#s6DrR}NP8B$&l!5NZTwu_JIkCOH&dIBZ#GA)ZyMc% z9Mt+xv3wyfZenW3mJdD2A}`WsFMPAhCU#>;Day#Q~5m(G`VTzbA$J!L}8f|CNpxw$8cMam!6fsAa>JOF{ zlslh`O)=F&ZLPMD5(`RQY_YZ8l9^U`Ok%pi8X47o?@du_V#C7NegmfNAq(bgtKER^ z?aR_{Yq>$cw!2L&50aZ&RD({J%rY_7Yae$9_QrW}LJnc6(cn5mNhlo(p5?(rbRE)0{?6#CRvM2 zsoNo@Vpl$vuF&FoVr#Wvoo*pbBrOd zK^}4hHkdD20xMMI<_+W zy!nx9U}`&doPyd`pSQF-JnO$6<&azYG*oh1uC?O{QpXeAx~h1~w@a#dt?fJV&6soZ zyZTcuAg7goJEO{v$dR@B*R!$&b6NzRAn*X8hsxBiAJ2=bHP4DUD(B&uutSA$USwUJ zidEK?OdWcE*7lr?O4Fd1ppVwccTQdCKS})`xxsE~umf_q##m5;R9-L2xFZPqK ygQ}w>tfewGYLAcm-dd?;uJ`$CAl0l|{Tw?ku`bWDox<(2bEp2lzLw)Vp#K8ms7Ocv literal 0 HcmV?d00001 diff --git a/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/link.write.1.tlog b/flex/win_flex.dir/RelWithDebInfo/win_flex.tlog/link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..7e78ea2daf1512727649d7e50065b98bc866b07a GIT binary patch literal 2812 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

      0nV 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

      5(%*q~S2} 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 ijEGy)BVK`w6+aS7n^&L{9r=V#Mz}@Z1 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

      RfI+UWMLs&J9Bc*Pca+r62{KIR@(Q^r1 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ȹ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%0AE_OA*Z3Qy;8|H((3@@1vfeKZ7i(GakC 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%0DhfV!6~HS2x&F%7G1!ukiLZwv+0Q0 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 literal 0 HcmV?d00001

      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%0Av!6w#={bAfxn3Y$a0OE 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

      `o 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 bR5MV`Ks5u^3{*2v%|JB+)eQW@X5fDSJKC!k literal 0 HcmV?d00001 diff --git a/bison/RelWithDebInfo/y.lib b/bison/RelWithDebInfo/y.lib new file mode 100644 index 0000000000000000000000000000000000000000..04faacfb8da64de00f83b644b5c329322dd86e74 GIT binary patch literal 6290 zcmeHMX>e256+W_zgJl-UHcMC^t_fz7CE3W5*<=f-47LGdFcf8Et@Z<1@@O#@q*DVf zG!Ph)4uv!(#pad|h6&UL{oXbzyzA3;?765*t8& zEu~P%>GOGgFmtBGXt1bM#_|Q_#YHBg!2oqu)&o!4*OdJ3zLKyrn*>1HpX(Ho@JG^P zPvMc|#&nrzc3N@P)v}P%!TQVsGa4sm3UlUvtU^1wXJ}-0GcS*D$5NonJ|f- z`c|t{TCJ90GmMZptdGGNKwhj2I2!}mb)GP;2n#<-0XU9{1YZM2zMwkRo(gSUMaxYfU5%+rmi(3lqA&#F%W%yka7OuzIqj}hC zSNgU2VHg;&q``HI65Ok}wz;!r&na45T3K3BT$ok1Xo<0+GAmj+zjRi4QQ7Q8Sqx3T z6Vn<@(?OyjbF&J~t5}cA?QFEMey_*OKjZF$$c<76(-cq*@EK&lXjmHpF)w57KCj>F z3NSep+7HG}+kbZX z+vj%tb7R-BPzyjChkH3V@67YN=eQ=8sEuoyT`S%VZhC90ZOh$xx}wp`jtx5n@F|B& zJbtdW%{CfuZ61J4ey>`dZScz zv*SX`$i2@2Y~XM|-Bo7Lp0qsF93GllRdH?WhQV7y*Is*Y_MNqBI!34uH3NLW;XDIh zR_`vDSbaoRq-$}EoO|H~-QMl}QikmKcCfXnbH~pB?sK?Nt-ri9!FzY-Z$in|ejW0h zPg>vh>3?3et5ufXfB3MQ>FBi3dofZbt>nYo=T>&KDtAAe+Wb;``a1<*-s>1Ya__d0 z`a^GCQ38C8^YxIYGZvZ`_`EefYaKHOw}GF@Y1C=Qo2yul!@J7Q%wq$7vsz^?@z~u# zhZBoRl~SXbqEjnX=AhjdFx$Q8EPMgWDu2MidX=@kXOS~#v3or(wg&CSKN4=%Cb~*{ z4;a7Cj>8npJoAKmd!9J8l0tKX-{}cxR2q$WiP2o?^}79LavNrKzA{gZziL&UnH4@l zgWVVO-~o0%`Kx}b`^jIzwX+9(KBvbXdaCyutPZEkkNxsKhCFKulqxFFPZ$=N*571I zo6jGm&G;BS0Dx)pXQs`k`Es=SC=mg^A@8_p{Rw9IM|3BoVM>M(_{1w4OXEb{6fBX~ zPsSg<^YfTbhVOGu7K@w|;S>EEOvO}A203X8U+r?3p_qDj_B&#}bK@+e=i6G*10> zGe|1)nir@jND_pP6e*;@ASS!CJiIMYL+3D(-Sr`yBz$~+b>RFr-Mwqb2nvURNUld` zSt_A(PZs?j7F_9ms~9yT90nqpAKu#dmWgYPd_=N78i`b5h-~J{3-M{Ouyyqoi^WQ} zA<`dI0iVw;S$FHebG}g(!?>qbPks|2KXU|`_E#4!-(xY#{OTA z0iKz>yS;X+n|O2l8=s;H?o9nZlt>tbJXI*ri=hPfHxu%}6ibvLJHbdI$FyY-Y9Q~F z5K62+k#mg{blVKUl+4jWK42J%_2}SW1!^Y51P64n5z)!OG%?J9po#l4qYQqaz(Woi z)D!2=!Eziy&QENff)f%J(L7rxvaaKF{DbC{iuEz&g@BCjfY2rcA z@?9oP%SikqdBDfBdScQ?u$?#$NjEE{l?@BAm?-UfolDXX`)SsL;|3QCpV0T}c zf}KRX*^!+&vHPtt!do?+o?TZ45;VX Xw%-}xJ-W!Jxs?*gG*^!EFM@vqWx$vP literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/MinSizeRel/win_bison.exe.recipe b/bison/win_bison.dir/MinSizeRel/win_bison.exe.recipe new file mode 100644 index 0000000..52474c7 --- /dev/null +++ b/bison/win_bison.dir/MinSizeRel/win_bison.exe.recipe @@ -0,0 +1,14 @@ + + + + + D:\winflexbison\x64\MinSizeRel\ZERO_CHECK + + + D:\winflexbison\bison\MinSizeRel\win_bison.exe + + + + + + \ No newline at end of file diff --git a/bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.command.1.tlog b/bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..99dafbc309b2e7723dcb33ab9832cb34fc822c6b GIT binary patch literal 54186 zcmeI5TTkOg7>2*=O8pOrd!Q^_R7iV~6ExZ+usIMGp++o+EfNcegIe{+w|&2H4306B zohZZ2BZTdYXT~#Q=kfb}bI8B{{BBL#vLhQ?+j_Qb9c$Tv)%9s$y9zm)IUZQw8ValF zOi$;BIvOgj$LxeOLt9mhpY11GvlCm=wjFVWA5HhR_zjh_tG}#X-B8}f8_QTuyBVGC zD6~{Pq`$IjyVU5F6rPL$aDa7@5=!Iv)pA^4xcAbWv zjG?YKP-sJG`r1#zGvfKz^tq?@?kTUQvRtU_m#Wc~o!Ljlo`mB(B+vU+XT9dPq3-w7 znB~wsw&!wYe<}W%^1V}v-9>6=QjNuO@|WgIQ#qmp}_vh=4>>G#!M>$a&U zbJg~At@<>-yp?a&TE}XmEtM^MdUxzJTydzBOX28FWq(jTPgKK|$CmIGx>vdfZO;|{ ztKu$-Msb|;_N=K)E&Hrzx~BSkfpe8_iRXNTb2)K}-()xk=VCec78=EIuA{fbFDSRd zTlGk+pH+*SdXu`wt%o-n$}QJv5DlWm5^a_{aqJp|Z|zXJw2GP)Enw8oqBtXLi2L1 zg*{rDd%^e(#&0lwW3l5mo`_cDPaMm(rO$j`41TrQIb?7Qj={0Ta_l*K;u&@zj?p_% zo(T)ZpcoWeJjKfNiR0K#m=EAHkA2QDo-#aTc*^jUrSp_k^Cy;N9nC!7v)>>Y9x{#G zfn<;@CCQ%CCzfOVFggP@h8lxmFf1j*X2~-Tzg&my%R_dERmu1=v>4;d5{@t1kw2>z zEWud<#qq2yADOSgfgVGTp~ui;>GW8cJaPQ;d71EweoEGyWzE^NYtEL*6U#4O>xc3D z)hmxP-h%NKjJH_qcne>vr;0$aJo7b#+Srr$#qf*a7fa|D>xer=^2G7We;2}6*~TA+ zKMa2u{;+iZurhgK`85&+eFe0Zeow`Jov9AX&|+vYv{*td*46X&5{2Tp=D)(!71Nrc zn*XlVHdKRZPz|ajq}t02ie=hJI?ekL>Orqzb7FI1b7FI*vpIWugH{nJj%U8^*-#_X zd<)B987zZk=~z}ppE!=~Ns;wszq$u48*ST#XIPt9n^>C(t~^rfS+R_H7J~~mpL>)+YY4U zI&cjO6$=&hmQ=kxac!1C^D+&MhDJl9q0!z$qvh<0W0;Rkt7(*)|58())0&;wlDOPf z_?8{nIHy+nJw!>(>xU`#ZEMxhan`()UTB07(U)i-?>i?Vm zy&PlPnC=f`y?e;1-tEUa?=kP}UY}01-_q7oKG=7i@p!woKHYzv9yRrOB8^;Edk(@m z56SMrhJAPp@wt|+)0@g;T!`r*Eu|i*H^{G$<>&S3Db{ZA9Tvm;@;FR%hB@iXNl!Z` zy^22Z9Bb-{Z|Et8V?{2*G3KN*Cw;MV(w$>v`owdLK2BFPReBSa!7^C3c$QTWD2``7 ztE#4N^NRMn!7lM56dDQ*e;NL=bpEo}IW#ZZ@=>?2jg=koqTxkL>qUEFTNQ`qW!u0$ z$-3oB?1^VsU%yr7n&prTl0mZcB%7sA9LKUe{98Q0 q#$+}+v(cH2p3whaMV~m1jpQS1+vi|eGK&*Mh9X0erBr0q{P_=!a;`-H literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.read.1.tlog b/bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..4b42c4fa40417995b2c23ef3ab0a5f26895f4dfd GIT binary patch literal 320376 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 literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.write.1.tlog b/bison/win_bison.dir/MinSizeRel/win_bison.tlog/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..3782419d14eff2768c75ae89f4afbed085a36400 GIT binary patch literal 8606 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 Rkk6q%?)Gn!yU5+!e*xbNW&{8L literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/MinSizeRel/win_bison.tlog/link.write.1.tlog b/bison/win_bison.dir/MinSizeRel/win_bison.tlog/link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..3ad44ed1396844f37f77b415c3c816711ef7c9d8 GIT binary patch literal 5370 zcmc(j%TB^z6ok*(#7BX+cGnwNZ7H@zfe?KWpI!atZxBpaxN%sNUVwi(bFTmS`h1Hr z?&A=zQO7D4(L@#7$hjM$b zpW?>lwM#V362}*8y0=AYjYS)x&6i`%+KN_g+`Ydol-=aZt1!Naj#qm@LebrZ( zC7xAqcJjQ2Cl6^yuI^YptBb8Fg!cC{&Ryzrbmd1s=CA9Z5AlTRO;W+feVV5zduvxz zkw5&{PQ;%5wf6X`7n&jYuy-jpd%O05okELU)rq*6PH5hJy=FHxyCY2lPnF>|ZpbEo SpGsbyJYJerYPMO0*8c{387Tz- literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/MinSizeRel/win_bison.tlog/win_bison.lastbuildstate b/bison/win_bison.dir/MinSizeRel/win_bison.tlog/win_bison.lastbuildstate new file mode 100644 index 0000000..59e4e44 --- /dev/null +++ b/bison/win_bison.dir/MinSizeRel/win_bison.tlog/win_bison.lastbuildstate @@ -0,0 +1,2 @@ +PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.31.31103:TargetPlatformVersion=10.0.22581.0: +MinSizeRel|x64|D:\winflexbison\| diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.exe.recipe b/bison/win_bison.dir/RelWithDebInfo/win_bison.exe.recipe new file mode 100644 index 0000000..5ee2b8d --- /dev/null +++ b/bison/win_bison.dir/RelWithDebInfo/win_bison.exe.recipe @@ -0,0 +1,14 @@ + + + + + D:\winflexbison\x64\RelWithDebInfo\ZERO_CHECK + + + D:\winflexbison\bison\RelWithDebInfo\win_bison.exe + + + + + + \ No newline at end of file diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.command.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..c79b83f4ad9002eb922fa01edf0df629d1d45f4d GIT binary patch literal 55594 zcmeI5T~FIc7=_>KmG(bW+yhI=#VS%S@&VbX`Jjm*DT*3F2rUu?6oR(Des|BAiK$~u znof2%b8&>Qo$<_gX6!sZ?>is)`>#({x3Z0FU`^}Tv9;{ThE~O=zI72YS~~7q&uR#( z;7kYS6C5Ro%a|>fCb2!l_|<-~eVf=DY?}dB_}O&p#jl~9ZT$IqwOx5@YnCyewiKLh z?_VNW!K&= z_Lp|xj_TNsQR^!1OaD2<-|xdkY#+ym)se>_6SIT+cZAfZ)_6`mMqX@1J|lc$cx9hQ z4Npjd>-7;@Lz*7;WB06#k!uB?J81U~^7>wu8}&KnG)2Yi4wlU6TXA}6r~y<<=npD z%+xM%_Rg-66VLCsoEm6(e}~$x1@@n7c5M&1KMyGH6nE(cWth4Y=lE2%Ke7FSJ32#& z=9zHjK118^zCJ9a$hH#eaEur`C?88c&U{Pv7PT0;wr{x@iT#04-bMc{@1h2*gU{z` zqkPWLjt5r46T4?8xJq@AZ`%4ZwAlq(vW$}Wr@CQR?#c;LzHvv7sLK=TJwc6kpIe44 zHb=TAY_AdiJL3LVv>Ci{WZlZT-L7?8%%?EcRX{oVbZXLa(sJ-B$%`j1p7)`~;Kj?cDU5M7SYcf}+1@v; z-imBrkMx}Mob=pw^;|KZLRm*2)Cq`JaXmkxooFXjw~yXL_06(peEX`-D~^|h3g?|4 z#nOZgOP`&HC*p~CB3?YBQAoUEMuju)6gegs-^0;XLufs(`Hn zq~DKd6~;l1Z|uR!Jp=#JG09SYQh!o^;$J-KZxy9B<=&C(-Q3(2^=GI*L;V@s?a%m5 zyeyx>Sa%G4$N5I`>uDUGW|?vJmMq&?EZdiC3TNC9oKx>bekQWioYb7u+;-I*DVL{H z80Q+$aa=#3=jK4lQzuWIJay7@@p$Tr`4q~!7FGs0!72>0TxGe+a+T$}kI{FrSgsBD z)bex+!~5K(D4a_%Le!g$w& zkB)1oNY6>nNzX~o#iQr)WD4UO=f#R|>SxuO#eOwrjV6i3CzmHvDBrl2ljcJduWYaJ zBpOem@g&x!Gb)sMr_g!q=cqcpC!1C_t!!G^wDH)q9q7CwLWS{;>)s_8na8bI zC)SB|VqH9}E22{v=T4yLda#e_!E4}%maTXv-ideOT|B&7MXAlX$DUq#32EJGE#hNm z-)r8#=KX8le@yfKvkY8CtWX|uHFo|kMXCciD@{sJN>EBrN-!oRxQbJovu_9`*b?{D zpR4{{_2)*^pL+t|T&mBO8MP_%r17Njr17NjV$^sko5C2!v3V7Y(&I0Ur8(`}#OT*( zBD`!P8#t;K`Mk1J=p%>PPp4b&I{A66O*dLGENyAcGUl&YLQAyJ5>=P}+-}_d&hG6N z|DW;C@(k>7u^+-qz>q7%yuf+Je6%?}O|UOx%al*{6=xW)Yi}3(OFM8!b!^Ab+Euix zpUut?e>V;nv3(pLR!1I#Ow5kEuT^+$8=3rAuMT2$oez^&_IcEB|K!hOduYvoSk??E zqEk5M>i8zqKss?Q%WZK^YX)e|fbFgsK+fgq6wW#I(b5Z0q*ui{u}-YpKI@7I6~;Tx zTC3pOzKea=**iRv!jr<2zfP8HJpQ`XoZ6Iq>8NC}Pb+`Qi>H-8>BWqZeMOwwlzn}B z59_(*6rgmUbf0vebYG0@E86@R zk8V~ONA_wpDOt0!W@XLBWz81xX%p6IEqJbpFVcy0B3*o>Tc%SO=X@UgmiJ}DYPA5Z n7NEIh5sgYIqEi^>PT`|#+6QO3Y8I^&ofMrET}+Cum{0!z`Tcxo literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.read.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..4b42c4fa40417995b2c23ef3ab0a5f26895f4dfd GIT binary patch literal 320376 zcmeHQ+j1N?vYcl}_#gDRexSpaybg!oq#-47&Ee29BZ+h{4*&lr&N-D`DmJDE*zU%q z0S+@1D|2NTjYi{A$jr+6zyJN8)#d8X)#K{h>Uwp%`nbATU9Ij{ALRe-S6lg$$D^P3 ztKDiXfA(Jf&8__VgZy-mzl*7%stN!t0`wX^Q}cPCHY z%AfA!iJR3M>FIUX*S-AwFX{0gtKU~YJ-^4L{M~Qz25(k>$=^H3Pmil#SHH;bc+0i? zmtUlRSKt5iXZbfjuinb9e@i>R%FpArytm}v`*hD5YZral$S>VtH?o@c-TK77i{0uegl zGbu+~I1}D?y|h-#u78{?7$c0#GEdZb^Fh83c1wF^{Z**_(%qr8Ug0Z!XlSg4JJzP# z!*Aq^t{d(p*8Y1rdDasBwDX0BV~N-bJL~Z`FS`pM8ac?w;GZ@!%RLbhBA(pu24$bE zXTX1C-@9AvZE+$kKg!?asWqN^Tj{y`O3yu1dhT7N=U!EM?tP`_hE`GisKs~kmfb!7 zsq_tiP5Ae+*ti?`ik^BOJEP;Sjv^0rcZLB0W0_yBaBUCPi2#I+XD#;%rYiN^0Uw1U1U z)_UjMwqtv>l^Y@6^1a+={(A0R{jZKb=}n>~oOw7Gfv^H2+6e+_^P~RQ`FpvRS@R&L zNsrLf?+E0pW@?+K(;^A^gciA=h&)uSt4VG_8nhj7^cnIn3fQyC=&j+ zL_XL-9y+`MYd57`Z z<+c&W&j0tFlk9wX#lUflWHVyv=wq4ZF3F8!T*1hboj+En9M8Ac%+C8Fv$E^X$4=Le zZ4_G|Qw%NBn7(VcdVF|w{VzJ~yIW8pm;sxa3(5FMFdDymd6Uo^G1L$6Q*Js zW4FdoTln*#Zm<6S;j#qvdox^-ZTIfw@j$V2*T;vJjYc)@Q;yf}f3dx9lT!*a;`P^| zA%W#k(GNMHy@6Z zpJaZfv^30J9_!7N2zt5)uJ7G&d%^86ZN(W+KF!(J*AJ|Db+Smy4%du+Am@0qly7w> z{n>SQ#*1f9^_2EDva>-mfqT+LH|o6;Z0tOM>jxa>)ep7z=^1M;^aU=Zy|ptJ;#3nu ze-o-FsGgvDBKFQtulszgn__i9`ty0+Q$0cT#N28rL+;6^Bd*W)4|~aM`qTYPg%k`6-5O#6E|>v0G56E&Msv6I4%>t(bPY9$W=V?A)b#g6fIb zx#RaBEz1E?Jpn#tYE8)@vZi=z97^YM07U4B&=H{{LbrU~*kKezgsyarUgkG3zlr%x zp&Hgi=uT@|$E_FCeW2eZ{VuI;GZDJFyRM5awZ}Wq@3M4;it09}DwsmpIQ=f?a=qpy zM8C^R;Z?x;ypcM0>fD&Zr?%;L>7r^W=-f~ZO@xjJ9T7SrbVTU%M)fGF=dJvToe``^ z0~}D#-?7>+ipjR-Ml(c?siDiKlQl22*1kDrA`vZO88g?Jc$upOSxjbNu>qqGIb9q91fV#fp#&D2v`kcJxdh{=K^{&N5 zd@a3tkh|4%_x8|x+WqWS-V{-(^{y=cs=Jwvu|2W=Y*a_zN5R?E8^67t*;h|v0^l2e zFYk!=eCT}X?M=r{6dwnpGs{Jy;~6i@nLG&N0WZdsetnVu{(ALy_m*k31wKkU&={qS zI$F7x|6$xy-pkM9#Ip$MLU!HlDd-t_1o8;v5y&Gj;}EyGwP4uHIMmax{JyAhVQblE zLrjf40(k_}X4Pi2;I_3Dj_u(&rmTODI$baH1XBbW=gCg+XrOr4-F^G%`~3v^`o4}= zd*6^e0(pd=o-@G8a#rLK$RjZ0aNi+dk8)yc<)pwVe=F;6Bj*OHNj}PHaV4jSVR?oq zErHuIM08E0l3GUM=c4;|w*Lot@_$5&mf zwG-bRocp+^A7&^5UMFXY5gjs%@w~7x^1VJ`?2GzF-7q`biDKH&I`hy6Ot0eZ>&vNM zY+P^F(v#ax5wh)6jw$bE8jwqA4>^7xpE1RlzF`I^(uE90C=S3VK_`&*74xw1eil9E zJ#XZ_ZsZN8j(ljZ!7Ry>fsEe3qa%L3K^3HX--Ud)jl5q8v4O=HU+Ip187}0GX<&_;3 zI(kpfZqgYKxv`dAk;|jl?i1-wNO!_K z%FTTxPKI28#Uo|+DRKqm3i5FUVW;cZs9I08H1;7B{R54?kzZShUu?C-_7l$--qY$w zLT%^Dx81v!r@$+FQWz?M-6D0hw3&UsmD_>h8EdK1Xzy5m6{AnXIw$peHM|Sb&xd|K z#_^QZM#t&!eGGIiHXJJy`5m@r#6}UmDn#{Hx@Dx#VXZ?kmtV14{~cpoID9k8#;UFC zeJVDlu+G1UqFgaTD9dj;trPAaf63au{Qm#2(qmV-zx|XJdmTJ_yOa0@k;0Yy`rPpk zpELB@o?$J7p!DQM#1g_PFubp6Od{ru@ek9=muf5epw{66)_^mQQD2sD6)z zG2%D*PMY&)eT@0)`Kk-(DV4{!1q_tB)B^>X=iM?qEl+of`)+5Nvsd`m%Xurl_Hui> zp1eEz#s}kzuXiQtKPb`W#B{#)Zbgv+gb7N?Ink4^tvhLD*D-Dv-Ft4jwom6;oHoio zd#7olhO^gpdi*&tF>rBj<=4Mgf2@9$pMQ}kBV1{cm{=MoZRbka^PieB)zy|B<@cSQ z`=ji4_FY?yY1}m%6VLef-f7C^;of^1Ip9XK zyRMT<>{7~I+sQR{GK5xcU9QY`6Dft7*I!fE#mTgtt{|)|++60|WRwqFOSapCppY#^ zaKLGHvPW#6qsp?o!Rc**j#suTwz1|f<#gz0L;XGtBM_@J)OIg521Xy_@>W78U|3aF z|4SL)HwWDdz2`Y`qoH^7Yi!11BVQC^BR>~w_qCPJC!I{Ik7@OdIT%*dZ}{xQ24nLe zG^_H~gNS7)hrM&L801IpCFba}%6pukZ1kbK@-bIAHqO59rEho2m8J3xT2o*e(-7)c zdn`kL7Pb@V;0yM+hV`rL>^qHpmwE1zxz89^AP&sF{_ot@>xg1~dz4nyIp&kgt~(#* zRX3j6p@+C>4C?ceQRp^iBJoG!k9mDnPh&9Rj~0cF-GqjBI^$C{=7SGg zOBD;+#s}N(-OJ1Oi=DeZEkN05)NaG)n>+ZrG3q5|PkWl5n4F=|d6Ewo&#Cc7X8ftb zcx>PC-GK8U?7dnpwHj$I9m7Uc1N6dmzqHzYndd}%SvA%YcVZm)3r^?hg z&exKwsLwGMpvXsE5^#YRGv`ETU&!l#>iPx~ai`xYYuvKNEozm$a-7Ds zf_fh$;!ecu*9Zdv1Y`n{n(;vPDkkU@f+B1Eu#)rZ)#&TzV1?O8PnYwtoZ z%1;t^_Zif&J=I()=t`#|v7r%E-r_<=Z^D96~F`WQ2viKjUrF>Uqh0WJ>qblpHBJQgWor^Ab2|`&>QMYpY8^TyDMZlsew)rumKe z+6kTHuTvFBMhOfs86`4GDU6bDpNWg|L$~LA$Q7PIW(ukg`rQ7$`bqXaxZ48>*mivC z8>t|mHwsn9|PjJ1?Pdf)<;0Akla8U+<-6k^xc%o zq6I#DqW;amhiJCaD}kL?}h*$ z_xnyEj{Fg~^3M`G=sZ@-*MFT=d9pb2AoWW+r;W`Z--vA`r{^H^5Wm~{h~*L7syAd2 z$RdzMAd7IWEP}h&DTh!WLCP5=h9mwZB7ycCk;!k6-ypwnC3n0Oej{}23)Lm8zo+`R zg4p<2T>yWUG5m2g?hfRO)-itVaR&pJiw_o3dxuX*HTwr~1XoGQW0~xs91ff8snDlW^wSNL+c> zdBOD#KlQ)zsps9&F&HZX+UYaK4}@-KZQeTE9O3%&{P@1{bd5W1R}H_ zgt6iJGu<3}T<$t{-&2;}IC0xW%bs5vpSOp9=j0ahRRq)-nuqVVnRDp&?p9nI^X03+ zkrtkypJ#Z2`Y=fPHX>UXIPBxfH$Ij(ekuARAdvm-e{3J}wFY$$?y3iA4Q|5IeXV`1 zp+Brti1GZ`shjSPzF_FQ>osZV3MG62_~@?XpLU|8@CjJYUuA~;Bdw8Fpyq~}8)|OO zQ*%RJfxH4L5P#`7m1)%&ho}s6>NoNW)xYiZt$$}7_7YlkL>jK1zP(;*J+(_2&1;FG z+8IsUpvfzcS70W338hv}hb-)S?Wvi_D@?Cic6xH5&J*sq?VJb0KIU{=3|g+U$-Ujhw1VB}y+kG#^3QE|+f3$S z8Fh>}_|2*B7g{Ue8c-YMP zth~GDuU7Vn*WJ0l{3w5`^xWG@&)rvg?xE6i?74K$uZYrP^lj_bab zHg2SEUX(GtNY1a56u3>UPyC`cB@m zXT|xTGGR8nCe9POarpEQvHip|s0%{e!K%}>+~>>gQhJ-yDAUfS*wu0^4E6mpe;3~h z;=6oW9)FH!{aY8+!Sr#=f0H?Nemig15g*%wl{HUI;%g;Wb}@Pbb~bf)_354K?_#C| zE2l=R|Bf-rK;MkAv1&^-N5$Km3~YQmcwC`cIauH{b_5kJw7t}ptR3r@;`6cYuFxFb z%H2ozQRE>&3kG#`URB-K$s_1nPx~%sey-Zj*An7ibt8b*_PrqCs5vt4eSPiXD?p8d zy}MT)j77%2mh!o8+{pW>f??X+_4TIpS|Ydd6_H&D74Mvr$@i{cM$po5*N)SV^rKIY z1nNhqAEAEaJoO{=NT5doJraqpg9E*n>Ag(vWphvs?R)fIhDWI0W@4C- z(75_}`PkD5$lY8dIMg$@E#`gyDLT4Rx?ARb{~+_WT5^%&G+P>(@92JjxZ;2wnW+zMm8m!CKCyZ-5~ ztKZ~Qez*Gd`|sdW-^t%V4DT}jKF5suw=~2itcA^*6&rD{q8w`5bPIt3- z)d*{0>v^&hO*Zn~G~eO8v(iFX6!jQ&cU|f++z2gZPh-sroDD7Jxrbdk>POv{`8X#R zC$xuBkMR=p7#qpFviRCC-1_tIo7_;fE>Jst!aR4~_s~b=Tef{xp_hlQig#ZTq5k(h z9m`7@M;+ZhbG5~Os^1A}G4GvB(H47Z5qvu0tL^P! zzTF^J$%i-GuMlTm%J-b^`yLvxoYj-`8Rx73@aLJw<~n09yB3Uz+#0zxa%-_n3Oqg3 z&!ay-T8s>oTWLFP?fdxjJN@~49$)3Y8%GI$?SH6YL zQMa|Jqcx?ir4{x*Ub3tTKqUSnKV_RkN+UB2JG^Fe1Amd1@x9 znS3i+TGUC&qo0569#+4}I4TPCDERD6R}FfeBXbCS#JK_Qqp7>3FMrcq{ZiWSd1S`! z*gj=x{hhJA?yLSg#(3iRW|WQ9&}VvVM)=x-()xP!x6E>!OsR8pBdx$mJEa{RCFESD zw1PVayy-8x`v{Qhl-Ba*U}LQ3RUH}bPyQY6cJ-IM=VgZd@3j5Z~m{Q-~y+)qt^P=Bv*Zv*vvGrUo?-MjYP3T+LQz2}|Ah08p5FRSV1d7mizj+mLq zCjBC(7g#s^{2-^__=dz#sZ~5_1aZ*FV-})ZZ;}N%HtpGM@&=cb6)=NBMLl^=E{REj1l6xotjXss0xouJM8L-NSRce{iPaLT zg`>081sSf0v8WAul8+7cp^&j{`J%wswtP%-+33JxobzSlm~ULt7aMnt_7uZ0Sa)cz z@UywGEBsv4>8?t28C=JGB6X?MrRHI;_g#G8&aGu;Gj*xUj5Bqq)TJV}J(Xh2Qw@p*istd#?!O-DCI-T7P#aMmrduq@6 zmegfDwLP#pz2aeRo$k>4nl}a5o9ViTP;2+{Mb)h?^=+*k>zCrQKd#0rCiv7H+TU|_ zA;25nihmF=cKFOpU#-6J!d-lxGQ-zOF2xtsG*_#8x!YpT(`*9w=e?|3F1mQGf1NT9 z!0v9k(*S#UN=t~aG}^SDVW#J55x1f=?L*(cls;j{%ux*l?Oe)ifG=4}e|p_!o>SCR zp!-f6nKt68ZN<6L@8q$1!!ObX?gW_krkSPp5xtLc=7lV&g3~yhI=ms)gK@#$sC99T zMWyaa{g28rtJGcL4l}KShqBO`MP=uAeGSfV^-y;OwOSrcjwwJ}`{tO5LzPL3GZDUP z*xMhT?(xwQRiolJjx{AIhaQ5 zm{R9Qo!=CuGPEZ1>ip(IkW;|riN-bh?|Cx|y{GTUvaKH>+R-cD9x@3&EwS3LFAVU22=4P$rX z&@CH(4jr#sVW_H+OGmHEJeO+J_995rfVCb; znx7(F0CVF_s{7O|Q`-mX&r_;V^Wio`5Q!jKE>+zsQA7~G2wMO}J`qH%2}d<*-4)q- z-1pMzw#A~~RHIUj8asE?&*9KvS$)QPSqwqrb0Ub-5X5|r8|Bf%v03QTwpw&)_s5tv z)VIMh;o~vU^RFJ2)5XK*+7O2yANzq&eY&(#$ktxjegE{{vdnXd9oNU?hUx=i$IwG9 zGykbRrTTPvJ`$=nxI@8buXny`cPFBgL0l~(IvJ!e1XQ2CUHw}$@xRJh2yYU2z@cJ{ zI&->uMU5DS-X3GO#gJl@*fFu=@LZ$%w6uPZ>QlqLmR*O20Rnrp+ehpkO6<7bLE5cY zq!9+R|Eb^Ga`a8pn%bVup9`6Z!wj6*8MzVt>AuUXyObEBzjeg62Y+F-bFuo5=xwoQ zrM`3T2a%_~!O-!48ulHEik7HEQ2z#~o;C0q-ZzzrHpIxllVO$|Br3jpo_Y1h4?c?S z>Z;$P;m8epxHPV<8GS8&yWvQElbN-Xy=}M}#&%2}lc&21U25F1aeua&6Zsfjiy^0; zO1|EZJ4OAMDY-l;UOv8&KW06ro!q{5fRf~J;m=w90DE7)x(q(1IcA6I>jRW>^pEQm z&Ut8Xrmkb%Y2hGyD@fT!B2!gFVs=>lk(_NkN?eT_PT#|_C#s?YiuKuhEcZlKCuMa~ zRarmEYTC-LSSKh}CtYUsf`h^?cv>m4?5@G;q(j!m=doY*8~ju0+rt~pKj+3`fY9l! z^Ea(JsV_bRj-p<$QMX6k9$h12V+GV~)lAx!+_6saB319Vp8JzO z=i9&M#oyZV-L{R>0~g@Bf|NaXTg~Fo(++3pr|0{0iwHG!Q`Ai@;Q<<_oASkxe#fA( zXxGVP#6j2JCG|{cO^G{?}LwcqW#Or+ir&W4mE!h2ziZhYB43t^As%FK+!tb8c=1{l z5GpWXeQs3j8px^ero#dq7Gme2UnN`r%xhP%x)#0VT6Td4(I!p584S^}%UQ(l$eVp9rwvw(yKe8~ zzwtA~WzQU{A@p3VA7lBDqO#wfY6v%`aDVRA*E@*@r{6DqZCEB$TBMUt2cAy>yq2-K zmH0c4vb?131WFd51QpHWgQ{nW=mD+vs+x*bAjGlOWgKfiiXF< zx?}F>t`^3>54RG5DgNTVZ~dqcr_8Cd$z`YBvE87(UiKpyS4U%b=DPUYCppERq?!^C zBs|APVQg-Ww>fOF>@KTg)Sk1g_Uo8+ojbM`Bl)`2J+L)_Hg;ij<~)As&bsjGb@IQrAol-~egN&@3HC}%uSSCU_cd`2KSYJ2cJDF_c=boazwsPvcA7s_HqNQ$I zb#AJM3)w02DB$pI%?;w~^LZH?J-V%>Mxt(8^p^NjxZ_e91Ki~f;$F9L9K_1rSa8nQ zV7KKnQDqwuzVkSR`%OdP2t9eq1z2I6X2L_>v1f?aN9Ih2JnY@ z9$3Cskb4h4Dy1i(3R$sE8H%bLo;4MB-AGN-Dfr$IU!lF+9>w2V=Gkmcl-)7Nvy*4n z3Kmb|L*4$WP^Vhup5u63-yQ`|S>-HDNv6BrG-Th`BHS`Cnr>!T*_8|~5%(B3pP@eb zq%-Q6$!(=qWM790@R*89FPVL9V z?x!01hyCs;lg38;RDnU`ZD zCWzu_QyKW5ud^>-)HL9e`Rua~BQYfT%3^+BBobs}$NZ-CdC zYCKYL##8mLo|)~>w085IvG28~cW+yX(RS~s6QNEd9<8KKr1b2eP6YlH$Et%6cJAW0 zIk8|e-(nLX2mlr9$I9**)B8ZfPed)MaH@qxe(8-t*DG{Co6<}v#QUdPnlKcuj|1ZqAKEA{+TjTdN$zp z-&giY)$vfjvlrFEzhtNVW5t>(IqvlPPJ3wcyli}meGXOakPC%XhM(cY0rlfDJ$NZK zRWy=soq5qL(yjO~>z75`^6B|Yj-7ht&M5l3>?Ce@l$C`qM1Pk!zY6S1nlEX4Q+tXS z`n#m++S*rBuuegmdJ$DYb`op!ZWm>v9O`!9jSgN}>#=-v>T8U}1fiR-FTSY18@C;w zwcR`Fc1kNRl#j63C3fY}-^H!MJ|&VgkBxG5OUj;KdTXF=hq|2~S3k&&zNB_W_b83Q zkynBLzZ4e4Y8IuxE~{DC>05Rc(XnEgaSka)>fc0sS!QMD9IIKl_;u*sx)HarednTa z*)h2`PsgHhw{7z!qbg@yYeH3y&#T2ho3^5VI}cS(=>4=-C{QS9bD;Rc`=+t_)aJOO z?fz{0RJwOeOWGXY8&U%^b(hJffjJ&?y4X+!lQY+PNezl}8C1c*N#n88*{NCq)jbu>#juK2~Mzm zr4)Tm*fFiDg1lH>hJH-SV~LyemY04CE9bV636rlD-M~e@$<*_3!v>*uV?D}4dNLji?EsCWM-ho#2)hJJi(+uolrArWqKmtL>ww2|Z2hHgYL*1FPxH z>aXwj#S~4{aHdfcLQTj|qBGV?)@A1!H6hf5P!mE;$aDoBloDW1aknunYz*BF@!i`l z*BA)*T29i`*2u)iA}RDV(P}1TS+j4Im`i$^*v?Y+`_j{7nQOJ*e&cnLqso{lOweGEFq zVR*=KXvP!rOY&7>q27RcgVcHH(^A)0c%QDGD>>J9vI;*x$5!q2l6nK`4eF_1SVQIQ z>fcgx@K@O(rnpuOy)wpbeIZVVHB{=Vyy!uZ8UsLg(N|uIT?cS)9adv2%Rg95jk@$x z5tq;^W(}3Ov&gXFIc~k7(WeImY8mTo=4I#&z9z3YV7v4YcoYPC-}!k#QTdyU>bow2 z!SBEs-g)o`su!qUz?qjfpMPITtwA3Fi(Se_OY{*K-V1%$SJ`hs^@7Xjx<8wGAs;Jm z@oCQn#x#T@>Hpm-OCG$uq@F9I`y^ePiZXGtYXN+*jsV&(m2Qq0pGZ3>*t(>mJg|Z2^l)?J9K$B zd3O2cM7|s;->Qs9_iqIYz%A@jRwfYL9!(irL*ch<#l<*xHkoDVU5IKyonmjhy~lQ) zxXdkUt9P9xkAe6Cj$8kdEXO}qzps{YNV4x(mIoz|v4nz!`CH82I?h}JDvw$cZZ)C$ zH!AWN)7_{LSNE(ld5jc(U^te{-(vn2^S9b(%*bPq$5`ezgsR$~yUgPrsjD9^ot|4R z7c_=hC^C0i2bTF;>hy5vs-kY?_x)tFD>SC$F-o&wA0!^$Iv!B!co%SvdvAfxP79;eYeM_ubyi{eneB4Su+vE8Gdh;3T@A4h)&z8Lb zWTGvmC^!F+!qxdk?3DR11b%Gi^R;H*sT4c27uRy+uaKP~J5wS96`E|D|795{oc6%R zzjV5ZtM2CqiTIc60ofU{Gh}CC{S}#Il5_RYT`zt#nPn0`b~uHP*~}~9r`LkLJ%~?g zkH6JNbx!q_W#f}mg$%~yCFC=aogq6zcIHZUG5C2QPn+xv-Sz0M2S<|n=XmSvj3I2P zStjs>Kt6~n+YM70!xTdth*jLl)!ql`7joOJy$iv8K1tNqqd&1d)i@1NW$HTvIR+DT zvHFihsqoxOZIMh8M$s^87r%CYHZH;DTz?A~n-jiP@-az0Qs1x9cuvViAvaQwyc6V0 zUdW8aKQ}UKr}4bL(NmO^Zcx9-DB^!_<<}ICaoZ`Dz9TO4+$B+R;`CGI+v|3N^6h!k zcIHsLgT2taiRpA~s&HTSNZB1uQU3NcUfM4@Zvpw8cQP_#rF_Op*){39k1rE%xKG4< z!~gGZie=vxx735&05@_wUFvN^^`6VVDXXBBna*vOT?3qCEedXX$NKB$Whh$c&`XEjm*mjTKVp@3dNjNjeUtGz z?&H`=%^a>lrEv#?Fpmyn)*kRw7O((}~!r zo1-nXtO{9cwd|<)lpXa~iLME%EU2=0(^Vv`l9O2W<|Q1hvlD0mBm-t;lan{ zuCh**#WJ&*DvM>tnJNpaEU2aMq~V`#f~R9PIm8yUiZ-6D0hP-S5` z8B^|t82R>H-Knym%A#eJg^!7%mSM{NWBk0!i^Za(%Gg2qaqpZX^|4B78Sq8iHRAqk zOuvrORO?Do4A zH5&fi5bGI>hy3Rt9IKC2u;hsqhpQhE>K8xe4D0u5I4?J%Gk|W*jmg^UCAc_LUs*fa z^Y(hl`jK-`sneMVH9vOEhv#^{y>F~26&;E-p4y4(6?m>{dg)L+^&X1350?kT0nl)o zp3D~+)L#Q_^DJ%m?&YySW07cR?)q}h%SNLXQ=c!R6m}h`zblkSb(feuLnUziag9Ne zLu=BX_dT}4{dY}ph(ml$?^>~l-GiKbxF2C16RRUuN31SBtA|(}vAScu4Rboc4657W zm`5eCx}2+rSY7;RVkT0nm4|a7R%duDtBGm8rqAnT>^2m-TM?_9@BK`yE|o`SH8GqG zm!cU;#o9H)5;~-dtqff%doPV^F@9x~QBi5P1^yyV^eJ!<;SLN>;weAODv-BoR zPc-bNW31jV=AhO+-x=iBy2oPa#O3Qc+!2>2E`P4BEUz1vr=In(Ly3La79YRI%xlr1 z_SHRO&#<{!{~;dfZ^^0I3W|~DYM`yRmi0gMONqm@72#1gSn7s}X;U{$-SAFO-;J<4 z9|a4k^sG%V$uTVJOdrhblp=%fSpehwAQSU;)k%7Wt) ze2Y$Nf0TVL>nB;>OWAQ|{iJ2ane~%cKk0N2jpZP9KfYSQr+e4cJx2|@PjaGvPR^He zBZIG#Tk~o8H1^2DO0HRBYQ$hZ#JS#z?kDUcrkMpgzg)?+5!H)pOX5A{F3)wK498= z=F6YFlm4I{0mduG`a4!Wq`0pQRpaZ`kE=gx_nMMzYJ1(a^Yz-`L)xyV zZY!~D9DnNkvCMP#-F~yovvdZoWp~=iFGM_R@sM7!2h0r2$G%ZT@%!qh=Utd8itY2s zS(k%i_DH@pP8EeQ>=@Jec}%R7kfJ36HnNi_Vf%dBSULt{r38x%$8H>!XamJK_HWeSigN literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.write.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..704b4a684e49feab214b6ad9d6e1c7ce1233bab1 GIT binary patch literal 17958 zcmdU0!IIN34Aq$#KBYS_aN^dc-4bY<(qxw|vjacEw*&7vV{9ks4ig7?bm+F*rqX+s zrAo5$``35b$_IItuTslN?&TmmxylCrwbJ07=j3%O7pd^x8lRl-d52dWuH}^n_nl7e zaK+D=Qd_6B%8*e3M*}GjK)TD4)5uZIkhXR!GoMxER);HFV`VyE%aiqhweG-;{H{RP zqs-yDb<%2ijI22yW01DX;(Cwu;%>}YFUq*$k+?$h!jPVG&vL@o-=D zaU~}@QOXu;Ug0?p%Q9ALT{gyFGyWpYM?_y{4!6Q{Ba3(DbI<;3^?`?)I<84vC%UeO`$G5=uA!wRUur;qT4xAI=z!6s*Xx)D9y z5ns7 zZ4}IaZueA5py~T?p<7e}L)!b&N04^$wDqr%b+G@*oLF1;Fvr){&%O!!720}V?gVM0 zdAY-_ji%3mht)y}6pYlYh0E!VD>!`=zHUzI(sDS`db=Esw2z>Tqp#*lW)W$ps09De z?b6mBdWrgRA?RM=q^IvYmgDbxzI`uMA4ljtPj`z;BJz<+e~+Y{eeE?kxt@J|LZOdf zeBPpsVfq9~AB8^&)7E@&6$MZ6v^5X=sM`9|Zm_oY7U#*Kqg_UOn2ZVf|IgfwUYB~h zLq3ny%avcH*!f;N#D6?Q^kf56&}$i2|#ZNT)I^vl!k#WYf!U-*;r4kFVeT zeNWc;r1Nc7J%@9X{lsECHE5rW-QShzNmjcS8Qyni)$ije39HsfCrzxf7|!dI=kW)z C-6J*t literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.command.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.command.1.tlog new file mode 100644 index 0000000..1ad8f11 --- /dev/null +++ b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.command.1.tlog @@ -0,0 +1,10 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT +setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.read.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.read.1.tlog new file mode 100644 index 0000000..53bc160 --- /dev/null +++ b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.read.1.tlog @@ -0,0 +1 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.write.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.write.1.tlog new file mode 100644 index 0000000..92e372b --- /dev/null +++ b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/CustomBuild.write.1.tlog @@ -0,0 +1,2 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT +D:\WINFLEXBISON\BISON\CMAKEFILES\GENERATE.STAMP diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.command.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..00312160f1dfcf42714ef392eb8cd6a7c96c5ad8 GIT binary patch literal 10636 zcmc&(+iuf95S?cv{vqlMPbA#LLnIz@aZ}UWYC9!C6%~|JAlf2PKs@m6z&X2h9Xp#e zbgW%fX`J=?%w=b1$7lZjc_)2o%Za>^SjMt1Ly2TAUHnRAf{~NbwVidkGSac|k(ouz3GQ})HO5tjs|-&NduXI&(!{T>yq4eIbV-eMJ@1lxuz3R6Gvh7a zcK0BABva_nf#=5otmmpT#$xFq3eq4N%%DSt=w!Uk;R)-J$h$7wAqhNjys{&FM?|4R z6ks*>VLkJW|2UxJIX)p`Z~%*$1rr$ruzUcIFOUNcg2+zHe)ApW1NgdQY(B=CzxBS; zW32cPI{3DmIlf~~;v<|m9pv1F$-OD!&$li-b3*ul=WP$N^P0oI-HAL2;B8hov3I#6 zcsfL7F+zN&SZAIlk4<*%dbgc>Z3Ov!Xu#THKY#`^cz`>tYdqmQ)+bnn40)FSeaoK0 z>I5;s^|$$c6jTT9K1L;1BUJ90!Xw;`*{x4_?)zVvLW?hi&x>a$n#-XEmAqeY7C86{QJW4PCOm> z))yfUh0`H~f=@p*9qJ(LI1 zLKLu0Ys(%o)b0#0PnFFquZtfh%N9XO12S2S^h|ZkN|}`j-wN%WA@T#YabfJnF}t25 z!*qBfeGHrVJ~+UqfgR8UFKs!|5k|;$?_%9LM}AsDX+lPfIBS@EmjIU@doIr)FTcaL z74F9JDD&h0%pYLo;tGcKL5eDTf z-!RsYAMzQPXZTy<{zyJ!UbX+DLv(j_ zw3zF?8ZBbE15*bYIi+%6MTc7Lmgvx`eFrU?yPKdzEwlAHv?>QrG)+~#ja%OnE&68G z++yGVTppv2ayT71y+zM8XBz6oFEh#7SSgtDTw7g~ zxOiVZVwKI+Bf2i;JbLuI`LhMWgYmNxkzms^G%xdT*3J3VuW~`m_seH Yiw~>=)ADWg>|={n=I(SlZf4~E0nzdX#Q*>R literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.read.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..bc152c794c2683215c09e597cd396923c528ae3f GIT binary patch literal 14034 zcmd5@U31zn5WMHk^graWeF&3}Hk0X_F^0IsKx{)u#?$_Dja4a@M7C)-&Je zxxT@O9#BUZKxlFx%EA%r* zlS`LfhjQEbt`)!^fdS_h;|L6v@BrVmq4R_~*5~Mj8hMs~)z}MIT_Oh9|32RrQ91DK zV^p#?V&$F%Ji@oJ-uQ&$zP@KV7Hjxq8j*q8cIE*;0_#VAVvi7kDULDhjv4utt37ab z&$+hRdX7Y_cUQgSh!d@RogvO zJAQTfuYl)$#If!-G@_>to%56VX0~>L8FO0?y0A~E&)nOcecsfjM`-&5OD>Q{eC4LG zYpksr&9;EEAGEWoU_Fe92z|F&c5KtJXFFn%tp6pIr#U4_{_M9A-8_9 znjl*8o^kRqS7Eg=#}DU}eTl9Lb8JRd-(rhi%6is|o>SshjQxuFB{=1X`~Jk0&&VV6 z;-qK2$Q2G%j71vUG-PTU|;{$A@8fMO60Kas${UMf$EU=RZu1JVI5S*;;<5`XCPL+YrG!EuE$29J^`;7+3$*fAuc0drP?e|N$iLJjZ_%PvCR^pPy@Q;#m4)-7Qe_#z8oxi0yX`xz z?7YbIP6;p5liUx-ok$(FUIiwb8vWAt2X{xEw=bwD@LN<5h#Tg%7P&p9h#+P>Uyb88 zQnD?Dd_UGJ?BM28xPOIu8RPL~b2qi2sk>XFy0CW{`M2oR1tQFA`=_wav9q8<{|myn B>C6BC literal 0 HcmV?d00001 diff --git a/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.write.1.tlog b/bison/win_bison.dir/RelWithDebInfo/win_bison.tlog/link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..e9ce7221a98ded6c5d6b901b4bfb86ead6968c4d GIT binary patch literal 5966 zcmc&&%W{H15S(+W@+n$5=LU#K<%psSVgR&sdJw2~=zCPb% zBhPY?SE;3wtu#`~C^^oe^tf{QwVv;Kzqz)?^R)!r7w}}G?@6-5)l%=`JA3?^;awe8 z39E!B`0hqglB{u-%Zq%NafxbOVUAqD<{sEbRm(IUPh{LF5$((0O<+s<5TfxiI*?k%(*0J8h3kh|W-`3aztPY3)`hTwXtt$s+AET1q@Txrn6k#@|A5GZz?LD)w7@ + + + + D:\winflexbison\x64\MinSizeRel\ZERO_CHECK + + + + + + \ No newline at end of file diff --git a/bison/y.dir/MinSizeRel/y.tlog/CL.command.1.tlog b/bison/y.dir/MinSizeRel/y.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..63b148dccf4ff6f06224ac52af0e3b65565f4bf4 GIT binary patch literal 1926 zcmeH`NlyYn5QX2_#Q$Kp15qx9goDEtB8!>9u!KmEMM)6I0MYp4)vua?3`P%_c;nF3 z-L>_rS6!bU4=O0Do?5D?u9B)Msx6OOpaz=W!MTdwLs!#{^G_+SbDb%zp)Qb>qp}6^ ziMP197Mii1SaxqI6YXs!-D#w$2H4GWr8T!9dlqSt8@*t$$c8SX{V_Tfxc5Qq@mAn$ zrrFk;(bZnlk8}lcv|^rhYAO75wl=7?am_sKI_-5LuiAX&%s z6Yzz+W_?>8M8w&#JS995>L?YVwO?oG17w$4jPWW+t%j}th|@8@`R9E0;vIRsDDRHl z5S9jTlcm4g-&xkkz1(!a*f6ZXyrI4!l_mEK7&B|)HpmJ3Yod<9`Pl^%ropOY`N|YA1KnPPX6ShQpqaE?fobCc~GE7 z^Aj1D7Z3&3l3jA08OHOfn4iP$RyVrXb6$hp+Pf!w)y$kiEf{@75fN?R7k^m;-UPbj zy2ek)+#@&OO4d47*Pv5;&WDp%sw9GrW6vu!tr{4|#90&3!s2pjKsqc1S7v(TjGZ;q z6_G71azA>dmY{!X<$3sioROM Z?S{uL-2E4ft@5!8ANs#Etcu^e@F)6eXiNYA literal 0 HcmV?d00001 diff --git a/bison/y.dir/MinSizeRel/y.tlog/CL.write.1.tlog b/bison/y.dir/MinSizeRel/y.tlog/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..890f27a15ed7d675002ee798c331178bceb3bfa1 GIT binary patch literal 346 zcmcJLI|_g>5JX=scoh#|=NFV{KnsloPvY6tF^yO%NLa`Yn|ZT2_LY(p&qPB{jiF*D zS2tp%_{ZHy&!u%_VLqW?`{dwoA`LoLb@{|ZubiA-l}a&$JXiWr-4a|Y?cqguGOV(< KKXC5fxCti{Av6sD literal 0 HcmV?d00001 diff --git a/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.command.1.tlog b/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.command.1.tlog new file mode 100644 index 0000000..1ad8f11 --- /dev/null +++ b/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.command.1.tlog @@ -0,0 +1,10 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT +setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd diff --git a/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.read.1.tlog b/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.read.1.tlog new file mode 100644 index 0000000..53bc160 --- /dev/null +++ b/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.read.1.tlog @@ -0,0 +1 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT diff --git a/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.write.1.tlog b/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.write.1.tlog new file mode 100644 index 0000000..92e372b --- /dev/null +++ b/bison/y.dir/MinSizeRel/y.tlog/CustomBuild.write.1.tlog @@ -0,0 +1,2 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT +D:\WINFLEXBISON\BISON\CMAKEFILES\GENERATE.STAMP diff --git a/bison/y.dir/MinSizeRel/y.tlog/Lib-link.read.1.tlog b/bison/y.dir/MinSizeRel/y.tlog/Lib-link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..dad67eb069b08034b0a92f5b9f1a0758703e8f42 GIT binary patch literal 568 zcmb`Eu@1s83`B26;#WGr#@13=1*Jtwib_z$m+Q|vpR->-*i9W-f_ zQ?Eu|C*4$$MO{Fq#XG6szf%D3tRiyWsR@KPv^2b+y3$$CmHQ_pV+-^TsQI#NwON^` z({hf?aGW_+!#v{AL?mKBRj0jnAOntMKcczi@nwB||9$wavPDJqs^rcaD^ck{@`m%K XgXO*2Sza?k!_O-<1GDtp(PsGo*Ai4> literal 0 HcmV?d00001 diff --git a/bison/y.dir/MinSizeRel/y.tlog/Lib-link.write.1.tlog b/bison/y.dir/MinSizeRel/y.tlog/Lib-link.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..4e63d82a390cf20720c89d5b2205f06a116234c7 GIT binary patch literal 284 zcmb`C&k8_55XOIJ-c&whR9l-_db Eot!f(WB>pF literal 0 HcmV?d00001 diff --git a/bison/y.dir/MinSizeRel/y.tlog/Lib.command.1.tlog b/bison/y.dir/MinSizeRel/y.tlog/Lib.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..0ff2e3ac998fe6042d79fc59ca71b8b8f09dc796 GIT binary patch literal 480 zcmb`Du?oUK5JX=s_z&U-#6~Ra5{(+UM7Ss>AqXOZ7Ft{Q?dsfVBPbHE*yDEgX69z^ zw+&;4)T~L!m|%!0h}7jQgw${Ml0fehtnkz`a-EepR%JXIdOQ$2V$Su?`X!}zv(mTv z&C{h#i=OT)mP*rY + + + + D:\winflexbison\x64\RelWithDebInfo\ZERO_CHECK + + + + + + \ No newline at end of file diff --git a/bison/y.dir/RelWithDebInfo/y.tlog/CL.command.1.tlog b/bison/y.dir/RelWithDebInfo/y.tlog/CL.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..fef2d8a3d149646969f44da32dba9ba019fd234d GIT binary patch literal 1990 zcmeH{OHaa35QWd$#Q#9p15r1IgoTxdL=;mnRYN2^ijp9ZQlh_J{pPk1FtWgn8y3BH zI*-#cXYTFS=d;Qxs-r-4-KwgFDteH|TT4wmoh`e8-@|vK3zwhQrH*x^f(FX4*7rhd z$*11xo-}s*R5ML@UUE73gv&yVp zn0tJ)we}=^pQYJJPU0(r5o~1M(p!b;c*Ae#5!%@N=35n;Dj80djI17&Pg!@I)(sff>EsHpO(!|UO&A;Jq;80{ z&ndSV?#49+ci?#`{z~--t$HX}gi&&8YZ^KRZIsVAYe5f7`W?_|ZmozZ6;rol9pOJG ncOSmHZsp(Z_9Gfs(AMV+`}BIa;fEWZ{4WnT{J(Gb?|1VXG&(PP literal 0 HcmV?d00001 diff --git a/bison/y.dir/RelWithDebInfo/y.tlog/CL.read.1.tlog b/bison/y.dir/RelWithDebInfo/y.tlog/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..b05db3164037b3033dbb53f8fe72adb8df7bb821 GIT binary patch literal 2674 zcmeH}K~IA~5QX2_#Q)$?FQiyC#+#*}L=Xd%+GHdD|4*pj4pM^`V-t`=L)a|C+u1j7 zX9hmr-?Y}9oVH5!tVEe&y=ui%r2>l^%ropOY`N|YA1KnPPX6ShQpqaE?fobCc~GE7 z^Aj1D7Z3&3l3jA08OHOfn4iP$RyVrXb6$hp+Pf!w)y$kiEf{@75fN?R7k^m;-UPbj zy2ek)+#@&OO4d47*Pv5;&WDp%sw9GrW6vu!tr{4|#90&3!s2pjKsqc1S7v(TjGZ;q z6_G71azA>dmY{!X<$3sioROM Z?S{uL-2E4ft@5!8ANs#Etcu^e@F)6eXiNYA literal 0 HcmV?d00001 diff --git a/bison/y.dir/RelWithDebInfo/y.tlog/CL.write.1.tlog b/bison/y.dir/RelWithDebInfo/y.tlog/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..3cb71ba2942590916a438a769470d128d1f3dce8 GIT binary patch literal 772 zcmchVO$viB5QV?B(5rZW?i#gNiKe858W2y?v)8_4Bd&^yB?K~$%=?*S`izvE8F+D{ zfyJT+;oVg7+qdK#-Exa@vvSM7D~_tKTNyPil2m$!W~sZy mF4U~%jh&^^d9nP`SY~iiYYx<#r#>s~f4?K=zRlf#|Hc=ZVsNtn literal 0 HcmV?d00001 diff --git a/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.command.1.tlog b/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.command.1.tlog new file mode 100644 index 0000000..1ad8f11 --- /dev/null +++ b/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.command.1.tlog @@ -0,0 +1,10 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT +setlocal +"C:\Program Files\CMake\bin\cmake.exe" -SD:/winflexbison -BD:/winflexbison --check-stamp-file D:/winflexbison/bison/CMakeFiles/generate.stamp +if %errorlevel% neq 0 goto :cmEnd +:cmEnd +endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone +:cmErrorLevel +exit /b %1 +:cmDone +if %errorlevel% neq 0 goto :VCEnd diff --git a/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.read.1.tlog b/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.read.1.tlog new file mode 100644 index 0000000..53bc160 --- /dev/null +++ b/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.read.1.tlog @@ -0,0 +1 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT diff --git a/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.write.1.tlog b/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.write.1.tlog new file mode 100644 index 0000000..92e372b --- /dev/null +++ b/bison/y.dir/RelWithDebInfo/y.tlog/CustomBuild.write.1.tlog @@ -0,0 +1,2 @@ +^D:\WINFLEXBISON\BISON\CMAKELISTS.TXT +D:\WINFLEXBISON\BISON\CMAKEFILES\GENERATE.STAMP diff --git a/bison/y.dir/RelWithDebInfo/y.tlog/Lib-link.read.1.tlog b/bison/y.dir/RelWithDebInfo/y.tlog/Lib-link.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..596c71a279c6d061ec3794f2bb0eab9be32773a0 GIT binary patch literal 600 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 T&>lVGi@ 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