Skip to content

[Bug?]: (v1.1.0) unable to use anonymous export default function () in combination with server-fn #1801

@peterhirn

Description

@peterhirn

Duplicates

  • I have searched the existing issues

Latest version

  • I have tested the latest version

Current behavior 😯

No response

Expected behavior 🤔

No response

Steps to reproduce 🕹

  1. pnpm create solid@latest -s solid-start-default-fn
  2. cd solid-start-default-fn/
  3. pnpm i
  4. src/routes/index.tsx
import { Title } from "@solidjs/meta";
import Counter from "~/components/Counter";

const _unused = async () => {
  "use server";
  return "hello";
};

/// I removed `Home` here
export default function () {
  return (
    <main>
      <Title>Hello World</Title>
      <h1>Hello world!</h1>
      <Counter />
      <p>
        Visit{" "}
        <a href="https://start.solidjs.com" target="_blank">
          start.solidjs.com
        </a>{" "}
        to learn how to build SolidStart apps.
      </p>
    </main>
  );
}
  1. pnpm build
📦 Compiling server-fns router...
vinxi building router server-fns in http mode
vite v6.1.0 building SSR bundle for production...
✓ 11 modules transformed.
x Build failed in 214ms

 ERROR  [solid] /home/peter/Projects/test/solid-start-default-fn/src/routes/index.tsx: Unexpected token (7:9)                                                                                                               2:09:20 PM

   5 |   return "hello";
   6 | }, 'src_routes_index_tsx--unused_1', '/home/peter/Projects/test/solid-start-default-fn/src/routes/index.tsx?pick=default&pick=%24css&tsr-directive-use-server=');
>  7 | function () {
     |          ^
   8 |   return <main>
   9 |       <Title>Hello World</Title>
  10 |       <h1>Hello world!</h1>
file: /home/peter/Projects/test/solid-start-default-fn/src/routes/index.tsx?pick=default&pick=%24css&tsr-directive-use-server=:7:9


       5 |   return "hello";
      6 | }, 'src_routes_index_tsx--unused_1', 'src/routes/index.tsx?pick=default&pick=%24css&tsr-directive-use-server=');
    >  7 | function () {
        |          ^
      8 |   return <main>
      9 |       <Title>Hello World</Title>
     10 |       <h1>Hello world!</h1>
    file: src/routes/index.tsx?pick=default&pick=%24css&tsr-directive-use-server=:7:9
    at constructor (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:360:19)
    at TypeScriptParserMixin.raise (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:3327:19)
    at TypeScriptParserMixin.unexpected (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:3347:16)
    at TypeScriptParserMixin.parseIdentifierName (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:11881:12)
    at TypeScriptParserMixin.parseIdentifier (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:11864:23)
    at TypeScriptParserMixin.parseFunctionId (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:13096:67)
    at TypeScriptParserMixin.parseFunction (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:13074:22)
    at TypeScriptParserMixin.parseFunctionStatement (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:12769:17)
    at TypeScriptParserMixin.parseStatementContent (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:12430:21)
    at TypeScriptParserMixin.parseStatementContent (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:9344:18)
    at TypeScriptParserMixin.parseStatementLike (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:12406:17)
    at TypeScriptParserMixin.parseModuleItem (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:12383:17)
    at TypeScriptParserMixin.parseBlockOrModuleBlockBody (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:12960:36)
    at TypeScriptParserMixin.parseBlockBody (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:12953:10)
    at TypeScriptParserMixin.parseProgram (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:12280:10)
    at TypeScriptParserMixin.parseTopLevel (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:12270:25)
    at TypeScriptParserMixin.parse (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:14120:10)
    at TypeScriptParserMixin.parse (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:9967:18)
    at parse (node_modules/.pnpm/@babel+parser@7.26.8/node_modules/@babel/parser/lib/index.js:14154:38)
    at parser (node_modules/.pnpm/@babel+core@7.26.8/node_modules/@babel/core/lib/parser/index.js:41:34)
    at parser.next (<anonymous>)
    at normalizeFile (node_modules/.pnpm/@babel+core@7.26.8/node_modules/@babel/core/lib/transformation/normalize-file.js:64:37)
    at normalizeFile.next (<anonymous>)
    at run (node_modules/.pnpm/@babel+core@7.26.8/node_modules/@babel/core/lib/transformation/index.js:22:50)
    at run.next (<anonymous>)
    at transform (node_modules/.pnpm/@babel+core@7.26.8/node_modules/@babel/core/lib/transform.js:22:33)
    at transform.next (<anonymous>)
    at step (node_modules/.pnpm/gensync@1.0.0-beta.2/node_modules/gensync/index.js:261:32)
    at node_modules/.pnpm/gensync@1.0.0-beta.2/node_modules/gensync/index.js:273:13
    at async.call.result.err.err (node_modules/.pnpm/gensync@1.0.0-beta.2/node_modules/gensync/index.js:223:11)
    at node_modules/.pnpm/gensync@1.0.0-beta.2/node_modules/gensync/index.js:189:28
    at node_modules/.pnpm/@babel+core@7.26.8/node_modules/@babel/core/lib/gensync-utils/async.js:67:7
    at node_modules/.pnpm/gensync@1.0.0-beta.2/node_modules/gensync/index.js:113:33
    at step (node_modules/.pnpm/gensync@1.0.0-beta.2/node_modules/gensync/index.js:287:14)
    at node_modules/.pnpm/gensync@1.0.0-beta.2/node_modules/gensync/index.js:273:13
    at async.call.result.err.err (node_modules/.pnpm/gensync@1.0.0-beta.2/node_modules/gensync/index.js:223:11)



 ERROR  [solid] /home/peter/Projects/test/solid-start-default-fn/src/routes/index.tsx: Unexpected token (7:9)                                                                                                               2:09:20 PM

   5 |   return "hello";
   6 | }, 'src_routes_index_tsx--unused_1', '/home/peter/Projects/test/solid-start-default-fn/src/routes/index.tsx?pick=default&pick=%24css&tsr-directive-use-server=');
>  7 | function () {
     |          ^
   8 |   return <main>
   9 |       <Title>Hello World</Title>
  10 |       <h1>Hello world!</h1>
file: /home/peter/Projects/test/solid-start-default-fn/src/routes/index.tsx?pick=default&pick=%24css&tsr-directive-use-server=:7:9


 ERROR  Exited with code: 1                                                                                                                                                                                                 2:09:20 PM

    at CommandChild.pipedStdoutBuffer (node_modules/.pnpm/dax-sh@0.39.2/node_modules/dax-sh/esm/mod.js:9392:19)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)



 ERROR  Exited with code: 1

Context 🔦

No response

Your environment 🌎

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions