[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 4 commits: Include -f{write,validate}-ide-info in the User's Guide flag reference

Marge Bot gitlab at gitlab.haskell.org
Wed Sep 16 02:43:23 UTC 2020



 Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC


Commits:
6bb8dc2e by Ryan Scott at 2020-09-15T22:43:10-04:00
Include -f{write,validate}-ide-info in the User's Guide flag reference

Previously, these were omitted from the flag reference due to a
layout oversight in `docs/users_guide/flags.{rst,py}`.

Fixes #18426.

- - - - -
bed502df by Ben Gamari at 2020-09-15T22:43:10-04:00
rts: Fix erroneous usage of vsnprintf

As pointed out in #18685, this should be snprintf not vsnprintf. This
appears to be due to a cut-and-paste error.

Fixes #18658.

- - - - -
409d9150 by Sylvain Henry at 2020-09-15T22:43:12-04:00
Rename ghci flag into internal-interpreter

"ghci" as a flag name was confusing because it really enables the
internal-interpreter. Even the ghci library had a "ghci" flag...

- - - - -
98ff87a3 by Sylvain Henry at 2020-09-15T22:43:14-04:00
Make ghc-boot reexport modules from ghc-boot-th

Packages don't have to import both ghc-boot and ghc-boot-th. It makes
the dependency graph easier to understand and to refactor.

- - - - -


11 changed files:

- compiler/ghc.cabal.in
- compiler/ghc.mk
- docs/users_guide/flags.py
- docs/users_guide/flags.rst
- ghc.mk
- ghc/ghc-bin.cabal.in
- ghc/ghc.mk
- hadrian/src/Settings/Packages.hs
- libraries/ghc-boot/ghc-boot.cabal.in
- libraries/ghci/ghci.cabal.in
- rts/RtsMessages.c


Changes:

=====================================
compiler/ghc.cabal.in
=====================================
@@ -23,8 +23,8 @@ Category: Development
 Build-Type: Simple
 Cabal-Version: >=1.10
 
-Flag ghci
-    Description: Build GHCi support.
+Flag internal-interpreter
+    Description: Build with internal interpreter support.
     Default: False
     Manual: True
 
@@ -72,7 +72,6 @@ Library
                    transformers == 0.5.*,
                    exceptions == 0.10.*,
                    ghc-boot   == @ProjectVersionMunged@,
-                   ghc-boot-th == @ProjectVersionMunged@,
                    ghc-heap   == @ProjectVersionMunged@,
                    ghci == @ProjectVersionMunged@
 
@@ -88,7 +87,7 @@ Library
                  -Wnoncanonical-monad-instances
                  -Wnoncanonical-monoid-instances
 
-    if flag(ghci)
+    if flag(internal-interpreter)
         CPP-Options: -DHAVE_INTERNAL_INTERPRETER
         Include-Dirs: ../rts/dist/build @FFIIncludeDir@
 


=====================================
compiler/ghc.mk
=====================================
@@ -203,7 +203,7 @@ compiler_stage1_CONFIGURE_OPTS += --ghc-option=-optc-DTHREADED_RTS
 endif
 
 ifeq "$(GhcWithInterpreter)" "YES"
-compiler_stage2_CONFIGURE_OPTS += --flags=ghci
+compiler_stage2_CONFIGURE_OPTS += --flags=internal-interpreter
 
 # Should the debugger commands be enabled?
 ifeq "$(GhciWithDebugger)" "YES"


=====================================
docs/users_guide/flags.py
=====================================
@@ -64,6 +64,7 @@ categories = {
     'coverage': 'Program coverage',
     'cpp': 'C pre-processor',
     'debugging': 'Debugging the compiler',
+    'extended-interface-files': 'Extended interface files',
     'interactive': 'Interactive mode',
     'interface-files': 'Interface files',
     'keep-intermediates': 'Keeping intermediate files',


=====================================
docs/users_guide/flags.rst
=====================================
@@ -127,6 +127,21 @@ More details in :ref:`hi-options`
     :type: table
     :category: interface-files
 
+Extended interface file options
+-------------------------------
+
+More details in :ref:`hie-options`
+
+.. tabularcolumns::
+    | p{\dimexpr 0.30\textwidth-2\tabcolsep} |
+      p{\dimexpr 0.31\textwidth-2\tabcolsep} |
+      p{\dimexpr 0.11\textwidth-2\tabcolsep} |
+      p{\dimexpr 0.29\textwidth-2\tabcolsep} |
+
+.. flag-print::
+    :type: table
+    :category: extended-interface-files
+
 Recompilation checking
 ----------------------
 


=====================================
ghc.mk
=====================================
@@ -598,7 +598,7 @@ endif
 BOOT_LIBS = $(foreach lib,$(PACKAGES_STAGE0),$(libraries/$(lib)_dist-boot_v_LIB))
 
 # Only build internal interpreter support for the stage2 ghci lib
-libraries/ghci_dist-install_CONFIGURE_OPTS += --flags=ghci
+libraries/ghci_dist-install_CONFIGURE_OPTS += --flags=internal-interpreter
 
 # ----------------------------------------
 # Special magic for the ghc-prim package


=====================================
ghc/ghc-bin.cabal.in
=====================================
@@ -19,8 +19,8 @@ Data-Files: settings
 Build-Type: Simple
 Cabal-Version: >=1.10
 
-Flag ghci
-    Description: Build GHCi support.
+Flag internal-interpreter
+    Description: Build with internal interpreter support.
     Default: False
     Manual: True
 
@@ -55,7 +55,7 @@ Executable ghc
                  -Wnoncanonical-monad-instances
                  -Wnoncanonical-monoid-instances
 
-    if flag(ghci)
+    if flag(internal-interpreter)
         -- NB: this is never built by the bootstrapping GHC+libraries
         Build-depends:
             deepseq        == 1.4.*,
@@ -102,4 +102,4 @@ Executable ghc
     Default-Extensions:
         NoImplicitPrelude
       , ScopedTypeVariables
-      , BangPatterns
\ No newline at end of file
+      , BangPatterns


=====================================
ghc/ghc.mk
=====================================
@@ -19,8 +19,8 @@ ghc_stage2_CONFIGURE_OPTS += --flags=stage2
 ghc_stage3_CONFIGURE_OPTS += --flags=stage3
 
 ifeq "$(GhcWithInterpreter)" "YES"
-ghc_stage2_CONFIGURE_OPTS += --flags=ghci
-ghc_stage3_CONFIGURE_OPTS += --flags=ghci
+ghc_stage2_CONFIGURE_OPTS += --flags=internal-interpreter
+ghc_stage3_CONFIGURE_OPTS += --flags=internal-interpreter
 endif
 
 # This package doesn't pass the Cabal checks because data-dir


=====================================
hadrian/src/Settings/Packages.hs
=====================================
@@ -73,7 +73,7 @@ packageArgs = do
               notStage0 ? arg "--ghc-pkg-option=--force" ]
 
           , builder (Cabal Flags) ? mconcat
-            [ ghcWithInterpreter ? notStage0 ? arg "ghci"
+            [ ghcWithInterpreter ? notStage0 ? arg "internal-interpreter"
             , cross ? arg "-terminfo"
             ]
 
@@ -84,7 +84,7 @@ packageArgs = do
           [ builder Ghc ? arg ("-I" ++ compilerPath)
 
           , builder (Cabal Flags) ? mconcat
-            [ ghcWithInterpreter ? notStage0 ? arg "ghci"
+            [ ghcWithInterpreter ? notStage0 ? arg "internal-interpreter"
             , cross ? arg "-terminfo"
             -- Note [Linking ghc-bin against threaded stage0 RTS]
             -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -121,13 +121,13 @@ packageArgs = do
 
         --------------------------------- ghci ---------------------------------
         , package ghci ? mconcat
-          [ notStage0 ? builder (Cabal Flags) ? arg "ghci"
+          [ notStage0 ? builder (Cabal Flags) ? arg "internal-interpreter"
 
-          -- The use case here is that we want to build @ghc-proxy@ for the
+          -- The use case here is that we want to build @iserv-proxy@ for the
           -- cross compiler. That one needs to be compiled by the bootstrap
           -- compiler as it needs to run on the host. Hence @libiserv@ needs
           -- @GHCi.TH@, @GHCi.Message@ and @GHCi.Run@ from @ghci at . And those are
-          -- behind the @-fghci@ flag.
+          -- behind the @-finternal-interpreter@ flag.
           --
           -- But it may not build if we have made some changes to ghci's
           -- dependencies (see #16051).
@@ -142,13 +142,14 @@ packageArgs = do
           --
           -- The workaround we use is to check if the bootstrap compiler has
           -- the same version as the one we are building. In this case we can
-          -- avoid the first step above and directly build with `-fghci`.
+          -- avoid the first step above and directly build with
+          -- `-finternal-interpreter`.
           --
           -- TODO: Note that in that case we also do not need to build most of
           -- the Stage1 libraries, as we already know that the bootstrap
           -- compiler comes with the same versions as the one we are building.
           --
-          , cross ? stage0 ? bootCross ? builder (Cabal Flags) ? arg "ghci"
+          , cross ? stage0 ? bootCross ? builder (Cabal Flags) ? arg "internal-interpreter"
 
           ]
 


=====================================
libraries/ghc-boot/ghc-boot.cabal.in
=====================================
@@ -49,6 +49,14 @@ Library
             GHC.UniqueSubdir
             GHC.Version
 
+    -- reexport modules from ghc-boot-th so that packages don't have to import
+    -- both ghc-boot and ghc-boot-th. It makes the dependency graph easier to
+    -- understand and to refactor.
+    reexported-modules:
+              GHC.LanguageExtensions.Type
+            , GHC.ForeignSrcLang.Type
+            , GHC.Lexeme
+
     -- but done by Hadrian
     -- autogen-modules:
     --         GHC.Version


=====================================
libraries/ghci/ghci.cabal.in
=====================================
@@ -17,8 +17,8 @@ cabal-version:  >=1.10
 build-type:     Simple
 extra-source-files: changelog.md
 
-Flag ghci
-    Description: Build GHCi support.
+Flag internal-interpreter
+    Description: Build with internal interpreter support.
     Default: False
     Manual: True
 
@@ -47,7 +47,7 @@ library
         TupleSections
         UnboxedTuples
 
-    if flag(ghci)
+    if flag(internal-interpreter)
         CPP-Options: -DHAVE_INTERNAL_INTERPRETER
         exposed-modules:
             GHCi.Run
@@ -79,7 +79,6 @@ library
         deepseq          == 1.4.*,
         filepath         == 1.4.*,
         ghc-boot         == @ProjectVersionMunged@,
-        ghc-boot-th      == @ProjectVersionMunged@,
         ghc-heap         == @ProjectVersionMunged@,
         template-haskell == 2.17.*,
         transformers     == 0.5.*


=====================================
rts/RtsMessages.c
=====================================
@@ -248,7 +248,7 @@ rtsSysErrorMsgFn(const char *s, va_list ap)
 
         r = vsnprintf(buf, BUFSIZE, s, ap);
         if (r > 0 && r < BUFSIZE) {
-            r = vsnprintf(buf+r, BUFSIZE-r, ": %s", syserr);
+            r = snprintf(buf+r, BUFSIZE-r, ": %s", syserr);
             MessageBox(NULL /* hWnd */,
                        buf,
                        prog_name,



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/168a4a397e0a9ad4d07d783f0ae5d91b2d9cabc6...98ff87a38d6a896a002ac9014327b1cfddeb28ce

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/168a4a397e0a9ad4d07d783f0ae5d91b2d9cabc6...98ff87a38d6a896a002ac9014327b1cfddeb28ce
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20200915/3df49262/attachment-0001.html>


More information about the ghc-commits mailing list