Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • ghc/ghc
  • bgamari/ghc
  • syd/ghc
  • ggreif/ghc
  • watashi/ghc
  • RolandSenn/ghc
  • mpickering/ghc
  • DavidEichmann/ghc
  • carter/ghc
  • harpocrates/ghc
  • ethercrow/ghc
  • mijicd/ghc
  • adamse/ghc
  • alexbiehl/ghc
  • gridaphobe/ghc
  • trofi/ghc
  • supersven/ghc
  • ppk/ghc
  • ulysses4ever/ghc
  • AndreasK/ghc
  • ghuntley/ghc
  • shayne-fletcher-da/ghc
  • fgaz/ghc
  • yav/ghc
  • osa1/ghc
  • mbbx6spp/ghc
  • JulianLeviston/ghc
  • reactormonk/ghc
  • rae/ghc
  • takenobu-hs/ghc
  • michalt/ghc
  • andrewthad/ghc
  • hsyl20/ghc
  • scottgw/ghc
  • sjakobi/ghc
  • angerman/ghc
  • RyanGlScott/ghc
  • hvr/ghc
  • howtonotwin/ghc
  • chessai/ghc
  • m-renaud/ghc
  • brprice/ghc
  • stevehartdata/ghc
  • sighingnow/ghc
  • kgardas/ghc
  • ckoparkar/ghc
  • alp/ghc
  • smaeul/ghc
  • kakkun61/ghc
  • sykloid/ghc
  • newhoggy/ghc
  • toonn/ghc
  • nineonine/ghc
  • Phyx/ghc
  • ezyang/ghc
  • tweag/ghc
  • langston/ghc
  • ndmitchell/ghc
  • rockbmb/ghc
  • artempyanykh/ghc
  • mniip/ghc
  • mynguyenbmc/ghc
  • alexfmpe/ghc
  • crockeea/ghc
  • nh2/ghc
  • vaibhavsagar/ghc
  • phadej/ghc
  • Haskell-mouse/ghc
  • lolotp/ghc
  • spacekitteh/ghc
  • michaelpj/ghc
  • mgsloan/ghc
  • HPCohen/ghc
  • tmobile/ghc
  • radrow/ghc
  • simonmar/ghc
  • _deepfire/ghc
  • Ericson2314/ghc
  • leitao/ghc
  • fumieval/ghc
  • trac-isovector/ghc
  • cblp/ghc
  • xich/ghc
  • ciil/ghc
  • erthalion/ghc
  • xldenis/ghc
  • autotaker/ghc
  • haskell-wasm/ghc
  • kcsongor/ghc
  • agander/ghc
  • Baranowski/ghc
  • trac-dredozubov/ghc
  • 23Skidoo/ghc
  • iustin/ghc
  • ningning/ghc
  • josefs/ghc
  • kabuhr/ghc
  • gallais/ghc
  • dten/ghc
  • expipiplus1/ghc
  • Pluralia/ghc
  • rohanjr/ghc
  • intricate/ghc
  • kirelagin/ghc
  • Javran/ghc
  • DanielG/ghc
  • trac-mizunashi_mana/ghc
  • pparkkin/ghc
  • bollu/ghc
  • ntc2/ghc
  • jaspervdj/ghc
  • JoshMeredith/ghc
  • wz1000/ghc
  • zkourouma/ghc
  • code5hot/ghc
  • jdprice/ghc
  • tdammers/ghc
  • J-mie6/ghc
  • trac-lantti/ghc
  • ch1bo/ghc
  • cgohla/ghc
  • lucamolteni/ghc
  • acairncross/ghc
  • amerocu/ghc
  • chreekat/ghc
  • txsmith/ghc
  • trupill/ghc
  • typetetris/ghc
  • sergv/ghc
  • fryguybob/ghc
  • erikd/ghc
  • trac-roland/ghc
  • setupminimal/ghc
  • Friede80/ghc
  • SkyWriter/ghc
  • xplorld/ghc
  • abrar/ghc
  • obsidiansystems/ghc
  • Icelandjack/ghc
  • adinapoli/ghc
  • trac-matthewbauer/ghc
  • heatsink/ghc
  • dwijnand/ghc
  • Cmdv/ghc
  • alinab/ghc
  • pepeiborra/ghc
  • fommil/ghc
  • luochen1990/ghc
  • rlupton20/ghc
  • applePrincess/ghc
  • lehins/ghc
  • ronmrdechai/ghc
  • leeadam/ghc
  • harendra/ghc
  • mightymosquito1991/ghc
  • trac-gershomb/ghc
  • lucajulian/ghc
  • Rizary/ghc
  • VictorCMiraldo/ghc
  • jamesbrock/ghc
  • andrewdmeier/ghc
  • luke/ghc
  • pranaysashank/ghc
  • cocreature/ghc
  • hithroc/ghc
  • obreitwi/ghc
  • slrtbtfs/ghc
  • kaol/ghc
  • yairchu/ghc
  • Mathemagician98/ghc
  • trac-taylorfausak/ghc
  • leungbk/ghc
  • MichaWiedenmann/ghc
  • chris-martin/ghc
  • TDecki/ghc
  • adithyaov/ghc
  • trac-gelisam/ghc
  • Lysxia/ghc
  • complyue/ghc
  • bwignall/ghc
  • sternmull/ghc
  • sonika/ghc
  • leif/ghc
  • broadwaylamb/ghc
  • myszon/ghc
  • danbroooks/ghc
  • Mechachleopteryx/ghc
  • zardyh/ghc
  • trac-vdukhovni/ghc
  • OmarKhaledAbdo/ghc
  • arrowd/ghc
  • Bodigrim/ghc
  • matheus23/ghc
  • cardenaso11/ghc
  • trac-Athas/ghc
  • mb720/ghc
  • DylanZA/ghc
  • liff/ghc
  • typedrat/ghc
  • trac-claude/ghc
  • jbm/ghc
  • Gertjan423/ghc
  • PHO/ghc
  • JKTKops/ghc
  • kockahonza/ghc
  • msakai/ghc
  • Sir4ur0n/ghc
  • barambani/ghc
  • vishnu.c/ghc
  • dcoutts/ghc
  • trac-runeks/ghc
  • trac-MaxGabriel/ghc
  • lexi.lambda/ghc
  • strake/ghc
  • spavikevik/ghc
  • JakobBruenker/ghc
  • rmanne/ghc
  • gdziadkiewicz/ghc
  • ani/ghc
  • iliastsi/ghc
  • smunix/ghc
  • judah/ghc
  • blackgnezdo/ghc
  • emilypi/ghc
  • trac-bpfoley/ghc
  • muesli4/ghc
  • trac-gkaracha/ghc
  • Kleidukos/ghc
  • nek0/ghc
  • TristanCacqueray/ghc
  • dwulive/ghc
  • mbakke/ghc
  • arybczak/ghc
  • Yang123321/ghc
  • maksbotan/ghc
  • QuietMisdreavus/ghc
  • trac-olshanskydr/ghc
  • emekoi/ghc
  • samuela/ghc
  • josephcsible/ghc
  • dramforever/ghc
  • lpsmith/ghc
  • DenisFrezzato/ghc
  • michivi/ghc
  • jneira/ghc
  • jeffhappily/ghc
  • Ivan-Yudin/ghc
  • nakaji-dayo/ghc
  • gdevanla/ghc
  • galen/ghc
  • fendor/ghc
  • yaitskov/ghc
  • rcythr/ghc
  • awpr/ghc
  • jeremyschlatter/ghc
  • Aver1y/ghc
  • mitchellvitez/ghc
  • merijn/ghc
  • tomjaguarpaw1/ghc
  • trac-NoidedSuper/ghc
  • erewok/ghc
  • trac-junji.hashimoto/ghc
  • adamwespiser/ghc
  • bjaress/ghc
  • jhrcek/ghc
  • leonschoorl/ghc
  • lukasz-golebiewski/ghc
  • sheaf/ghc
  • last-g/ghc
  • carassius1014/ghc
  • eschwartz/ghc
  • dwincort/ghc
  • felixwiemuth/ghc
  • TimWSpence/ghc
  • marcusmonteirodesouza/ghc
  • WJWH/ghc
  • vtols/ghc
  • theobat/ghc
  • BinderDavid/ghc
  • ckoparkar0/ghc
  • alexander-kjeldaas/ghc
  • dme2/ghc
  • philderbeast/ghc
  • aaronallen8455/ghc
  • rayshih/ghc
  • benkard/ghc
  • mpardalos/ghc
  • saidelman/ghc
  • leiftw/ghc
  • ca333/ghc
  • bwroga/ghc
  • nmichael44/ghc
  • trac-crobbins/ghc
  • felixonmars/ghc
  • adityagupta1089/ghc
  • hgsipiere/ghc
  • treeowl/ghc
  • alexpeits/ghc
  • CraigFe/ghc
  • dnlkrgr/ghc
  • kerckhove_ts/ghc
  • cptwunderlich/ghc
  • eiais/ghc
  • hahohihu/ghc
  • sanchayan/ghc
  • lemmih/ghc
  • sehqlr/ghc
  • trac-dbeacham/ghc
  • luite/ghc
  • trac-f-a/ghc
  • vados/ghc
  • luntain/ghc
  • fatho/ghc
  • alexbiehl-gc/ghc
  • dcbdan/ghc
  • tvh/ghc
  • liam-ly/ghc
  • timbobbarnes/ghc
  • GovanifY/ghc
  • shanth2600/ghc
  • gliboc/ghc
  • duog/ghc
  • moxonsghost/ghc
  • zander/ghc
  • masaeedu/ghc
  • georgefst/ghc
  • guibou/ghc
  • nicuveo/ghc
  • mdebruijne/ghc
  • stjordanis/ghc
  • emiflake/ghc
  • wygulmage/ghc
  • frasertweedale/ghc
  • coot/ghc
  • aratamizuki/ghc
  • tsandstr/ghc
  • mrBliss/ghc
  • Anton-Latukha/ghc
  • tadfisher/ghc
  • vapourismo/ghc
  • Sorokin-Anton/ghc
  • basile-henry/ghc
  • trac-mightybyte/ghc
  • AbsoluteNikola/ghc
  • cobrien99/ghc
  • songzh/ghc
  • blamario/ghc
  • aj4ayushjain/ghc
  • trac-utdemir/ghc
  • tangcl/ghc
  • hdgarrood/ghc
  • maerwald/ghc
  • arjun/ghc
  • ratherforky/ghc
  • haskieLambda/ghc
  • EmilGedda/ghc
  • Bogicevic/ghc
  • eddiejessup/ghc
  • kozross/ghc
  • AlistairB/ghc
  • 3Rafal/ghc
  • christiaanb/ghc
  • trac-bit/ghc
  • matsumonkie/ghc
  • trac-parsonsmatt/ghc
  • chisui/ghc
  • jaro/ghc
  • trac-kmiyazato/ghc
  • davidsd/ghc
  • Tritlo/ghc
  • I-B-3/ghc
  • lykahb/ghc
  • AriFordsham/ghc
  • turion1/ghc
  • berberman/ghc
  • christiantakle/ghc
  • zyklotomic/ghc
  • trac-ocramz/ghc
  • CSEdd/ghc
  • doyougnu/ghc
  • mmhat/ghc
  • why-not-try-calmer/ghc
  • plutotulp/ghc
  • kjekac/ghc
  • Manvi07/ghc
  • teo/ghc
  • cactus/ghc
  • CarrieMY/ghc
  • abel/ghc
  • yihming/ghc
  • tsakki/ghc
  • jessicah/ghc
  • oliverbunting/ghc
  • meld/ghc
  • friedbrice/ghc
  • Joald/ghc
  • abarbu/ghc
  • DigitalBrains1/ghc
  • sterni/ghc
  • alexDarcy/ghc
  • hexchain/ghc
  • minimario/ghc
  • zliu41/ghc
  • tommd/ghc
  • jazcarate/ghc
  • peterbecich/ghc
  • alirezaghey/ghc
  • solomon/ghc
  • mikael.urankar/ghc
  • davjam/ghc
  • int-index/ghc
  • MorrowM/ghc
  • nrnrnr/ghc
  • Sonfamm/ghc-test-only
  • afzt1/ghc
  • nguyenhaibinh-tpc/ghc
  • trac-lierdakil/ghc
  • MichaWiedenmann1/ghc
  • jmorag/ghc
  • Ziharrk/ghc
  • trac-MitchellSalad/ghc
  • juampe/ghc
  • jwaldmann/ghc
  • snowleopard/ghc
  • juhp/ghc
  • normalcoder/ghc
  • ksqsf/ghc
  • trac-jberryman/ghc
  • roberth/ghc
  • 1ntEgr8/ghc
  • epworth/ghc
  • MrAdityaAlok/ghc
  • JunmingZhao42/ghc
  • jappeace/ghc
  • trac-Gabriel439/ghc
  • alt-romes/ghc
  • HugoPeters1024/ghc
  • 10ne1/ghc-fork
  • agentultra/ghc
  • Garfield1002/ghc
  • ChickenProp/ghc
  • clyring/ghc
  • MaxHearnden/ghc
  • jumper149/ghc
  • vem/ghc
  • ketzacoatl/ghc
  • Rosuavio/ghc
  • jackohughes/ghc
  • p4l1ly/ghc
  • konsumlamm/ghc
  • shlevy/ghc
  • torsten.schmits/ghc
  • andremarianiello/ghc
  • amesgen/ghc
  • googleson78/ghc
  • InfiniteVerma/ghc
  • uhbif19/ghc
  • yiyunliu/ghc
  • raehik/ghc
  • mrkun/ghc
  • telser/ghc
  • 1Jajen1/ghc
  • slotThe/ghc
  • WinstonHartnett/ghc
  • mpilgrem/ghc
  • dreamsmasher/ghc
  • schuelermine/ghc
  • trac-Viwor/ghc
  • undergroundquizscene/ghc
  • evertedsphere/ghc
  • coltenwebb/ghc
  • oberblastmeister/ghc
  • agrue/ghc
  • lf-/ghc
  • zacwood9/ghc
  • steshaw/ghc
  • high-cloud/ghc
  • SkamDart/ghc
  • PiDelport/ghc
  • maoif/ghc
  • RossPaterson/ghc
  • CharlesTaylor7/ghc
  • ribosomerocker/ghc
  • trac-ramirez7/ghc
  • daig/ghc
  • NicolasT/ghc
  • FinleyMcIlwaine/ghc
  • lawtonnichols/ghc
  • jmtd/ghc
  • ozkutuk/ghc
  • wildsebastian/ghc
  • lrzlin/ghc
  • tobias/ghc
  • fw/ghc
  • hawkinsw/ghc
  • type-dance/ghc
  • rui314/ghc
  • ocharles/ghc
  • wavewave/ghc
  • TheKK/ghc
  • nomeata/ghc
  • trac-csabahruska/ghc
  • jonathanjameswatson/ghc
  • L-as/ghc
  • Axman6/ghc
  • barracuda156/ghc
  • trac-jship/ghc
  • jake-87/ghc
  • meooow/ghc
  • rebeccat/ghc
  • hamana55/ghc
  • Enigmage/ghc
  • kokobd/ghc
  • agevelt/ghc
  • gshen42/ghc
  • chrismwendt/ghc
  • MangoIV/ghc
  • teto/ghc
  • Sookr1/ghc
  • trac-thomasjm/ghc
  • barci2/ghc-dev
  • trac-m4dc4p/ghc
  • dixonary/ghc
  • breakerzirconia/ghc
  • alexsio27444/ghc
  • glocq/ghc
  • sourabhxyz/ghc
  • ryantrinkle/ghc
  • Jade/ghc
  • scedfaliako/ghc
  • martijnbastiaan/ghc
  • trac-george.colpitts/ghc
  • ammarbinfaisal/ghc
  • mimi.vx/ghc
  • lortabac/ghc
  • trac-zyla/ghc
  • benbellick/ghc
  • aadaa-fgtaa/ghc
  • jvanbruegge/ghc
  • archbung/ghc
  • gilmi/ghc
  • mfonism/ghc
  • alex-mckenna/ghc
  • Ei30metry/ghc
  • DiegoDiverio/ghc
  • jorgecunhamendes/ghc
  • liesnikov/ghc
  • akrmn/ghc
  • trac-simplifierticks/ghc
  • jacco/ghc
  • rhendric/ghc
  • damhiya/ghc
  • ryndubei/ghc
  • DaveBarton/ghc
  • trac-Profpatsch/ghc
  • GZGavinZhao/ghc
  • ncfavier/ghc
  • jameshaydon/ghc
  • ajccosta/ghc
  • dschrempf/ghc
  • cydparser/ghc
  • LinuxUserGD/ghc
  • elodielander/ghc
  • facundominguez/ghc
  • psilospore/ghc
  • lachrimae/ghc
  • dylan-thinnes/ghc-type-errors-plugin
  • hamishmack/ghc
  • Leary/ghc
  • lzszt/ghc
  • lyokha/ghc
  • trac-glaubitz/ghc
  • Rewbert/ghc
  • andreabedini/ghc
  • Jasagredo/ghc
  • sol/ghc
  • OlegAlexander/ghc
  • trac-sthibaul/ghc
  • avdv/ghc
  • Wendaolee/ghc
  • ur4t/ghc
  • daylily/ghc
  • boltzmannrain/ghc
  • mmzk1526/ghc
  • trac-fizzixnerd/ghc
  • soulomoon/ghc
  • rwmjones/ghc
  • j14i/ghc
  • tracsis/ghc
  • gesh/ghc
  • flip101/ghc
  • eldritch-cookie/ghc
  • LemonjamesD/ghc
  • pgujjula/ghc
  • skeuchel/ghc
  • noteed/ghc
  • Torrekie/ghc
  • jlwoodwa/ghc
  • ayanamists/ghc
  • husong998/ghc
  • trac-edmundnoble/ghc
  • josephf/ghc
  • contrun/ghc
  • baulig/ghc
  • edsko/ghc
  • mzschr/ghc-issue-24732
  • ulidtko/ghc
  • Arsen/ghc
  • trac-sjoerd_visscher/ghc
  • crumbtoo/ghc
  • L0neGamer/ghc
  • DrewFenwick/ghc
  • benz0li/ghc
  • MaciejWas/ghc
  • jordanrule/ghc
  • trac-qqwy/ghc
  • LiamGoodacre/ghc
  • isomorpheme/ghc
  • trac-danidiaz/ghc
  • Kariim/ghc
  • taimoorzaeem/ghc
  • hololeap/ghc
  • ticat-fp/ghc
  • meritamen/ghc
  • criskell/ghc
  • trac-kraai/ghc
  • aergus/ghc
  • jdral/ghc
  • SamB/ghc
  • Tristian/ghc
  • ywgrit/ghc
  • KatsuPatrick/ghc
  • OsePedro/ghc
  • mpscholten/ghc
  • zaquest/ghc
  • fangyi-zhou/ghc
  • augyg/ghc
  • rkirkman/ghc
  • gulin.serge/ghc-windows-aarch64-bootstrap
  • iris/ghc
  • kwxm/ghc
  • maralorn/ghc
  • rafl/ghc
  • nikshalark/ghc
  • mrcjkb/ghc
  • blackheaven/ghc
  • laurenyim/ghc
  • bolt12/ghc
  • Xitian9/ghc
  • wenkokke/ghc
  • kephas/ghc
  • rmullanix/ghc
  • GunpowderGuy/ghc
  • I_I/ghc
  • leana8959/ghc
  • zlonast/ghc
  • jryans/ghc
  • Vekhir/ghc
  • alpmestan/ghc
659 results
Show changes
Showing with 61 additions and 70 deletions
...@@ -1042,7 +1042,7 @@ test.hs:(5,4)-(6,7): ...@@ -1042,7 +1042,7 @@ test.hs:(5,4)-(6,7):
At compile time you get a warning (instead of an error). At At compile time you get a warning (instead of an error). At
runtime, if you use a value that depends on a type error, you runtime, if you use a value that depends on a type error, you
get a runtime error; but you can run any type-correct parts of your code get a runtime error; but you can run any type-correct parts of your code
just fine.</para> just fine. See <xref linkend="defer-type-errors"/></para>
</listitem> </listitem>
</varlistentry> </varlistentry>
......
...@@ -389,6 +389,9 @@ endif ...@@ -389,6 +389,9 @@ endif
endif endif
endef endef
# Add all the packages. Note that we need to add them in dependency
# order, as this is the order that they get configured in.
$(eval $(call addPackage,ghc-prim)) $(eval $(call addPackage,ghc-prim))
ifeq "$(CLEANING)" "YES" ifeq "$(CLEANING)" "YES"
$(eval $(call addPackage,integer-gmp)) $(eval $(call addPackage,integer-gmp))
...@@ -404,9 +407,9 @@ $(eval $(call addPackage,bytestring)) ...@@ -404,9 +407,9 @@ $(eval $(call addPackage,bytestring))
$(eval $(call addPackage,containers)) $(eval $(call addPackage,containers))
$(eval $(call addPackage,old-locale)) $(eval $(call addPackage,old-locale))
$(eval $(call addPackage,old-time)) $(eval $(call addPackage,old-time))
$(eval $(call addPackage,time))
$(eval $(call addPackage,Win32,($$(Windows),YES))) $(eval $(call addPackage,Win32,($$(Windows),YES)))
$(eval $(call addPackage,time))
$(eval $(call addPackage,unix,($$(Windows),NO))) $(eval $(call addPackage,unix,($$(Windows),NO)))
$(eval $(call addPackage,directory)) $(eval $(call addPackage,directory))
......
...@@ -33,7 +33,7 @@ import GHC ( LoadHowMuch(..), Target(..), TargetId(..), InteractiveImport(..), ...@@ -33,7 +33,7 @@ import GHC ( LoadHowMuch(..), Target(..), TargetId(..), InteractiveImport(..),
TyThing(..), Phase, BreakIndex, Resume, SingleStep, Ghc, TyThing(..), Phase, BreakIndex, Resume, SingleStep, Ghc,
handleSourceError ) handleSourceError )
import HsImpExp import HsImpExp
import HscTypes ( tyThingParent_maybe, handleFlagWarnings, getSafeMode, dep_pkgs, hsc_IC, import HscTypes ( tyThingParent_maybe, handleFlagWarnings, getSafeMode, hsc_IC,
setInteractivePrintName ) setInteractivePrintName )
import Module import Module
import Name import Name
...@@ -1487,48 +1487,34 @@ isSafeModule m = do ...@@ -1487,48 +1487,34 @@ isSafeModule m = do
(ghcError $ CmdLineError $ "can't load interface file for module: " ++ (ghcError $ CmdLineError $ "can't load interface file for module: " ++
(GHC.moduleNameString $ GHC.moduleName m)) (GHC.moduleNameString $ GHC.moduleName m))
let iface' = fromJust iface (msafe, pkgs) <- GHC.moduleTrustReqs m
let trust = showPpr dflags $ getSafeMode $ GHC.mi_trust $ fromJust iface
trust = showPpr dflags $ getSafeMode $ GHC.mi_trust iface' pkg = if packageTrusted dflags m then "trusted" else "untrusted"
pkgT = packageTrusted dflags m (good, bad) = tallyPkgs dflags pkgs
pkg = if pkgT then "trusted" else "untrusted"
(good', bad') = tallyPkgs dflags $
map fst $ filter snd $ dep_pkgs $ GHC.mi_deps iface'
(good, bad) = case GHC.mi_trust_pkg iface' of
True | pkgT -> (modulePackageId m:good', bad')
True -> (good', modulePackageId m:bad')
False -> (good', bad')
-- print info to user...
liftIO $ putStrLn $ "Trust type is (Module: " ++ trust ++ ", Package: " ++ pkg ++ ")" liftIO $ putStrLn $ "Trust type is (Module: " ++ trust ++ ", Package: " ++ pkg ++ ")"
liftIO $ putStrLn $ "Package Trust: " liftIO $ putStrLn $ "Package Trust: " ++ (if packageTrustOn dflags then "On" else "Off")
++ (if packageTrustOn dflags then "On" else "Off") when (not $ null good)
when (packageTrustOn dflags && not (null good))
(liftIO $ putStrLn $ "Trusted package dependencies (trusted): " ++ (liftIO $ putStrLn $ "Trusted package dependencies (trusted): " ++
(intercalate ", " $ map packageIdString good)) (intercalate ", " $ map packageIdString good))
case msafe && null bad of
case goodTrust (getSafeMode $ GHC.mi_trust iface') of True -> liftIO $ putStrLn $ mname ++ " is trusted!"
True | (null bad || not (packageTrustOn dflags)) -> False -> do
liftIO $ putStrLn $ mname ++ " is trusted!" when (not $ null bad)
(liftIO $ putStrLn $ "Trusted package dependencies (untrusted): "
True -> do ++ (intercalate ", " $ map packageIdString bad))
liftIO $ putStrLn $ "Trusted package dependencies (untrusted): "
++ (intercalate ", " $ map packageIdString bad)
liftIO $ putStrLn $ mname ++ " is NOT trusted!" liftIO $ putStrLn $ mname ++ " is NOT trusted!"
False -> liftIO $ putStrLn $ mname ++ " is NOT trusted!"
where where
goodTrust t = t `elem` [Sf_Safe, Sf_SafeInferred, Sf_Trustworthy]
mname = GHC.moduleNameString $ GHC.moduleName m mname = GHC.moduleNameString $ GHC.moduleName m
packageTrusted dflags md packageTrusted dflags md
| thisPackage dflags == modulePackageId md = True | thisPackage dflags == modulePackageId md = True
| otherwise = trusted $ getPackageDetails (pkgState dflags) | otherwise = trusted $ getPackageDetails (pkgState dflags) (modulePackageId md)
(modulePackageId md)
tallyPkgs dflags deps = partition part deps tallyPkgs dflags deps | not (packageTrustOn dflags) = ([], [])
| otherwise = partition part deps
where state = pkgState dflags where state = pkgState dflags
part pkg = trusted $ getPackageDetails state pkg part pkg = trusted $ getPackageDetails state pkg
...@@ -1761,11 +1747,7 @@ checkAdd ii = do ...@@ -1761,11 +1747,7 @@ checkAdd ii = do
m <- GHC.lookupModule modname pkgqual m <- GHC.lookupModule modname pkgqual
when safe $ do when safe $ do
t <- GHC.isModuleTrusted m t <- GHC.isModuleTrusted m
when (not t) $ when (not t) $ ghcError $ ProgramError $ ""
ghcError $ CmdLineError $
"can't import " ++ moduleNameString modname
++ " as it isn't trusted."
-- ----------------------------------------------------------------------------- -- -----------------------------------------------------------------------------
-- Update the GHC API's view of the context -- Update the GHC API's view of the context
......
...@@ -28,7 +28,7 @@ Executable ghc ...@@ -28,7 +28,7 @@ Executable ghc
Build-Depends: base >= 3 && < 5, Build-Depends: base >= 3 && < 5,
array >= 0.1 && < 0.5, array >= 0.1 && < 0.5,
bytestring >= 0.9 && < 0.11, bytestring >= 0.9 && < 0.11,
directory >= 1 && < 1.2, directory >= 1 && < 1.3,
process >= 1 && < 1.2, process >= 1 && < 1.2,
filepath >= 1 && < 1.4, filepath >= 1 && < 1.4,
ghc ghc
......
...@@ -32,7 +32,7 @@ defaultsHook (void) ...@@ -32,7 +32,7 @@ defaultsHook (void)
} }
void void
StackOverflowHook (lnat stack_size) /* in bytes */ StackOverflowHook (StgWord stack_size) /* in bytes */
{ {
fprintf(stderr, "GHC stack-space overflow: current limit is %zu bytes.\nUse the `-K<size>' option to increase it.\n", (size_t)stack_size); fprintf(stderr, "GHC stack-space overflow: current limit is %zu bytes.\nUse the `-K<size>' option to increase it.\n", (size_t)stack_size);
} }
......
...@@ -156,6 +156,8 @@ void _assertFail(const char *filename, unsigned int linenum) ...@@ -156,6 +156,8 @@ void _assertFail(const char *filename, unsigned int linenum)
#define TIME_RESOLUTION 1000000000 #define TIME_RESOLUTION 1000000000
typedef StgInt64 Time; typedef StgInt64 Time;
#define TIME_MAX HS_INT64_MAX
#if TIME_RESOLUTION == 1000000000 #if TIME_RESOLUTION == 1000000000
// I'm being lazy, but it's awkward to define fully general versions of these // I'm being lazy, but it's awkward to define fully general versions of these
#define TimeToUS(t) ((t) / 1000) #define TimeToUS(t) ((t) / 1000)
......
...@@ -200,7 +200,7 @@ main(int argc, char *argv[]) ...@@ -200,7 +200,7 @@ main(int argc, char *argv[])
printf("#define BLOCK_SIZE %u\n", BLOCK_SIZE); printf("#define BLOCK_SIZE %u\n", BLOCK_SIZE);
printf("#define MBLOCK_SIZE %u\n", MBLOCK_SIZE); printf("#define MBLOCK_SIZE %u\n", MBLOCK_SIZE);
printf("#define BLOCKS_PER_MBLOCK %" FMT_SizeT "\n", (lnat)BLOCKS_PER_MBLOCK); printf("#define BLOCKS_PER_MBLOCK %" FMT_Word "\n", (W_)BLOCKS_PER_MBLOCK);
// could be derived, but better to save doing the calculation twice // could be derived, but better to save doing the calculation twice
printf("\n\n"); printf("\n\n");
......
...@@ -53,6 +53,7 @@ struct GC_FLAGS { ...@@ -53,6 +53,7 @@ struct GC_FLAGS {
rtsBool frontpanel; rtsBool frontpanel;
Time idleGCDelayTime; /* units: TIME_RESOLUTION */ Time idleGCDelayTime; /* units: TIME_RESOLUTION */
rtsBool doIdleGC;
StgWord heapBase; /* address to ask the OS for memory */ StgWord heapBase; /* address to ask the OS for memory */
}; };
......
...@@ -18,9 +18,9 @@ extern char *ghc_rts_opts; ...@@ -18,9 +18,9 @@ extern char *ghc_rts_opts;
extern void OnExitHook (void); extern void OnExitHook (void);
extern int NoRunnableThreadsHook (void); extern int NoRunnableThreadsHook (void);
extern void StackOverflowHook (lnat stack_size); extern void StackOverflowHook (W_ stack_size);
extern void OutOfHeapHook (lnat request_size, lnat heap_size); extern void OutOfHeapHook (W_ request_size, W_ heap_size);
extern void MallocFailHook (lnat request_size /* in bytes */, char *msg); extern void MallocFailHook (W_ request_size /* in bytes */, char *msg);
extern void defaultsHook (void); extern void defaultsHook (void);
#endif /* RTS_HOOKS_H */ #endif /* RTS_HOOKS_H */
...@@ -34,7 +34,7 @@ typedef struct SpinLock_ ...@@ -34,7 +34,7 @@ typedef struct SpinLock_
typedef StgWord SpinLock; typedef StgWord SpinLock;
#endif #endif
typedef lnat SpinLockCount; typedef StgWord SpinLockCount;
#if defined(PROF_SPIN) #if defined(PROF_SPIN)
......
...@@ -22,17 +22,17 @@ ...@@ -22,17 +22,17 @@
// //
// Creating threads // Creating threads
// //
StgTSO *createThread (Capability *cap, nat stack_size); StgTSO *createThread (Capability *cap, W_ stack_size);
void scheduleWaitThread (/* in */ StgTSO *tso, void scheduleWaitThread (/* in */ StgTSO *tso,
/* out */ HaskellObj* ret, /* out */ HaskellObj* ret,
/* inout */ Capability **cap); /* inout */ Capability **cap);
StgTSO *createGenThread (Capability *cap, nat stack_size, StgTSO *createGenThread (Capability *cap, W_ stack_size,
StgClosure *closure); StgClosure *closure);
StgTSO *createIOThread (Capability *cap, nat stack_size, StgTSO *createIOThread (Capability *cap, W_ stack_size,
StgClosure *closure); StgClosure *closure);
StgTSO *createStrictIOThread (Capability *cap, nat stack_size, StgTSO *createStrictIOThread (Capability *cap, W_ stack_size,
StgClosure *closure); StgClosure *closure);
// Suspending/resuming threads around foreign calls // Suspending/resuming threads around foreign calls
......
...@@ -16,8 +16,10 @@ ...@@ -16,8 +16,10 @@
#include <stddef.h> #include <stddef.h>
typedef unsigned int nat; /* at least 32 bits (like int) */ typedef unsigned int nat; /* at least 32 bits (like int) */
typedef size_t lnat; /* at least 32 bits */
// Deprecated; just use StgWord instead
typedef StgWord lnat;
/* ullong (64|128-bit) type: only include if needed (not ANSI) */ /* ullong (64|128-bit) type: only include if needed (not ANSI) */
#if defined(__GNUC__) #if defined(__GNUC__)
......
...@@ -244,11 +244,11 @@ extern void initBlockAllocator(void); ...@@ -244,11 +244,11 @@ extern void initBlockAllocator(void);
/* Allocation -------------------------------------------------------------- */ /* Allocation -------------------------------------------------------------- */
bdescr *allocGroup(nat n); bdescr *allocGroup(W_ n);
bdescr *allocBlock(void); bdescr *allocBlock(void);
// versions that take the storage manager lock for you: // versions that take the storage manager lock for you:
bdescr *allocGroup_lock(nat n); bdescr *allocGroup_lock(W_ n);
bdescr *allocBlock_lock(void); bdescr *allocBlock_lock(void);
/* De-Allocation ----------------------------------------------------------- */ /* De-Allocation ----------------------------------------------------------- */
......
...@@ -419,20 +419,20 @@ EXTERN_INLINE StgWord stack_frame_sizeW( StgClosure *frame ) ...@@ -419,20 +419,20 @@ EXTERN_INLINE StgWord stack_frame_sizeW( StgClosure *frame )
-------------------------------------------------------------------------- */ -------------------------------------------------------------------------- */
// The number of card bytes needed // The number of card bytes needed
INLINE_HEADER lnat mutArrPtrsCards (lnat elems) INLINE_HEADER W_ mutArrPtrsCards (W_ elems)
{ {
return (lnat)((elems + (1 << MUT_ARR_PTRS_CARD_BITS) - 1) return (W_)((elems + (1 << MUT_ARR_PTRS_CARD_BITS) - 1)
>> MUT_ARR_PTRS_CARD_BITS); >> MUT_ARR_PTRS_CARD_BITS);
} }
// The number of words in the card table // The number of words in the card table
INLINE_HEADER lnat mutArrPtrsCardTableSize (lnat elems) INLINE_HEADER W_ mutArrPtrsCardTableSize (W_ elems)
{ {
return ROUNDUP_BYTES_TO_WDS(mutArrPtrsCards(elems)); return ROUNDUP_BYTES_TO_WDS(mutArrPtrsCards(elems));
} }
// The address of the card for a particular card number // The address of the card for a particular card number
INLINE_HEADER StgWord8 *mutArrPtrsCard (StgMutArrPtrs *a, lnat n) INLINE_HEADER StgWord8 *mutArrPtrsCard (StgMutArrPtrs *a, W_ n)
{ {
return ((StgWord8 *)&(a->payload[a->ptrs]) + n); return ((StgWord8 *)&(a->payload[a->ptrs]) + n);
} }
......
...@@ -75,6 +75,7 @@ typedef struct generation_ { ...@@ -75,6 +75,7 @@ typedef struct generation_ {
bdescr * large_objects; // large objects (doubly linked) bdescr * large_objects; // large objects (doubly linked)
memcount n_large_blocks; // no. of blocks used by large objs memcount n_large_blocks; // no. of blocks used by large objs
memcount n_large_words; // no. of words used by large objs
memcount n_new_large_words; // words of new large objects memcount n_new_large_words; // words of new large objects
// (for allocation stats) // (for allocation stats)
...@@ -124,13 +125,13 @@ extern generation * oldest_gen; ...@@ -124,13 +125,13 @@ extern generation * oldest_gen;
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Generic allocation Generic allocation
StgPtr allocate(Capability *cap, nat n) StgPtr allocate(Capability *cap, W_ n)
Allocates memory from the nursery in Allocates memory from the nursery in
the current Capability. This can be the current Capability. This can be
done without taking a global lock, done without taking a global lock,
unlike allocate(). unlike allocate().
StgPtr allocatePinned(Capability *cap, nat n) StgPtr allocatePinned(Capability *cap, W_ n)
Allocates a chunk of contiguous store Allocates a chunk of contiguous store
n words long, which is at a fixed n words long, which is at a fixed
address (won't be moved by GC). address (won't be moved by GC).
...@@ -149,15 +150,15 @@ extern generation * oldest_gen; ...@@ -149,15 +150,15 @@ extern generation * oldest_gen;
-------------------------------------------------------------------------- */ -------------------------------------------------------------------------- */
StgPtr allocate ( Capability *cap, lnat n ); StgPtr allocate ( Capability *cap, W_ n );
StgPtr allocatePinned ( Capability *cap, lnat n ); StgPtr allocatePinned ( Capability *cap, W_ n );
/* memory allocator for executable memory */ /* memory allocator for executable memory */
void * allocateExec(unsigned int len, void **exec_addr); void * allocateExec(W_ len, void **exec_addr);
void freeExec (void *p); void freeExec (void *p);
// Used by GC checks in external .cmm code: // Used by GC checks in external .cmm code:
extern nat large_alloc_lim; extern W_ large_alloc_lim;
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Performing Garbage Collection Performing Garbage Collection
......
...@@ -12,8 +12,8 @@ ...@@ -12,8 +12,8 @@
#ifndef RTS_STORAGE_MBLOCK_H #ifndef RTS_STORAGE_MBLOCK_H
#define RTS_STORAGE_MBLOCK_H #define RTS_STORAGE_MBLOCK_H
extern lnat peak_mblocks_allocated; extern W_ peak_mblocks_allocated;
extern lnat mblocks_allocated; extern W_ mblocks_allocated;
extern void initMBlocks(void); extern void initMBlocks(void);
extern void * getMBlock(void); extern void * getMBlock(void);
...@@ -156,7 +156,7 @@ typedef struct { ...@@ -156,7 +156,7 @@ typedef struct {
MBlockMapLine lines[MBLOCK_MAP_ENTRIES]; MBlockMapLine lines[MBLOCK_MAP_ENTRIES];
} MBlockMap; } MBlockMap;
extern lnat mpc_misses; extern W_ mpc_misses;
StgBool HEAP_ALLOCED_miss(StgWord mblock, void *p); StgBool HEAP_ALLOCED_miss(StgWord mblock, void *p);
......
...@@ -393,7 +393,7 @@ BIN_DIST_PREP_TAR_BZ2 = $(BIN_DIST_PREP_TAR).bz2 ...@@ -393,7 +393,7 @@ BIN_DIST_PREP_TAR_BZ2 = $(BIN_DIST_PREP_TAR).bz2
BIN_DIST_TAR_BZ2 = $(BIN_DIST_NAME)-$(TARGETPLATFORM).tar.bz2 BIN_DIST_TAR_BZ2 = $(BIN_DIST_NAME)-$(TARGETPLATFORM).tar.bz2
BIN_DIST_LIST = bindist-list BIN_DIST_LIST = bindist-list
WINDOWS_INSTALLER_BASE = ghc-$(ProjectVersion)-i386-windows WINDOWS_INSTALLER_BASE = ghc-$(ProjectVersion)-$(TargetArch_CPP)-windows
WINDOWS_INSTALLER = $(WINDOWS_INSTALLER_BASE)$(exeext) WINDOWS_INSTALLER = $(WINDOWS_INSTALLER_BASE)$(exeext)
# ----------------------------------------------------------------------------- # -----------------------------------------------------------------------------
......
...@@ -80,7 +80,7 @@ arenaAlloc( Arena *arena, size_t size ) ...@@ -80,7 +80,7 @@ arenaAlloc( Arena *arena, size_t size )
return p; return p;
} else { } else {
// allocate a fresh block... // allocate a fresh block...
req_blocks = (lnat)BLOCK_ROUND_UP(size) / BLOCK_SIZE; req_blocks = (W_)BLOCK_ROUND_UP(size) / BLOCK_SIZE;
bd = allocGroup_lock(req_blocks); bd = allocGroup_lock(req_blocks);
arena_blocks += req_blocks; arena_blocks += req_blocks;
......
...@@ -123,7 +123,7 @@ struct Capability_ { ...@@ -123,7 +123,7 @@ struct Capability_ {
SparkCounters spark_stats; SparkCounters spark_stats;
#endif #endif
// Total words allocated by this cap since rts start // Total words allocated by this cap since rts start
lnat total_allocated; W_ total_allocated;
// Per-capability STM-related data // Per-capability STM-related data
StgTVarWatchQueue *free_tvar_watch_queues; StgTVarWatchQueue *free_tvar_watch_queues;
......
...@@ -80,7 +80,7 @@ disInstr ( StgBCO *bco, int pc ) ...@@ -80,7 +80,7 @@ disInstr ( StgBCO *bco, int pc )
pc += 1; break; pc += 1; break;
case bci_STKCHECK: { case bci_STKCHECK: {
StgWord stk_words_reqd = BCO_GET_LARGE_ARG + 1; StgWord stk_words_reqd = BCO_GET_LARGE_ARG + 1;
debugBelch("STKCHECK %" FMT_SizeT "\n", (lnat)stk_words_reqd ); debugBelch("STKCHECK %" FMT_Word "\n", (W_)stk_words_reqd );
break; break;
} }
case bci_PUSH_L: case bci_PUSH_L:
......