forked from qt-creator/qt-creator
Debugger: Show FORTRAN strings
Fixes: QTCREATORBUG-22976 Change-Id: Ib435b2692301fe2e2d3378623e99bbcf16e27e46 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -2837,8 +2837,8 @@ class DumperBase:
|
|||||||
return
|
return
|
||||||
|
|
||||||
if typeobj.code == TypeCodeFortranString:
|
if typeobj.code == TypeCodeFortranString:
|
||||||
data = self.value.data()
|
self.putValue(self.hexencode(value.data()), 'latin1')
|
||||||
self.putValue(data, 'latin1', 1)
|
self.putNumChild(0)
|
||||||
self.putType(typeobj)
|
self.putType(typeobj)
|
||||||
|
|
||||||
if typeName.endswith('[]'):
|
if typeName.endswith('[]'):
|
||||||
|
@@ -7262,6 +7262,41 @@ void tst_Dumpers::dumper_data()
|
|||||||
+ Check("f1", "1", "@QSqlField (qlonglong)")
|
+ Check("f1", "1", "@QSqlField (qlonglong)")
|
||||||
+ Check("f2", "\"qt-logo.png\"", "@QSqlField (QString)")
|
+ Check("f2", "\"qt-logo.png\"", "@QSqlField (QString)")
|
||||||
+ Check("f3", "(invalid)", "@QSqlField (invalid)");
|
+ Check("f3", "(invalid)", "@QSqlField (invalid)");
|
||||||
|
|
||||||
|
|
||||||
|
Data f90data;
|
||||||
|
f90data.configTest = "which f95";
|
||||||
|
f90data.allProfile =
|
||||||
|
"CONFIG -= qt\n"
|
||||||
|
"SOURCES += main.f90\n"
|
||||||
|
"# Prevents linking\n"
|
||||||
|
"TARGET=\n"
|
||||||
|
"# Overwrites qmake-generated 'all' target.\n"
|
||||||
|
"all.commands = f95 -g -o doit main.f90\n"
|
||||||
|
"all.depends = main.f90\n"
|
||||||
|
"all.CONFIG = phony\n\n"
|
||||||
|
"QMAKE_EXTRA_TARGETS += all\n";
|
||||||
|
|
||||||
|
f90data.allCode =
|
||||||
|
"program test_fortran\n\n"
|
||||||
|
" implicit none\n\n"
|
||||||
|
" character(8) :: c8\n"
|
||||||
|
" integer(8) :: i8\n\n"
|
||||||
|
" i8 = 1337\n"
|
||||||
|
" c8 = 'c_____a_'\n"
|
||||||
|
" ! write (*,*) c8\n"
|
||||||
|
" i8 = i8 / 0\n"
|
||||||
|
"end program\n";
|
||||||
|
|
||||||
|
f90data.mainFile = "main.f90";
|
||||||
|
|
||||||
|
QTest::newRow("F90")
|
||||||
|
<< f90data
|
||||||
|
+ GdbEngine
|
||||||
|
+ Check("c8", "\"c_____a_\"", "character *8")
|
||||||
|
+ Check("i8", "1337", "integer(kind=8)");
|
||||||
|
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
#ifdef Q_OS_LINUX
|
#ifdef Q_OS_LINUX
|
||||||
// Hint: To open a failing test in Creator, do:
|
// Hint: To open a failing test in Creator, do:
|
||||||
|
Reference in New Issue
Block a user