Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GHC output: TypeError: Cannot read property 'tokens' #1

Closed
chrisdone opened this issue Apr 11, 2011 · 1 comment
Closed

GHC output: TypeError: Cannot read property 'tokens' #1

chrisdone opened this issue Apr 11, 2011 · 1 comment

Comments

@chrisdone
Copy link

While running the following I get an error:

$ ./emscripten.py demo.ll /home/chris/v8-trunk/d8
intertyper.js:393: TypeError: Cannot read property 'tokens' of undefined
        params: parseParamTokens(item.tokens[2].item.tokens),
                                                ^

The full demo.ll file is here: https://gist.github.com/914021

Steps to reproduce (if desired). demo.hs:

main = putStrLn "Hello, World!"

Build:

/opt/ghc7/bin/ghc -fllvm -keep-llvm-files demo.hs -fforce-recomp  # outputs demo.ll

I suspect this is probably not a bug in emscripten, as GHC may use some novel extensions to support its calling conventions and such. I don't really know anything about LLVM or how GHC uses it. I suppose it's worth posting; if other Haskellers try this they will get the same problem, undoubtedly.

@chrisdone
Copy link
Author

My bad, needed to use -show-annotations.

kripken pushed a commit that referenced this issue Dec 7, 2017
* Remove duplicated `var Module`: it is already defined unconditionally in `shell.js` and because of var hoisting it will work fine.
Also this allows to remove one of Closure Compiler suppressions.

* Eliminate one `eval()` construction by replacing placeholder in source code on later stage of the build process.
Move some comments out of final generated code and reword it to better reflect the actual meaning.

* Fix some tests that introduced duplicated `var Module` that caused tests to fail when they shouldn't

* `file_packager.py` tweaked to have access to `EXPORT_NAME` and can now work without `emcc.py` again

* add a test for modularize+closure+prejs

* Moved `var Module` into `emcc.py` in order to make sure it is placed in output code before any `--pre-js`.
Also edited copied comment as behavior have changed slightly.

* Fixed one test that incorrectly (after recent update) assumed that during `--pre-js` execution `Module` should be `undefined`, not it should be an empty object.

* Added check for Closure Compiler usage in `emcc` so that anti-mangling substitution for Closure Compiler is not used when not needed

* `--no-closure` option in `file_packager.py` now replaced with `--from-emcc` and code is further simplified as `file_packager.py` doesn't need to be aware of Closure Compiler

* Do not append module header for `-s SIDE_MODULE`

* Fix for Closure Compiler replacing `Module` variable with plain string

* Fix test case that was looking for comment in shell code that was actually moved from there

* Removed assignment that seems redundant after recent changes
gunyarakun pushed a commit to tombo-a2o/emscripten that referenced this issue Jun 18, 2018
sbc100 added a commit that referenced this issue Jun 5, 2019
This reverts commit 1d198e4.

Apparently this cause a failure on the mac builder:
https://ci.chromium.org/p/emscripten-releases/builders/ci/mac/b8911649373078606944

```
cache:INFO:  - ok
Traceback (most recent call last):
  File "/b/s/w/ir/k/install/emscripten/emcc.py", line 3391, in <module>
    sys.exit(run(sys.argv))
  File "/b/s/w/ir/k/install/emscripten/emcc.py", line 1894, in run
    final = shared.Building.link(linker_inputs, DEFAULT_FINAL, force_archive_contents=force_archive_contents, just_calculate=just_calculate)
  File "/b/s/w/ir/k/install/emscripten/tools/shared.py", line 1940, in link
    Building.read_link_inputs([x for x in files if not x.startswith('-')])
  File "/b/s/w/ir/k/install/emscripten/tools/shared.py", line 1721, in read_link_inputs
    object_names_in_archives = pool.map(extract_archive_contents, archive_names)
  File "/b/s/w/ir/cipd_bin_packages/lib/python2.7/multiprocessing/pool.py", line 253, in map
    return self.map_async(func, iterable, chunksize).get()
  File "/b/s/w/ir/cipd_bin_packages/lib/python2.7/multiprocessing/pool.py", line 572, in get
    raise self._value
IOError: [Errno 2] No such file or directory: u'/b/s/w/ir/tmp/t/emscripten_temp_oIE5H7_archive_contents/#1/12'
```
sbc100 added a commit that referenced this issue Jun 5, 2019
This reverts commit 1d198e4.

Apparently this cause a failure on the mac builder:
https://ci.chromium.org/p/emscripten-releases/builders/ci/mac/b8911649373078606944

```
cache:INFO:  - ok
Traceback (most recent call last):
  File "/b/s/w/ir/k/install/emscripten/emcc.py", line 3391, in <module>
    sys.exit(run(sys.argv))
  File "/b/s/w/ir/k/install/emscripten/emcc.py", line 1894, in run
    final = shared.Building.link(linker_inputs, DEFAULT_FINAL, force_archive_contents=force_archive_contents, just_calculate=just_calculate)
  File "/b/s/w/ir/k/install/emscripten/tools/shared.py", line 1940, in link
    Building.read_link_inputs([x for x in files if not x.startswith('-')])
  File "/b/s/w/ir/k/install/emscripten/tools/shared.py", line 1721, in read_link_inputs
    object_names_in_archives = pool.map(extract_archive_contents, archive_names)
  File "/b/s/w/ir/cipd_bin_packages/lib/python2.7/multiprocessing/pool.py", line 253, in map
    return self.map_async(func, iterable, chunksize).get()
  File "/b/s/w/ir/cipd_bin_packages/lib/python2.7/multiprocessing/pool.py", line 572, in get
    raise self._value
IOError: [Errno 2] No such file or directory: u'/b/s/w/ir/tmp/t/emscripten_temp_oIE5H7_archive_contents/#1/12'
```
austinEng pushed a commit to austinEng/emscripten that referenced this issue Nov 1, 2019
acba607 2019-10-02 Fix stencilFaceStateDescriptor (13 days ago) <Corentin Wallez>
bade160 2019-10-02 Fix BeginRenderPass [depth|stencil|]l\LoadValue (13 days ago) <Corentin Wallez>
3c8c196 2019-10-01 more fixes (2 weeks ago) <Kai Ninomiya>
49e0031 2019-10-01 Merge tag '1.38.46' of https://github.com/emscripten-core/emscripten into library_webgpu (2 weeks ago) <Kai Ninomiya>
f76fed7 2019-10-01 tweak (2 weeks ago) <Kai Ninomiya>
b5de062 2019-10-01 Fixes for Aquarium (2 weeks ago) <Kai Ninomiya>
48499b6 2019-09-28 update dawn.h (2 weeks ago) <Kai Ninomiya>
942ab98 2019-09-28 fix makeGetBool (2 weeks ago) <Kai Ninomiya>
671ef41 2019-09-28 [WebGPU] Implement the functions needed for Aquarium (emscripten-core#1) (2 weeks ago) <Corentin Wallez>
44a16c5 2019-09-28 add webgpu canvas support (2 weeks ago) <Kai Ninomiya>
ef164cf 2019-09-28 fix TODOs (2 weeks ago) <Kai Ninomiya>
52164bd 2019-09-27 ton more stuff (3 weeks ago) <Kai Ninomiya>
44b7536 2019-09-26 implement much of what is needed for rendering (3 weeks ago) <Kai Ninomiya>
b1fa126 2019-09-25 refactors (3 weeks ago) <Kai Ninomiya>
80bba8a 2019-09-19 make device less hack, refactors for future, implement a few things (4 weeks ago) <Kai Ninomiya>
f951f63 2019-09-06 Support a few simple WebGPU entry points (via dawn.h) (6 weeks ago) <Kai Ninomiya>
hugoam pushed a commit to hugoam/emscripten that referenced this issue Jan 14, 2020
acba607 2019-10-02 Fix stencilFaceStateDescriptor (13 days ago) <Corentin Wallez>
bade160 2019-10-02 Fix BeginRenderPass [depth|stencil|]l\LoadValue (13 days ago) <Corentin Wallez>
3c8c196 2019-10-01 more fixes (2 weeks ago) <Kai Ninomiya>
49e0031 2019-10-01 Merge tag '1.38.46' of https://github.com/emscripten-core/emscripten into library_webgpu (2 weeks ago) <Kai Ninomiya>
f76fed7 2019-10-01 tweak (2 weeks ago) <Kai Ninomiya>
b5de062 2019-10-01 Fixes for Aquarium (2 weeks ago) <Kai Ninomiya>
48499b6 2019-09-28 update dawn.h (2 weeks ago) <Kai Ninomiya>
942ab98 2019-09-28 fix makeGetBool (2 weeks ago) <Kai Ninomiya>
671ef41 2019-09-28 [WebGPU] Implement the functions needed for Aquarium (emscripten-core#1) (2 weeks ago) <Corentin Wallez>
44a16c5 2019-09-28 add webgpu canvas support (2 weeks ago) <Kai Ninomiya>
ef164cf 2019-09-28 fix TODOs (2 weeks ago) <Kai Ninomiya>
52164bd 2019-09-27 ton more stuff (3 weeks ago) <Kai Ninomiya>
44b7536 2019-09-26 implement much of what is needed for rendering (3 weeks ago) <Kai Ninomiya>
b1fa126 2019-09-25 refactors (3 weeks ago) <Kai Ninomiya>
80bba8a 2019-09-19 make device less hack, refactors for future, implement a few things (4 weeks ago) <Kai Ninomiya>
f951f63 2019-09-06 Support a few simple WebGPU entry points (via dawn.h) (6 weeks ago) <Kai Ninomiya>
thomasballinger added a commit to thomasballinger/emscripten that referenced this issue Dec 30, 2020
tlively pushed a commit to tlively/emscripten that referenced this issue Mar 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant