Skip to content
Snippets Groups Projects
  1. Dec 03, 2009
  2. Nov 15, 2009
  3. Aug 20, 2009
  4. Aug 10, 2009
    • Chris Lattner's avatar
      fix a couple of problems with section attributes: · 797c3c4f
      Chris Lattner authored
      1. Passing something that isn't a string used to cause:
         "argument to annotate attribute was not a string literal"
        make it say "section attribute" instead.
      
      2. Fix the location of the above message to point to the
         bad argument instead of the section token.
      
      3. Implement rdar://4341926, by diagnosing invalid section
         specifiers in the frontend rather than letting them slip all
         the way to the assembler (a QoI win).
      
      An example of #3 is that we used to produce something like this:
      
      /var/folders/n7/n7Yno9ihEm894640nJdSQU+++TI/-Tmp-//ccFPFGtT.s:2:Expected comma after segment-name
      /var/folders/n7/n7Yno9ihEm894640nJdSQU+++TI/-Tmp-//ccFPFGtT.s:2:Rest of line ignored. 1st junk character valued 46 (.).
      
      Daniel improved clang to use llvm_report_error, so now we got:
      
      $ clang t.c -c
      fatal error: error in backend: Global variable 'x' has an invalid section specifier 'sadf': mach-o section specifier
            requires a segment and section separated by a comma.
      
      with no loc info.  Now we get:
      
      $ clang t.c -fsyntax-only
      t.c:4:30: error: argument to 'section' attribute is not valid for this target: mach-o section specifier requires a segment
            and section separated by a comma
      int x __attribute__((section("sadf")));
                                   ^
      
      which is nice :)
      
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78586 91177308-0d34-0410-b5e6-96231b3b80d8
      797c3c4f
  5. Jul 16, 2009
Loading