clang compiler error

Hi,

I'm trying to compile a special version of llvm+clang targeting flash as3
( https://github.com/vpmedia/crossbridge/blob/futures/ ) and i've
got an error message which i cannot solve..

The following cpp script is a module source of swig:
https://github.com/vpmedia/crossbridge/blob/futures/swig-2.0.4/Source/Modules/as3.cxx

Any tips how should i debug the following error? (I'm pretty new to clang and cpp)

COMPILER LOG PART:

ignoring nonexistent directory "/cygdrive/f/crossbridge/sdk/usr/platform/cygwin/bin/../lib/clang/3.2
/include"
#include "..." search starts here:
#include <...> search starts here:
  ../Source/Include
  ../Source/CParse
  /cygdrive/f/crossbridge/swig-2.0.4/Source/Include
  /cygdrive/f/crossbridge/swig-2.0.4/Source/DOH
  /cygdrive/f/crossbridge/swig-2.0.4/Source/CParse
  /cygdrive/f/crossbridge/swig-2.0.4/Source/Preprocessor
  /cygdrive/f/crossbridge/swig-2.0.4/Source/Swig
  /cygdrive/f/crossbridge/swig-2.0.4/Source/Modules
  /cygdrive/f/crossbridge/build/win/swig/pcre/pcre-swig-install/include
  /cygdrive/f/crossbridge/avm2_env/misc
  /cygdrive/f/crossbridge/llvm-3.2/include
  /cygdrive/f/crossbridge/build/win/llvm-debug/include
  /cygdrive/f/crossbridge/llvm-3.2/tools/clang/include
  /cygdrive/f/crossbridge/build/win/llvm-debug/tools/clang/include
  /cygdrive/f/crossbridge/llvm-3.2/tools/clang/lib
  /cygdrive/f/crossbridge/sdk/usr/bin/../../usr/include/c++/v1
  /cygdrive/f/crossbridge/sdk/usr/bin/../../usr/include
End of search list.
Stack dump:
0. Program arguments: /cygdrive/f/crossbridge/sdk/usr/platform/cygwin/bin/clang++ -cc1 -triple
avm2-unknown-freebsd8 -S -disable-free -disable-llvm-verifier -main-file-name as3.cxx -mrelocation-m
odel static -mdisable-fp-elim -fmath-errno -momit-leaf-frame-pointer -v -g -coverage-file /tmp/as3-7
tqBPF.s -resource-dir /cygdrive/f/crossbridge/sdk/usr/platform/cygwin/bin/../lib/clang/3.2 -dependen
cy-file Modules/.deps/as3.Tpo -sys-header-deps -MP -MT Modules/as3.o -D HAVE_CONFIG_H -D PCRE_STATIC
  -D __STDC_LIMIT_MACROS -D __STDC_CONSTANT_MACROS -I ../Source/Include -I ../Source/CParse -I /cygdr
ive/f/crossbridge/swig-2.0.4/Source/Include -I /cygdrive/f/crossbridge/swig-2.0.4/Source/DOH -I /cyg
drive/f/crossbridge/swig-2.0.4/Source/CParse -I /cygdrive/f/crossbridge/swig-2.0.4/Source/Preprocess
or -I /cygdrive/f/crossbridge/swig-2.0.4/Source/Swig -I /cygdrive/f/crossbridge/swig-2.0.4/Source/Mo
dules -I /cygdrive/f/crossbridge/build/win/swig/pcre/pcre-swig-install/include -I /cygdrive/f/crossb
ridge/avm2_env/misc/ -I /cygdrive/f/crossbridge/llvm-3.2/include -I /cygdrive/f/crossbridge/build/wi
n/llvm-debug/include -I /cygdrive/f/crossbridge/llvm-3.2/tools/clang/include -I /cygdrive/f/crossbri
dge/build/win/llvm-debug/tools/clang/include -I /cygdrive/f/crossbridge/llvm-3.2/tools/clang/lib -is
ysroot /cygdrive/f/crossbridge/sdk/usr/bin/../.. -fmodule-cache-path /var/tmp/clang-module-cache -Wn
o-long-long -fdeprecated-macro -fno-dwarf-directory-asm -fdebug-compilation-dir /cygdrive/f/crossbri
dge/build/win/swig/Source -ferror-limit 19 -fmessage-length 100 -mstackrealign -fno-rtti -fobjc-runt
ime=gcc -fcxx-exceptions -fexceptions -fsjlj-exceptions -fdiagnostics-show-option -fcolor-diagnostic
s -o /tmp/as3-7tqBPF.s -x c++ /cygdrive/f/crossbridge/swig-2.0.4/Source/Modules/as3.cxx
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module '/cygdrive/f/crossbridge/swig-2.0.4/Source/Mo
dules/as3.cxx'.
4. Running pass 'AVM2 Assembly Printer' on function '@_ZNSt3__16__treeINS_12basic_stringIcNS_11
char_traitsIcEENS_9allocatorIcEEEENS_4lessIS6_EENS4_IS6_EEE16__construct_nodeERKS6_'
  "/cygdrive/f/crossbridge/sdk/usr/bin/avm2-as" -o Modules/as3.o /tmp/as3-7tqBPF.s
Error: Failed to open /tmp/as3-7tqBPF.s for input
clang++: error: assembler command failed with exit code 255 (use -v to see invocation)
make[4]: *** [Modules/as3.o] Error 255
make[4]: Leaving directory `/cygdrive/f/crossbridge/build/win/swig/Source'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/cygdrive/f/crossbridge/build/win/swig/Source'
make[2]: *** [source] Error 2
make[2]: Leaving directory `/cygdrive/f/crossbridge/build/win/swig'
make[1]: *** [swig] Error 2
make[1]: Leaving directory `/cygdrive/f/crossbridge'

My problem is that i cannot see any line numbers about where should i search for code errors, and the codebase is not written but myself, just trying to do some maintenance.

Best regards!
Andras Csizmadia

From: "Andras Csizmadia" <andras@vpmedia.hu>
To: cfe-dev@cs.uiuc.edu
Sent: Saturday, April 26, 2014 11:45:08 AM
Subject: [cfe-dev] clang compiler error

Hi,

I'm trying to compile a special version of llvm+clang targeting flash
as3
( https://github.com/vpmedia/crossbridge/blob/futures/ ) and i've
got an error message which i cannot solve..

The following cpp script is a module source of swig:
https://github.com/vpmedia/crossbridge/blob/futures/swig-2.0.4/Source/Modules/as3.cxx

Any tips how should i debug the following error? (I'm pretty new to
clang and cpp)

COMPILER LOG PART:

ignoring nonexistent directory
"/cygdrive/f/crossbridge/sdk/usr/platform/cygwin/bin/../lib/clang/3.2
/include"
#include "..." search starts here:
#include <...> search starts here:
  ../Source/Include
  ../Source/CParse
  /cygdrive/f/crossbridge/swig-2.0.4/Source/Include
  /cygdrive/f/crossbridge/swig-2.0.4/Source/DOH
  /cygdrive/f/crossbridge/swig-2.0.4/Source/CParse
  /cygdrive/f/crossbridge/swig-2.0.4/Source/Preprocessor
  /cygdrive/f/crossbridge/swig-2.0.4/Source/Swig
  /cygdrive/f/crossbridge/swig-2.0.4/Source/Modules
  /cygdrive/f/crossbridge/build/win/swig/pcre/pcre-swig-install/include
  /cygdrive/f/crossbridge/avm2_env/misc
  /cygdrive/f/crossbridge/llvm-3.2/include
  /cygdrive/f/crossbridge/build/win/llvm-debug/include
  /cygdrive/f/crossbridge/llvm-3.2/tools/clang/include
  /cygdrive/f/crossbridge/build/win/llvm-debug/tools/clang/include
  /cygdrive/f/crossbridge/llvm-3.2/tools/clang/lib
  /cygdrive/f/crossbridge/sdk/usr/bin/../../usr/include/c++/v1
  /cygdrive/f/crossbridge/sdk/usr/bin/../../usr/include
End of search list.
Stack dump:
0. Program arguments:
/cygdrive/f/crossbridge/sdk/usr/platform/cygwin/bin/clang++ -cc1
-triple
avm2-unknown-freebsd8 -S -disable-free -disable-llvm-verifier
-main-file-name as3.cxx -mrelocation-m
odel static -mdisable-fp-elim -fmath-errno -momit-leaf-frame-pointer
-v
-g -coverage-file /tmp/as3-7
tqBPF.s -resource-dir
/cygdrive/f/crossbridge/sdk/usr/platform/cygwin/bin/../lib/clang/3.2
-dependen
cy-file Modules/.deps/as3.Tpo -sys-header-deps -MP -MT Modules/as3.o
-D
HAVE_CONFIG_H -D PCRE_STATIC
  -D __STDC_LIMIT_MACROS -D __STDC_CONSTANT_MACROS -I
  ../Source/Include
-I ../Source/CParse -I /cygdr
ive/f/crossbridge/swig-2.0.4/Source/Include -I
/cygdrive/f/crossbridge/swig-2.0.4/Source/DOH -I /cyg
drive/f/crossbridge/swig-2.0.4/Source/CParse -I
/cygdrive/f/crossbridge/swig-2.0.4/Source/Preprocess
or -I /cygdrive/f/crossbridge/swig-2.0.4/Source/Swig -I
/cygdrive/f/crossbridge/swig-2.0.4/Source/Mo
dules -I
/cygdrive/f/crossbridge/build/win/swig/pcre/pcre-swig-install/include
-I
/cygdrive/f/crossb
ridge/avm2_env/misc/ -I /cygdrive/f/crossbridge/llvm-3.2/include -I
/cygdrive/f/crossbridge/build/wi
n/llvm-debug/include -I
/cygdrive/f/crossbridge/llvm-3.2/tools/clang/include -I
/cygdrive/f/crossbri
dge/build/win/llvm-debug/tools/clang/include -I
/cygdrive/f/crossbridge/llvm-3.2/tools/clang/lib -is
ysroot /cygdrive/f/crossbridge/sdk/usr/bin/../.. -fmodule-cache-path
/var/tmp/clang-module-cache -Wn
o-long-long -fdeprecated-macro -fno-dwarf-directory-asm
-fdebug-compilation-dir /cygdrive/f/crossbri
dge/build/win/swig/Source -ferror-limit 19 -fmessage-length 100
-mstackrealign -fno-rtti -fobjc-runt
ime=gcc -fcxx-exceptions -fexceptions -fsjlj-exceptions
-fdiagnostics-show-option -fcolor-diagnostic
s -o /tmp/as3-7tqBPF.s -x c++
/cygdrive/f/crossbridge/swig-2.0.4/Source/Modules/as3.cxx
1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module
'/cygdrive/f/crossbridge/swig-2.0.4/Source/Mo
dules/as3.cxx'.
4. Running pass 'AVM2 Assembly Printer' on function
'@_ZNSt3__16__treeINS_12basic_stringIcNS_11
char_traitsIcEENS_9allocatorIcEEEENS_4lessIS6_EENS4_IS6_EEE16__construct_nodeERKS6_'
  "/cygdrive/f/crossbridge/sdk/usr/bin/avm2-as" -o Modules/as3.o
/tmp/as3-7tqBPF.s
Error: Failed to open /tmp/as3-7tqBPF.s for input

This does not look like a code error. Rather, it seems that the backend did not actually produce the output assembly file that it should have (/tmp/as3-7tqBPF.s in this case). Is it possible that you don't have a writable /tmp in your cygwin environment?

-Hal

Hi,

It's not a permission problem, other cxx files are compiling.
https://dl.dropboxusercontent.com/u/1375050/llvm_swig_build.log
Line 34889 - 34923

After fixing wrong path to /lib/clang/3.2/include i've got some more verbose error:

1. <eof> parser at end of file
2. Code generation
3. Running pass 'Function Pass Manager' on module '/cygdrive/f/crossbridge/swig-2.0.4/Source/Mo
dules/as3.cxx'.
4. Releasing pass 'Dominator Tree Construction'

LOG:
https://dl.dropboxusercontent.com/u/1375050/as3-jg1dsp.log

FILES:
https://dl.dropboxusercontent.com/u/1375050/as3-jg1dsp.cpp
https://dl.dropboxusercontent.com/u/1375050/as3-jg1dsp.sh