Mercurial > hg > graal-compiler
comparison src/share/vm/utilities/xmlstream.cpp @ 17937:78bbf4d43a14
8037816: Fix for 8036122 breaks build with Xcode5/clang
8043029: Change 8037816 breaks HS build with older GCC versions which don't support diagnostic pragmas
8043164: Format warning in traceStream.hpp
Summary: Backport of main fix + two corrections, enables clang compilation, turns on format attributes, corrects/mutes warnings
Reviewed-by: kvn, coleenp, iveresov, twisti
author | drchase |
---|---|
date | Thu, 22 May 2014 15:52:41 -0400 |
parents | da91efe96a93 |
children |
comparison
equal
deleted
inserted
replaced
17935:7384f6a12fc1 | 17937:78bbf4d43a14 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
334 print_raw("</"); | 334 print_raw("</"); |
335 print_raw(kind); | 335 print_raw(kind); |
336 print_raw_cr(">"); | 336 print_raw_cr(">"); |
337 } | 337 } |
338 | 338 |
339 PRAGMA_DIAG_PUSH | |
340 PRAGMA_FORMAT_NONLITERAL_IGNORED | |
339 // ------------------------------------------------------------------ | 341 // ------------------------------------------------------------------ |
340 void xmlStream::va_done(const char* format, va_list ap) { | 342 void xmlStream::va_done(const char* format, va_list ap) { |
341 char buffer[200]; | 343 char buffer[200]; |
342 guarantee(strlen(format) + 10 < sizeof(buffer), "bigger format buffer"); | 344 guarantee(strlen(format) + 10 < sizeof(buffer), "bigger format buffer"); |
343 const char* kind = format; | 345 const char* kind = format; |
352 end_elem(); | 354 end_elem(); |
353 // Output the tail-tag of the enclosing element. | 355 // Output the tail-tag of the enclosing element. |
354 buffer[kind_len] = 0; | 356 buffer[kind_len] = 0; |
355 tail(buffer); | 357 tail(buffer); |
356 } | 358 } |
359 PRAGMA_DIAG_POP | |
357 | 360 |
358 // Output a timestamp attribute. | 361 // Output a timestamp attribute. |
359 void xmlStream::stamp() { | 362 void xmlStream::stamp() { |
360 assert_if_no_error(inside_attrs(), "stamp must be an attribute"); | 363 assert_if_no_error(inside_attrs(), "stamp must be an attribute"); |
361 print_raw(" stamp='"); | 364 print_raw(" stamp='"); |