compiler-explorer / compiler-explorer

Run compilers interactively from your web browser and interact with the assembly
https://godbolt.org/
BSD 2-Clause "Simplified" License
16.37k stars 1.74k forks source link

Local build: Incorrect data in assembler view. #375

Closed ilAYAli closed 7 years ago

ilAYAli commented 7 years ago

Version: commit c8ca5b8230bf (Sat Apr 8 13:45:06 2017) OS: MacOS Sierra 10.12.5 Beta (16F43c) Browser: 10.1.1 (12603.2.1)

screenshot of issue:

http://imgur.com/a/b2ZYV

git pull --rebase && make

D language support disabled
cd rust && cargo build --release
    Finished release [optimized] target(s) in 0.0 secs
/usr/local/bin/npm install --only=production
compiler-explorer@0.0.3 /Users/petter/source/compiler-explorer
+-- aws-sdk@2.40.0
| +-- buffer@4.9.1
| | +-- base64-js@1.2.0
| | +-- ieee754@1.1.8
| | `-- isarray@1.0.0
| +-- crypto-browserify@1.0.9
| +-- jmespath@0.15.0
| +-- querystring@0.2.0
| +-- sax@1.2.1
| +-- url@0.10.3
| | `-- punycode@1.3.2
| +-- uuid@3.0.1
| +-- xml2js@0.4.17
| `-- xmlbuilder@4.2.1
|   `-- lodash@4.17.4
+-- body-parser@1.14.2
| +-- bytes@2.2.0
| +-- content-type@1.0.2
| +-- debug@2.2.0
| | `-- ms@0.7.1
| +-- depd@1.1.0
| +-- http-errors@1.3.1
| | +-- inherits@2.0.3
| | `-- statuses@1.3.1
| +-- iconv-lite@0.4.13
| +-- on-finished@2.3.0
| | `-- ee-first@1.1.1
| +-- qs@5.2.0
| +-- raw-body@2.1.7
| | +-- bytes@2.4.0
| | `-- unpipe@1.0.0
| `-- type-is@1.6.15
|   +-- media-typer@0.3.0
|   `-- mime-types@2.1.15
+-- compression@1.6.2
| +-- accepts@1.3.3
| | `-- negotiator@0.6.1
| +-- bytes@2.3.0
| +-- compressible@2.0.10
| | `-- mime-db@1.27.0
| +-- on-headers@1.0.1
| `-- vary@1.1.1
+-- express@4.13.4
| +-- accepts@1.2.13
| | `-- negotiator@0.5.3
| +-- array-flatten@1.1.1
| +-- content-disposition@0.5.1
| +-- cookie@0.1.5
| +-- cookie-signature@1.0.6
| +-- escape-html@1.0.3
| +-- etag@1.7.0
| +-- finalhandler@0.4.1
| +-- fresh@0.3.0
| +-- merge-descriptors@1.0.1
| +-- methods@1.1.2
| +-- parseurl@1.3.1
| +-- path-to-regexp@0.1.7
| +-- proxy-addr@1.0.10
| | +-- forwarded@0.1.0
| | `-- ipaddr.js@1.0.5
| +-- qs@4.0.0
| +-- range-parser@1.0.3
| +-- send@0.13.1
| | +-- destroy@1.0.4
| | +-- mime@1.3.4
| | `-- statuses@1.2.1
| +-- serve-static@1.10.3
| | `-- send@0.13.2
| |   `-- statuses@1.2.1
| +-- utils-merge@1.0.0
| `-- vary@1.0.1
+-- fs-extra@0.26.7
| +-- graceful-fs@4.1.11
| +-- jsonfile@2.4.0
| +-- klaw@1.3.1
| +-- path-is-absolute@1.0.1
| `-- rimraf@2.6.1
|   `-- glob@7.1.1
|     +-- fs.realpath@1.0.0
|     +-- inflight@1.0.6
|     | `-- wrappy@1.0.2
|     +-- minimatch@3.0.3
|     | `-- brace-expansion@1.1.7
|     |   +-- balanced-match@0.4.2
|     |   `-- concat-map@0.0.1
|     `-- once@1.4.0
+-- http-proxy@1.12.1
| +-- eventemitter3@1.2.0
| `-- requires-port@1.0.0
+-- lru-cache@2.7.3
+-- monaco-editor@0.8.3
+-- morgan@1.6.1
| +-- basic-auth@1.0.4
| `-- depd@1.0.1
+-- nopt@3.0.6
| `-- abbrev@1.1.0
+-- promise@7.0.4
| `-- asap@2.0.5
+-- promise-queue@2.1.2
+-- pug@2.0.0-beta11
| +-- pug-code-gen@1.1.1
| | +-- constantinople@3.1.0
| | | +-- acorn@3.3.0
| | | `-- is-expression@2.1.0
| | +-- doctypes@1.1.0
| | +-- js-stringify@1.0.2
| | +-- pug-attrs@2.0.2
| | +-- pug-error@1.3.2
| | +-- void-elements@2.0.1
| | `-- with@5.1.1
| |   `-- acorn-globals@3.1.0
| |     `-- acorn@4.0.11
| +-- pug-filters@2.1.1
| | +-- clean-css@3.4.25
| | | +-- commander@2.8.1
| | | | `-- graceful-readlink@1.0.1
| | | `-- source-map@0.4.4
| | |   `-- amdefine@1.0.1
| | +-- jstransformer@1.0.0
| | | `-- is-promise@2.1.0
| | +-- pug-walk@1.1.1
| | `-- resolve@1.3.2
| |   `-- path-parse@1.0.5
| +-- pug-lexer@3.0.0
| | +-- character-parser@2.2.0
| | | `-- is-regex@1.0.4
| | |   `-- has@1.0.1
| | |     `-- function-bind@1.1.0
| | `-- is-expression@3.0.0
| |   `-- acorn@4.0.11
| +-- pug-linker@2.0.2
| +-- pug-load@2.0.5
| | `-- object-assign@4.1.1
| +-- pug-parser@2.0.2
| | `-- token-stream@0.0.1
| +-- pug-runtime@2.0.3
| `-- pug-strip-comments@1.0.2
+-- serve-favicon@2.3.2
| `-- ms@0.7.2
+-- shell-quote@1.6.1
| +-- array-filter@0.0.1
| +-- array-map@0.0.0
| +-- array-reduce@0.0.0
| `-- jsonify@0.0.0
+-- temp@0.8.3
| +-- os-tmpdir@1.0.2
| `-- rimraf@2.2.8
+-- tree-kill@1.1.0
+-- uglify-js@2.8.21
| +-- source-map@0.5.6
| +-- uglify-to-browserify@1.0.2
| `-- yargs@3.10.0
|   +-- camelcase@1.2.1
|   +-- cliui@2.1.0
|   | +-- center-align@0.1.3
|   | | +-- align-text@0.1.4
|   | | | +-- kind-of@3.1.0
|   | | | | `-- is-buffer@1.1.5
|   | | | +-- longest@1.0.1
|   | | | `-- repeat-string@1.6.1
|   | | `-- lazy-cache@1.0.4
|   | +-- right-align@0.1.3
|   | `-- wordwrap@0.0.2
|   +-- decamelize@1.2.0
|   `-- window-size@0.1.0
+-- underscore-node@0.1.2
`-- winston@2.2.0
  +-- async@1.0.0
  +-- colors@1.0.3
  +-- cycle@1.0.3
  +-- eyes@0.1.8
  +-- isstream@0.1.2
  +-- pkginfo@0.3.1
  `-- stack-trace@0.0.9

/usr/local/bin/npm install --only=dev
compiler-explorer@0.0.3 /Users/petter/source/compiler-explorer
+-- bower@1.8.0
+-- chai@3.5.0
| +-- assertion-error@1.0.2
| +-- deep-eql@0.1.3
| | `-- type-detect@0.1.1
| `-- type-detect@1.0.0
+-- jshint@2.9.4
| +-- cli@1.0.1
| +-- console-browserify@1.1.0
| | `-- date-now@0.1.4
| +-- exit@0.1.2
| +-- htmlparser2@3.8.3
| | +-- domelementtype@1.3.0
| | +-- domhandler@2.3.0
| | +-- domutils@1.5.1
| | | `-- dom-serializer@0.1.0
| | |   +-- domelementtype@1.1.3
| | |   `-- entities@1.1.1
| | +-- entities@1.0.0
| | `-- readable-stream@1.1.14
| |   +-- core-util-is@1.0.2
| |   +-- isarray@0.0.1
| |   `-- string_decoder@0.10.31
| +-- lodash@3.7.0
| +-- shelljs@0.3.0
| `-- strip-json-comments@1.0.4
+-- mocha@3.1.2
| +-- browser-stdout@1.3.0
| +-- commander@2.9.0
| +-- diff@1.4.0
| +-- escape-string-regexp@1.0.5
| +-- glob@7.0.5
| +-- growl@1.9.2
| +-- json3@3.3.2
| +-- lodash.create@3.1.1
| | +-- lodash._baseassign@3.2.0
| | | +-- lodash._basecopy@3.0.1
| | | `-- lodash.keys@3.1.2
| | |   +-- lodash._getnative@3.9.1
| | |   +-- lodash.isarguments@3.1.0
| | |   `-- lodash.isarray@3.0.4
| | +-- lodash._basecreate@3.0.3
| | `-- lodash._isiterateecall@3.0.9
| +-- mkdirp@0.5.1
| | `-- minimist@0.0.8
| `-- supports-color@3.1.2
|   `-- has-flag@1.0.0
+-- requirejs@2.3.3
`-- supervisor@0.12.0

/Applications/Xcode.app/Contents/Developer/usr/bin/make -C c-preload
cc -std=c99 -shared -O1 -fPIC preload.c -o libpreload.so -ldl
if ! test -f ".bower-updated"; then rm -rf static/ext; fi
/usr/local/bin/node ./node_modules/bower/bin/bower install
bower requirejs#^2.3.2          cached https://github.com/jrburke/requirejs-bower.git#2.3.3
bower requirejs#^2.3.2        validate 2.3.3 against https://github.com/jrburke/requirejs-bower.git#^2.3.2
bower jquery#^3.1.1             cached https://github.com/jquery/jquery-dist.git#3.2.1
bower jquery#^3.1.1           validate 3.2.1 against https://github.com/jquery/jquery-dist.git#^3.1.1
bower underscore#^1.8.3         cached https://github.com/jashkenas/underscore.git#1.8.3
bower underscore#^1.8.3       validate 1.8.3 against https://github.com/jashkenas/underscore.git#^1.8.3
bower bootstrap#^3.3.7          cached https://github.com/twbs/bootstrap.git#3.3.7
bower bootstrap#^3.3.7        validate 3.3.7 against https://github.com/twbs/bootstrap.git#^3.3.7
bower golden-layout#^1.5.6      cached https://github.com/hoxton-one/golden-layout.git#1.5.7
bower golden-layout#^1.5.6    validate 1.5.7 against https://github.com/hoxton-one/golden-layout.git#^1.5.6
bower eventEmitter#^5.1.0       cached https://github.com/Olical/EventEmitter.git#5.1.0
bower eventEmitter#^5.1.0     validate 5.1.0 against https://github.com/Olical/EventEmitter.git#^5.1.0
bower selectize#^0.12.2         cached https://github.com/selectize/selectize.js.git#0.12.4
bower selectize#^0.12.2       validate 0.12.4 against https://github.com/selectize/selectize.js.git#^0.12.2
bower lz-string#^1.4.4          cached https://github.com/pieroxy/lz-string.git#1.4.4
bower lz-string#^1.4.4        validate 1.4.4 against https://github.com/pieroxy/lz-string.git#^1.4.4
bower clipboard#^1.5.12         cached https://github.com/zenorocha/clipboard.js.git#1.6.1
bower clipboard#^1.5.12       validate 1.6.1 against https://github.com/zenorocha/clipboard.js.git#^1.5.12
bower seiyria-bootstrap-slider#9.7.x           cached https://github.com/seiyria/bootstrap-slider.git#9.7.2
bower seiyria-bootstrap-slider#9.7.x         validate 9.7.2 against https://github.com/seiyria/bootstrap-slider.git#9.7.x
bower raven-js#^3.10.0                         cached https://github.com/getsentry/raven-js.git#3.14.0
bower raven-js#^3.10.0                       validate 3.14.0 against https://github.com/getsentry/raven-js.git#^3.10.0
bower es6-promise#^4.0.5                       cached https://github.com/components/es6-promise.git#4.0.5
bower es6-promise#^4.0.5                     validate 4.0.5 against https://github.com/components/es6-promise.git#^4.0.5
bower lru-cache#2.7.3                          cached https://github.com/isaacs/node-lru-cache.git#2.7.3
bower lru-cache#2.7.3                        validate 2.7.3 against https://github.com/isaacs/node-lru-cache.git#2.7.3
bower sifter#0.5.x                             cached https://github.com/brianreavis/sifter.js.git#0.5.2
bower sifter#0.5.x                           validate 0.5.2 against https://github.com/brianreavis/sifter.js.git#0.5.x
bower microplugin#0.0.x                        cached https://github.com/brianreavis/microplugin.js.git#0.0.3
bower microplugin#0.0.x                      validate 0.0.3 against https://github.com/brianreavis/microplugin.js.git#0.0.x
bower requirejs#^2.3.2                        install requirejs#2.3.3
bower jquery#^3.1.1                           install jquery#3.2.1
bower golden-layout#^1.5.6                    install golden-layout#1.5.7
bower underscore#^1.8.3                       install underscore#1.8.3
bower eventEmitter#^5.1.0                     install eventEmitter#5.1.0
bower bootstrap#^3.3.7                        install bootstrap#3.3.7
bower lz-string#^1.4.4                        install lz-string#1.4.4
bower selectize#^0.12.2                       install selectize#0.12.4
bower clipboard#^1.5.12                       install clipboard#1.6.1
bower es6-promise#^4.0.5                      install es6-promise#4.0.5
bower seiyria-bootstrap-slider#9.7.x          install seiyria-bootstrap-slider#9.7.2
bower lru-cache#2.7.3                         install lru-cache#2.7.3
bower raven-js#^3.10.0                        install raven-js#3.14.0
bower sifter#0.5.x                            install sifter#0.5.2
bower microplugin#0.0.x                       install microplugin#0.0.3

requirejs#2.3.3 static/ext/requirejs

jquery#3.2.1 static/ext/jquery

golden-layout#1.5.7 static/ext/golden-layout
└── jquery#3.2.1

underscore#1.8.3 static/ext/underscore

eventEmitter#5.1.0 static/ext/eventEmitter

bootstrap#3.3.7 static/ext/bootstrap
└── jquery#3.2.1

lz-string#1.4.4 static/ext/lz-string

selectize#0.12.4 static/ext/selectize
├── jquery#3.2.1
├── microplugin#0.0.3
└── sifter#0.5.2

clipboard#1.6.1 static/ext/clipboard

es6-promise#4.0.5 static/ext/es6-promise

seiyria-bootstrap-slider#9.7.2 static/ext/seiyria-bootstrap-slider

lru-cache#2.7.3 static/ext/lru-cache

raven-js#3.14.0 static/ext/raven-js

sifter#0.5.2 static/ext/sifter

microplugin#0.0.3 static/ext/microplugin
# Workaround for lack of versioned monaco-editor in bower
rm -rf static/ext/monaco-editor
cp -r node_modules/monaco-editor static/ext/
/usr/local/bin/node ./node_modules/.bin/supervisor -w app.js,lib,etc/config -e 'js|node|properties' --exec /usr/local/bin/node -- ./app.js --language C++

Running node-supervisor with
  program './app.js --language C++'
  --watch 'app.js,lib,etc/config'
  --extensions 'js|node|properties'
  --exec '/usr/local/bin/node'

Starting child process with '/usr/local/bin/node ./app.js --language C++'
Watching directory '/Users/petter/source/compiler-explorer/app.js' for changes.
Press rs for restarting the process.
Watching directory '/Users/petter/source/compiler-explorer/lib' for changes.
Press rs for restarting the process.
Watching directory '/Users/petter/source/compiler-explorer/etc/config' for changes.
Press rs for restarting the process.
info: properties hierarchy: defaults, dev, C++, dev.darwin, darwin, pwa-mbp.wahlman.no, local
info: Reading properties from ./etc/config with hierarchy defaults,dev,c++,dev.darwin,darwin,pwa-mbp.wahlman.no,local
clang: error: unknown argument: '-print-multiarch'
clang: error: no input files
warn: Unable to get multiarch: Error: Command failed: gcc -print-multiarch
clang: error: unknown argument: '-print-multiarch'
clang: error: no input files

info: Cleaning temp dirs every 600 secs
info: Found compiler id=/usr/bin/g++-4.4, exe=/usr/bin/g++-4.4, name=/usr/bin/g++-4.4, alias=undefined, options=, versionFlag=undefined, versionRe=undefined, compilerType=, demangler=c++filt, intelAsm=, needsMulti=true, supportsBinary=true, postProcess=[]
info: Found compiler id=/usr/bin/g++-4.5, exe=/usr/bin/g++-4.5, name=/usr/bin/g++-4.5, alias=undefined, options=, versionFlag=undefined, versionRe=undefined, compilerType=, demangler=c++filt, intelAsm=, needsMulti=true, supportsBinary=true, postProcess=[]
info: Found compiler id=/usr/bin/g++-4.6, exe=/usr/bin/g++-4.6, name=/usr/bin/g++-4.6, alias=undefined, options=, versionFlag=undefined, versionRe=undefined, compilerType=, demangler=c++filt, intelAsm=, needsMulti=true, supportsBinary=true, postProcess=[]
info: Found compiler id=/usr/bin/g++-4.7, exe=/usr/bin/g++-4.7, name=/usr/bin/g++-4.7, alias=undefined, options=, versionFlag=undefined, versionRe=undefined, compilerType=, demangler=c++filt, intelAsm=, needsMulti=true, supportsBinary=true, postProcess=[]
info: Found compiler id=/usr/bin/clang++, exe=/usr/bin/clang++, name=/usr/bin/clang++, alias=undefined, options=, versionFlag=undefined, versionRe=undefined, compilerType=, demangler=c++filt, intelAsm=, needsMulti=true, supportsBinary=true, postProcess=[]
info: Found compiler id=/usr/bin/g++, exe=/usr/bin/g++, name=/usr/bin/g++, alias=undefined, options=, versionFlag=undefined, versionRe=undefined, compilerType=, demangler=c++filt, intelAsm=, needsMulti=true, supportsBinary=true, postProcess=[]
info: Loading compiler from ./compilers/default
info: Gathering version information on /usr/bin/g++-4.4
info: Gathering version information on /usr/bin/g++-4.5
info: Gathering version information on /usr/bin/g++-4.6
info: Gathering version information on /usr/bin/g++-4.7
info: Gathering version information on /usr/bin/clang++
info: Gathering version information on /usr/bin/g++
error: Unable to get version for compiler '/usr/bin/g++-4.4' - Error: spawn /usr/bin/g++-4.4 ENOENT
error: Unable to get version for compiler '/usr/bin/g++-4.5' - Error: spawn /usr/bin/g++-4.5 ENOENT
error: Unable to get version for compiler '/usr/bin/g++-4.6' - Error: spawn /usr/bin/g++-4.6 ENOENT
error: Unable to get version for compiler '/usr/bin/g++-4.7' - Error: spawn /usr/bin/g++-4.7 ENOENT
info: /usr/bin/clang++ is version 'Apple LLVM version 8.1.0 (clang-802.0.38)'
info: /usr/bin/g++ is version 'Apple LLVM version 8.1.0 (clang-802.0.38)'
info: Compilers: id=/usr/bin/clang++, exe=/usr/bin/clang++, name=/usr/bin/clang++, alias=undefined, options=, versionFlag=undefined, versionRe=undefined, compilerType=, demangler=c++filt, intelAsm=, needsMulti=true, supportsBinary=true, postProcess=[], supportsIntel=false, version=Apple LLVM version 8.1.0 (clang-802.0.38), id=/usr/bin/g++, exe=/usr/bin/g++, name=/usr/bin/g++, alias=undefined, options=, versionFlag=undefined, versionRe=undefined, compilerType=, demangler=c++filt, intelAsm=, needsMulti=true, supportsBinary=true, postProcess=[], supportsIntel=false, version=Apple LLVM version 8.1.0 (clang-802.0.38)
info: =======================================
info: Listening on http://localhost:10240/
info:   serving static files from 'static'
info:   git release c8ca5b8230bf5a5acc688e14de99e782f15c9e30
info: =======================================
mattgodbolt commented 7 years ago

I think this is a duplicate of #320?

ilAYAli commented 7 years ago

It seems so, I will close this issue. Thank you for the quick response.

mattgodbolt commented 7 years ago

Thanks! I haven't even started looking at it. Do macs have different line endings or something? Seems the asm parser (in lib/asm.js) is being completely confused here...

ilAYAli commented 7 years ago

@mattgodbolt line endings should be similar to other Unix OS's. If it helps, I can send you the output of whatever command you use for displaying the assembly output.