<commit_before># ARM-SPECIFIC OVERRIDES FOR THE HASKELL PACKAGE SET IN NIXPKGS
#
# This extension is applied to all haskell package sets in nixpkgs
# if `stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64`
# to apply arm specific workarounds or fixes.
#
# The file is split into three parts:
#
# * Overrides that are applied for all arm platforms
# * Overrides for aarch32 platforms
# * Overrides for aarch64 platforms
#
# This may be extended in the future to also include compiler-
# specific sections as compiler and linker related bugs may
# get fixed subsequently.
#
# When adding new overrides, try to research which section they
# belong into. Most likely we'll be favouring aarch64 overrides
# in practice since that is the only platform we can test on
# Hydra. Also take care to group overrides by the issue they
# solve, so refactors and updates to this file are less tedious.
{ pkgs, haskellLib }:

let
  inherit (pkgs) lib;
in

with haskellLib;

self: super: {
  # COMMON ARM OVERRIDES

  # moved here from configuration-common.nix, no reason given.
  servant-docs = dontCheck super.servant-docs;
  swagger2 = dontHaddock (dontCheck super.swagger2);

  # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
  happy = dontCheck super.happy;

} // lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch64 {
  # AARCH64-SPECIFIC OVERRIDES

  # Doctests fail on aarch64 due to a GHCi linking bug
  # https://gitlab.haskell.org/ghc/ghc/-/issues/15275#note_295437
  # TODO: figure out if needed on aarch32 as well
  BNFC = dontCheck super.BNFC;
  C-structs = dontCheck super.C-structs;
  accelerate = dontCheck super.accelerate;
  ad = dontCheck super.ad;
  autoapply = dontCheck super.autoapply;
  construct = dontCheck super.construct;
  exact-real = dontCheck super.exact-real;
  flight-kml = dontCheck super.flight-kml;
  focuslist = dontCheck super.focuslist;
  grammatical-parsers = dontCheck super.grammatical-parsers;
  greskell = dontCheck super.greskell;
  groupBy = dontCheck super.groupBy;
  haskell-time-range = dontCheck super.haskell-time-range;
  headroom = dontCheck super.headroom;
  hgeometry = dontCheck super.hgeometry;
  hhp = dontCheck super.hhp;
  hint = dontCheck super.hint;
  hls-splice-plugin = dontCheck super.hls-splice-plugin;
  hsakamai = dontCheck super.hsakamai;
  hsemail-ns = dontCheck super.hsemail-ns;
  html-validator-cli = dontCheck super.html-validator-cli;
  hw-fingertree-strict = dontCheck super.hw-fingertree-strict;
  hw-packed-vector = dontCheck super.hw-packed-vector;
  hw-prim = dontCheck super.hw-prim;
  hw-xml = dontCheck super.hw-xml;
  language-nix = dontCheck super.language-nix;
  lens-regex = dontCheck super.lens-regex;
  meep = dontCheck super.meep;<commit_msg>haskellPackages.Chart-tests: fix build on aarch64<commit_after># ARM-SPECIFIC OVERRIDES FOR THE HASKELL PACKAGE SET IN NIXPKGS
#
# This extension is applied to all haskell package sets in nixpkgs
# if `stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64`
# to apply arm specific workarounds or fixes.
#
# The file is split into three parts:
#
# * Overrides that are applied for all arm platforms
# * Overrides for aarch32 platforms
# * Overrides for aarch64 platforms
#
# This may be extended in the future to also include compiler-
# specific sections as compiler and linker related bugs may
# get fixed subsequently.
#
# When adding new overrides, try to research which section they
# belong into. Most likely we'll be favouring aarch64 overrides
# in practice since that is the only platform we can test on
# Hydra. Also take care to group overrides by the issue they
# solve, so refactors and updates to this file are less tedious.
{ pkgs, haskellLib }:

let
  inherit (pkgs) lib;
in

with haskellLib;

self: super: {
  # COMMON ARM OVERRIDES

  # moved here from configuration-common.nix, no reason given.
  servant-docs = dontCheck super.servant-docs;
  swagger2 = dontHaddock (dontCheck super.swagger2);

  # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
  happy = dontCheck super.happy;

} // lib.optionalAttrs pkgs.stdenv.hostPlatform.isAarch64 {
  # AARCH64-SPECIFIC OVERRIDES

  # Doctests fail on aarch64 due to a GHCi linking bug
  # https://gitlab.haskell.org/ghc/ghc/-/issues/15275#note_295437
  # TODO: figure out if needed on aarch32 as well
  BNFC = dontCheck super.BNFC;
  C-structs = dontCheck super.C-structs;
  Chart-tests = dontCheck super.Chart-tests;
  accelerate = dontCheck super.accelerate;
  ad = dontCheck super.ad;
  autoapply = dontCheck super.autoapply;
  construct = dontCheck super.construct;
  exact-real = dontCheck super.exact-real;
  flight-kml = dontCheck super.flight-kml;
  focuslist = dontCheck super.focuslist;
  grammatical-parsers = dontCheck super.grammatical-parsers;
  greskell = dontCheck super.greskell;
  groupBy = dontCheck super.groupBy;
  haskell-time-range = dontCheck super.haskell-time-range;
  headroom = dontCheck super.headroom;
  hgeometry = dontCheck super.hgeometry;
  hhp = dontCheck super.hhp;
  hint = dontCheck super.hint;
  hls-splice-plugin = dontCheck super.hls-splice-plugin;
  hsakamai = dontCheck super.hsakamai;
  hsemail-ns = dontCheck super.hsemail-ns;
  html-validator-cli = dontCheck super.html-validator-cli;
  hw-fingertree-strict = dontCheck super.hw-fingertree-strict;
  hw-packed-vector = dontCheck super.hw-packed-vector;
  hw-prim = dontCheck super.hw-prim;
  hw-xml = dontCheck super.hw-xml;
  language-nix = dontCheck super.language-nix;
  lens-regex = dontCheck super.lens-regex;
  meep = dontCheck super.meep;
{'fraction_non_alphanumeric': 0.08559611580650962, 'fraction_numerical': 0.013306959180003597, 'mean_word_length': 4.130996309963099, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 4}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '412166', 'n_tokens_mistral': 1935, 'n_tokens_neox': 1829, 'n_words': 550}