gleam-lang/gleam

Invalid JavaScript generated for case in a pipeline

Open

#5743 opened on May 22, 2026

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Rust (21,417 stars) (960 forks)batch import
help wantedhigh priority

Description

  • gleam 1.16.0
  • target JS

This code gets compiled to an invalid JS file.

import gleam/function
import gleam/io

pub fn main() {
  0
  |> case True {
    True -> function.identity |> echo
    False -> fn(i) { i + 1 }
  }
  |> fn(i) { i + 1 }
}

Compiled to a JS file with this error: SyntaxError: Identifier '_pipe$1' has already been declared

export function main() {
  let _pipe = 0;
  let _block;
  let $ = true;
  let _pipe$1 = $function.identity;
  _block = echo(_pipe$1, undefined, "src/tmp_gleam.gleam", 7);
  let _pipe$1 = _block(_pipe);
  return ((i) => { return i + 1; })(_pipe$1);
}

Contributor guide