[LLVMbugs] [Bug 5935] New: TargetOptions::Target is documented wrong.

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Mon Jan 4 09:57:28 PST 2010


           Summary: TargetOptions::Target is documented wrong.
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Documentation
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: wlynch at wlynch.cx
                CC: llvmbugs at cs.uiuc.edu

Created an attachment (id=4002)
 --> (http://llvm.org/bugs/attachment.cgi?id=4002)
Code to show the problem.

Currently, the doxygen string for TargetOptions::Target is as follows:

If given, the name of the target triple to compile for. If not given the target
will be selected to match the host.

I'm reading that as:

if (TargetOptions.Target == "")
    TargetOptions.Target = llvm::sys::getHostTriple();

However, it appears that the system instead leaves the triple as the empty
string, which causes later code to throw errors (expecting a target when
instead given the empty string).

Attached is some code that has this occur. There are two versions included, one
using CompilerInstance, and one breaking that down. 

It appears that the best place to fix this would be in the constructor to the
llvm::Triple class. See:

Of course, the other alternative fix is to change the documentation.

Other comments include:
 * Compiling with LLVM and Clang trunks.
 * Compile command: g++ `/Users/wlynch/Downloads/llvm/_/bin/llvm-config
--cxxflags` -fno-rtti -gstabs+ `/Users/wlynch/Downloads/llvm/_/bin/llvm-config
--ldflags --libs`  -lclangAST  -lclangAnalysis  -lclangBasic  -lclangCodeGen 
-lclangDriver  -lclangFrontend  -lclangIndex  -lclangLex  -lclangParse 
-lclangRewrite  -lclangSema  foo.cpp   -o foo
 * For the doxygen comment of TargetOptions, see:

Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the llvm-bugs mailing list