This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 256933 - [newcodemodel] IDE cannot resolve include paths with non ASCII chars
Summary: [newcodemodel] IDE cannot resolve include paths with non ASCII chars
Status: VERIFIED FIXED
Alias: None
Product: cnd
Classification: Unclassified
Component: Code Model (show other bugs)
Version: 8.1
Hardware: All All
: P3 normal (vote)
Assignee: Vladimir Kvashin
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-12-02 15:59 UTC by Alexander Simon
Modified: 2016-02-01 09:33 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter: 221469


Attachments
stacktrace (4.04 KB, text/plain)
2015-12-02 15:59 UTC, Alexander Simon
Details
test project (15.21 KB, application/zip)
2015-12-15 10:35 UTC, Vladimir Kvashin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Simon 2015-12-02 15:59:55 UTC
Build: NetBeans IDE 8.1 (Build 20151202-a167ece411eb)
VM: OpenJDK 64-Bit Server VM, 24.91-b01, OpenJDK Runtime Environment, 1.7.0_91-b02
OS: Linux

User Comments:
alexvsimon: include directory contains non ASCII char




Stacktrace: 
java.lang.AssertionError: [ /home/as204739/????????/Quote_1] char$ptr$CharSequence can wrap only one-byte-per-symbol strings but has [15]='?'
	Forgot to decode string to utf8 bytes and use NativePointer.create_char$ptr(byte[] array)?
   at org.clank.support.char$ptr$CharSequence.<init>(char.java:61)
   at org.clank.support.char$ptr$CharSequence.<init>(char.java:41)
   at org.clank.support.NativePointer.create_char$ptr(NativePointer.java:927)
   at org.llvm.adt.StringRef.<init>(StringRef.java:280)
   at org.clang.tools.services.impl.AdvancedPreprocessorInitializer.createHeaderSearchOptions(AdvancedPreprocessorInitializer.java:102)
   at org.clang.tools.services.impl.PreprocessorInitializer.createPreprocessor(PreprocessorInitializer.java:236)
Comment 1 Alexander Simon 2015-12-02 15:59:57 UTC
Created attachment 157618 [details]
stacktrace
Comment 2 Alexander Simon 2015-12-02 16:01:28 UTC
Also IDE cannot resolve include directive with non ASCII char.
For example:
#include "../../Загрузки/Quote_1/cpu.h"
Comment 3 Vladimir Kvashin 2015-12-14 18:33:29 UTC
This one is still valid.
The assertion is gone due to commit 628752c192b6 in sputnik
 ((c & 0x80) != 0)
is wrong check for char c
Comment 4 Vladimir Kvashin 2015-12-15 10:35:32 UTC
Created attachment 157790 [details]
test project
Comment 5 Vladimir Kvashin 2015-12-15 10:45:08 UTC
This bug combines two quite different ones:

1) wide chars in include search paths
2) wide chars in #include directives.

The (1) scenario is important, we have at least one user complaint in this respect.

The (2) scenario is not important at all, so I would either close it as "wontfix" or downgrade to P4.

So I propose to interpret this bug as "cannot resolve include paths with non ASCII chars" (the important one).

I attached the test project that can be used to reproduce this.
I'm renaming the bug accordingly.

Wide chars in #include directives is a matter of a separate bug.
Comment 6 Vladimir Kvashin 2015-12-15 10:54:54 UTC
Fix in sputnik:
 933dd965f35a
Not closing since binaries in NB aren't yet updated.
Comment 7 Vladimir Kvashin 2015-12-15 11:42:28 UTC
binaries updated, change set on enum
  30513ed66002
Comment 8 Quality Engineering 2015-12-16 02:31:43 UTC
Integrated into 'main-silver', will be available in build *201512160002* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)

Changeset: http://hg.netbeans.org/main-silver/rev/978f051522a1
User: Vladimir Kvashin <vkvashin@netbeans.org>
Log: fixed (updated binaries) #256933 - [newcodemodel] IDE cannot resolve include paths with non ASCII chars
(transplanted from 30513ed66002f76e2c597a22ba6b9c8b4a3216bf)
Comment 9 soldatov 2016-02-01 09:33:36 UTC
First scenario in Comment 5 has been fixed

Verified in NetBeans IDE 8.1 (Build 201601300101)