[cfe-users] Part/complete compilation with clang++

David Blaikie dblaikie at gmail.com
Sat Jul 20 10:25:28 PDT 2013

On Sat, Jul 20, 2013 at 10:01 AM, Sian Mountbatten
<poenikatu at fastmail.co.uk> wrote:
> On 2013-07-20 17:44, David Blaikie wrote:
> Nothing obviously wrong with that - yes, jumping in with a debugger
> might be an option, but the code looks simple enough that I'd wonder
> if it's an issue with linking or the standard library.
> On Sat, Jul 20, 2013 at 6:46 AM, Sian Mountbatten
> <poenikatu at fastmail.co.uk> wrote:
> Dear List
> If I compile the file main.cpp to regex using this command:
>    clang++ -g -std=c++11 -stdlib=libc++ -o regex main.cpp
> I get no warnings, no errors, in fact no console output from clang++.
> When the program is run, it produces "\w+\d*" on the console.
> Now, if I compile with this command:
>   clang++ -g -std=c++11 -o main.o -c main.cpp
> and then link with this command:
>   clang++ -g -stdlib=libc++ -o regex main.o
> again, I get no output from clang++. Unfortunately, when the output
> program is run, it fails with "Segmentation violation".
> Again, I'm assuming you've invoked UB & the two different standard
> libraries are just failing in different ways. Once we see the code,
> that might change.
> What does "UB" mean?

Undefined Behavior ( a good read on the subject if Chris Lattner's 3
part series: http://blog.llvm.org/2011/05/what-every-c-programmer-should-know.html
) - though from your example there's nothing obviously wrong that I
can see.

> --
> Sian Mountbatten
> Learning C++!!!
> I'm an FSF member
> Help us support software freedom! http://www.fsf.org/jf?referrer=10888

More information about the cfe-users mailing list